導航:首頁 > 源碼編譯 > c的編譯器的作者

c的編譯器的作者

發布時間:2023-09-30 00:42:36

① C語言是什麼時候發明的

查看文章 C語言家族的發展史2007-05-18 10:15 1972年--,作為C語言的先驅B語言在貝爾實驗室誕生。B語言速度快,易維護,適用於從系統層到應用層各種各樣的開發。設計此語言的開發組很快贏得立即被解僱的待遇,因為其開發行為不適合一個電話公司雇員應有的行為。整個項目被移交到了一個叫Dennis傢伙的手裡,他將此語言改變得不易理解,難於維護,只適用於系統開發。他在指針系統里進行設計,以保證對每個超過五百行的程序提供一個指針給操作系統。這就是C語言。1982年--97%的C程序調用都限於緩沖處理過度的開發。C程序員開始認識到,不管何時都可將變數初始化並放到內存中實在是個糟糕的方法。但是強迫合理地初始化變數將會破壞現有97%的C程序,於是大家便一直將就忍耐,無動於衷。1984年--操作系統中指針亂指的數量能夠開始顯著的增長了。1985年——一種帶有面向對象特性的C變種語言,稱之為「帶類的C」,准備走進市場。但是,「帶類的C」這個名字太清晰易懂,對於外人來說都不敢理解,於是商業化後的版本就將其改了個名,叫C++1986年——C語言太流行了,於是產業分析師強烈推薦在商業開發中應用它。他們說,用C寫的應用程序將會多麼輕便靈活地用於各種各樣的系統。據猜測可能是很多分析師是吃了迷魂葯。1988年——產業分析師們的葯性終於消失了。當迷魂葯性一過,他們才注意到商業應用程序用C寫完後,其生產周期變成了原來的5倍長,但還是沒達到輕便靈活的目的。他們開始停止推薦用C寫應用程序。但一部分人仍然轉而吸食「可卡因」,推薦用C++寫應用程序,因為「其面向對象特性會導致代碼重用」。1990年——此時,所有的C編譯器都已經變成了C++編譯器了。但是大部分C++程序員不使用C++任何面向對象的特性,這就是說,實際情況是帶有指針的雍腫的代碼結構在操作系統中現在用C++編譯器編譯了。
麻煩採納,謝謝!

② c語言的發展史

C語言誕生於美國的貝爾實驗室,由D.M.Ritchie以B語言為基礎發展而來,在它的主體設計完成後,Thompson和Ritchie用它完全重寫了UNIX,且隨著UNIX的發展,c語言也得到了不斷的完善。為了利於C語言的全面推廣,許多專家學者和硬體廠商聯合組成了C語言標准委員會,並在之後的1989年,誕生了第一個完備的C標准,簡稱「C89」,也就是「ANSI c」,截至2020年,最新的C語言標准為2017年發布的 「C17」。
C語言之所以命名為C,是因為C語言源自Ken Thompson發明的B語言,而B語言則源自BCPL語言。
1967年,劍橋大學的Martin Richards對CPL語言進行了簡化,於是產生了BCPL(Basic Combined Programming Language)語言。
20世紀60年代,美國AT&T公司貝爾實驗室(AT&T Bell Laboratory)的研究員Ken Thompson閑來無事,手癢難耐,想玩一個他自己編的,模擬在太陽系航行的電子游戲——Space Travel。他背著老闆,找到了台空閑的機器——PDP-7。但這台機器沒有操作系統,而游戲必須使用操作系統的一些功能,於是他著手為PDP-7開發操作系統。後來,這個操作系統被命名為——UNIX。
1970年,美國貝爾實驗室的 Ken Thompson,以BCPL語言為基礎,設計出很簡單且很接近硬體的B語言(取BCPL的首字母)。並且他用B語言寫了第一個UNIX操作系統。
1971年,同樣酷愛Space Travel的Dennis M.Ritchie為了能早點兒玩上游戲,加入了Thompson的開發項目,合作開發UNIX。他的主要工作是改造B語言,使其更成熟。
1972年,美國貝爾實驗室的 D.M.Ritchie 在B語言的基礎上最終設計出了一種新的語言,他取了BCPL的第二個字母作為這種語言的名字,這就是C語言。
1973年初,C語言的主體完成。Thompson和Ritchie迫不及待地開始用它完全重寫了UNIX。此時,編程的樂趣使他們已經完全忘記了那個"Space Travel",一門心思地投入到了UNIX和C語言的開發中。隨著UNIX的發展,C語言自身也在不斷地完善。直到2020年,各種版本的UNIX內核和周邊工具仍然使用C語言作為最主要的開發語言,其中還有不少繼承Thompson和Ritchie之手的代碼。
在開發中,他們還考慮把UNIX移植到其他類型的計算機上使用。C語言強大的移植性(Portability)在此顯現。機器語言和匯編語言都不具有移植性,為x86開發的程序,不可能在Alpha、SPARC和ARM等機器上運行。而C語言程序則可以使用在任意架構的處理器上,只要那種架構的處理器具有對應的C語言編譯器和庫,然後將C源代碼編譯、連接成目標二進制文件之後即可運行。
1977年,Dennis M.Ritchie發表了不依賴於具體機器系統的C語言編譯文本《可移植的C語言編譯程序》。
C語言繼續發展,在1982年,很多有識之士和美國國家標准協會為了使這個語言健康地發展下去,決定成立C標准委員會,建立C語言的標准。委員會由硬體廠商、編譯器及其他軟體工具生產商、軟體設計師、顧問、學術界人士、C語言作者和應用程序員組成。1989年,ANSI發布了第一個完整的C語言標准——ANSI X3.159—1989,簡稱「C89」,不過人們也習慣稱其為「ANSI C」。C89在1990年被國際標准組織ISO(International Standard Organization)一字不改地採納,ISO官方給予的名稱為:ISO/IEC 9899,所以ISO/IEC9899: 1990也通常被簡稱為「C90」。1999年,在做了一些必要的修正和完善後,ISO發布了新的C語言標准,命名為ISO/IEC 9899:1999,簡稱「C99」。
在2011年12月8日,ISO又正式發布了新的標准,稱為ISO/IEC9899: 2011,簡稱為「C11」。

③ C語言是在哪年發明的~

C,是一種通用的程序設計語言,它主要用來進行系統程序設計。具有高效、靈活、功能豐富、表達力強和移植性好等的特點,在程序員中備受青睞。

C語言是由UNIX的研製者丹尼斯·里奇(Dennis Ritchie)和肯·湯普遜(Ken Thompson)於1970年研製出的B語言的基礎上發展和完善起來的。C語言可以廣泛應用於不同的操作系統,例如UNIX、MS-DOS、Microsoft Windows及linux等。C語言是一種面向過程的語言,同時具有高級語言和匯編語言的優點。在C語言的基礎上發展起來的有支持多種程序設計風格的C++語言,網路上廣泛使用的java、JavaScript,微軟的C#等。

1983年,美國國家標准委員會(ANSI)對C語言進行了標准化,於1983年頒布了第一個C語言標准草案(83 ANSI C),後來於1987年又頒布了另一個C語言標准草案(87 ANSI C)。最新的C語言標準是在1999年頒布並在2000年3月被ANSI採用的 C99 ,但由於未得到主流編譯器廠家的支持,直到2004年C99 並未被廣泛使用,增加了若干新特性後 C99 已經逐漸讓C語言和C++分道揚鑣。

④ C#和JAVA發明人是誰

java是由java之父James Gosling
James Gosling
Sun副總裁及Sun研究院院士
40年前,一個寒冷的冬天,在加拿大一個村莊里,Gosling家的第一個男孩哇哇落地了。家人給他起了名字,叫James。誰也沒有想到的是,長大之後,他成為了一個改變計算機語言的天才。
James Gosling從小就喜歡技術,愛鼓搗東西。12歲的時候,他用報廢的電話機和電視機中的部件做了一台電子游戲機。附近農民的康拜因(聯合收割機)出了問題也常常找他修理。14歲的時候,中學組織到附近大學參觀,他記住了大學計算中心的門鎖密碼,從此開始偷偷地溜進計算中心,學習計算機編程。一年後,大學的天文系招他當了一名臨時編程員,編寫計算機程序來分析衛星天文數據。
80年代初,James Gosling獲得博士學位後到IBM工作,設計IBM第一代工作站。當時,IBM的領導層並不看重工作站項目。失望之餘,James Gosling跳槽到了Sun公司。他花了五年功夫領導開發的和OS2很類似的Sun NeWs窗口系統,盡管得到技術界的好評,卻未能變成流行的產品。當時他還第一個用C實現的EMACS的所見即所得文本編輯器COSMACS。
在當今這個競爭激烈的軟體開發時代,軟體設計師一直在試圖預測未來軟體或者技術的發展趨勢。在1990年,Sun公司成立了一個軟體設計團隊,其中除了James Gosling,還有Patrick Naughton和Mike Sheridan等人,他們合作的項目稱為「綠色計劃」。他們認為計算機技術發展的一個趨勢是數字家電之間的通訊。James開始負責為設備和用戶之間的交流創建一種能夠實現網路交互的語言。隨著大量的時間和金錢投入到「綠色計劃」,他們創建了一種語言。這種語言一開始被叫做「Oak」,這個名字得自於Gosling想名字時看到了窗外的一棵橡樹。但後來被改為了「Java」。並於1992年9月3日開始應用於Sun工作站的遠程遙控。
1994年底,James Gosling參加了在矽谷召開的「技術、教育和設計大會」。他報著試一試的心情向與會者演示了Java的功能。他點擊了網頁上的一個靜止的分子結構圖標,一條命令通過互聯網送到了幾百英里外的網站,下載了一段Java小程序,在本地工作站上開始執行。在幾秒鍾時間里,原本靜止的網頁上,一個分子圖像以三維動畫的方式轉了起來。
「哇!」James Gosling聽到了全場觀眾的贊嘆聲。
不久後,矽谷最大的報紙《聖荷西信使報》在頭版刊登了一篇專文,「為什麼Sun認為一杯熱咖啡能讓你鼓足精神」。從文章見報開始,負責Java市場人員的電話響個不停。不久,全美的主要報刊雜志都刊登了Java的報道。
Java出名了!
到了2000年,Java已經成為世界上最流行的電腦語言。綠色小組當初設計Java是為了面向數字家庭,支持各種家電設備。他們沒有想到的是,Java支持的計算模式,實際上就是互聯網的模式。
對於Java語言的巨大成功,沒有人比James Gosling 更加謙遜:「我從來沒有想到Java技術將會這么火。當我的老闆問我它將達到多少次下載時,我說 10,000 次。而他認為我太過樂觀了。」
詹姆斯·戈士林現任Sun公司副總裁及Sun研究院院士。
戈士林先生以「Java 技術之父」而聞名於世。他是Java 技術的創始人,他親手設計了Java語言,並開發了Java編譯器和Java虛擬機,使Java成為了世界上最流行的開發語言。Java支持的計算模式,已經成為了互聯網的標准編程模式以及分布式企業級應用的事實標准。目前,戈士林 先生積極致力於研究軟體開發工具,使它們功能更為強大,更容易為開發人員所使用,能夠快速地開發應用。
戈士林 先生曾創建了衛星數據攔截系統、Unix的多處理器版本、編譯器、郵件系統和視窗管理器等。他還創建了著名的WYSIWYG (「所見即所得」)測試編譯器。在Sun,他的早期活動是領導了NeWS (網路擴展視窗系統)項目,並任該項目的首席工程師。

2000年,安德爾思海斯博格,就是發明pascal語言的那個人,borland的創始人之一,神話般的人物,他一個人做了這些 pascal object pascal delphi vj++ c# .net framework
安德斯·海爾斯伯格 Delphi和.NET之父:安德斯·海爾斯(Anders Hejlsberg)
安德斯·海爾斯伯格(Anders Hejlsberg,1960.11~),丹麥人,Turbo Pascal編譯器的主要作者,Delphi和.NET之父
安德斯·海爾斯伯格曾在丹麥技術大學學習工程,當時他在丹麥擁有個叫Poly Data的公司,他編寫了Pascal編譯器核心,最初叫作Compass Pascal,後來叫Poly Pascal。Anders把該編譯器核心授權給了美國Borland公司。安德斯·海爾斯伯格作為雇員加入Borland公司,並且是後來所有Pascal版本與Delphi前3個版本的架構師。Philippe Kahn為Pascal添加了用戶界面與編輯器。
Anders Hejlsberg曾在丹麥科技大學學習工程學。Anders Hejlsberg第一次登上軟體界歷史舞台是在80年代早期,因為他為MS-DOS和CP/M設計了一個Pascal編譯器。當時,還是一個小公司的Borland很快僱用了他,並買下了他的編譯器,改稱Turbo Pascal。在Borland,Hejlsberg繼續開發Turbo Pascal,並最終帶領他的小組設計了Turbo Pascal的替代品、開發工具史上的奇跡:Delphi語言。
1996年,Anders Hejlsberg在Delphi3發布前離開Borland去了MS。
在此之前,MS曾多次企圖挖走Anders,但都沒有成功。據信anders去MS(主要)不是錢的問題,雖然MS的開價也相當有吸引力: 130萬美元年薪外加股票期權和分紅,總計超過300萬美元。更主要的原因是Anders和Delphi開發組的其他成員在修改編譯器的問題上發生了爭執;還有,據Borland內部人講,Anders認為自己不再是「不可缺少的人」。
Anders在Delphi3中幾乎沒有做什麼工作,Chuck Jazdzewski扮演了一個更重要的角色。(--Anders Ohlsson) Anders在Borland時把所有精力都放在了Pascal產品上,也需要新的挑戰,這時Bill Gates的親自邀請,許諾給與挑戰的機會,Anders加入了Microsoft就勢在必行。
Microsoft 用豐厚的薪水、股票認購權和巨額的加盟獎金雇請了 Hejlsberg 之後,Borland 曾提出通過不正當手段吸收新成員的控告。Borland 還曾聲稱 — 提供了很少的細節來支持指控 — Hejlsberg 正在開發「Delphi for Java」。這場訴訟雖然最終以 Borland 的勝利而收場;但Anders 已經在為Microsoft工作了。
1996年Anders來到微軟後,直接主抓Visual J++的研發工作,並在1999年被授予「distinguished engineer」(卓越工程師),在微軟僅有16人獲得這樣的榮譽。
後來微軟希望通過開發最新的軟體開發語言來贏得軟體開發者的擁戴,在微軟公司把視窗操作系統和軟體向網路遷移的新市場戰略中,C#語言是最重要的環節。微軟動用了最好的資源。Anders擔任了C#語言的首席設計師,同時也是微軟.NET戰略構架的重要參與決策者。考慮一下Anders的經歷,就不會奇怪微軟將此重任交給他了。畢竟C#也不是他對軟體開發方式重大變革的首次。現在經過幾年時間的埋頭苦幹,C#已成為微軟反擊Java語言的最有力武器。
鑒於他為軟體開發做出的巨大貢獻,Anders在《Dr.Dobb's》雜志的2001年西部會議上被授予「Prestigious Excellence in Programming Award」,《Dr.Dobb's》雜志的主編Jonathan Erickson說:「這一榮譽,我們每年只頒給那些在軟體開發領域做出非凡貢獻的人員,Anders開發的C#和他整個職業生涯中為軟體開發所做出的巨大貢獻有目共睹,他無愧於這一榮譽!」
比爾蓋茨也高度評價說:「我們為Anders獲得這一榮譽感到無比自豪,Anders在C#創建中所做的努力將會改變現在的軟體開發方式,並將在以後的十年繼續產生影響。」
「程序員是最好的職業」,Anders說:「每兩年,CPU的速度要加倍,內存容量是原來的四倍,但是我們的大腦還是原來的大小,很顯然,將需要更多的程序原來補充這些。」

註:海爾斯伯格曾在微軟博物館視頻上表明他是1960年生的,但很多其它資料顯示,他是1961年生的。2006年,在巴塞羅那微軟技術教育大會(TechED)上,安德斯再次確認他生於1960年。

⑤ c語言什麼時候誕生

1969-1973年在美國電話電報公司(AT&T)貝爾實驗室開始了C語言的最初研發。根據C語言的發明者丹尼斯·里奇 (Dennis Ritchie) 說,C 語言最重要的研發時期是在1972年。
C語言之所以命名為C,是因為C語言源自Ken Thompson發明的 B語言,而B語言則源自BCPL語言。
C語言的誕生是和UNIX操作系統的開發密不可分的,原先的UNIX操作系統都是用匯編語言寫的,1973年UNIX操作系統的核心用C語言改寫,從此以後,C語言成為編寫操作系統的主要語言。

⑥ 第一個 C 語言編譯器是用什麼語言編寫的

參考 Dennis M. Ritchie 寫的 The Development of the C Language:Chistory,C 語言誕生的基本過程就是 Ken Thomson 不滿意 BCPL,於是設計了 B 語言,並且用 BCPL 為 B 語言寫了一個編譯器,然後從這個編譯器開始自舉寫新的 B 語言編譯器。貝爾實驗室的眾人在 PDP-7 上用 B 語言寫了各種各樣的東西後又不滿意 B 語言了,於是 1971 年 DMR 開始在新買的 PDP-11 上用 B 給 B 寫擴展,稱之為 NB (new B,此處省略吐槽若干),擴展著擴展著離 B 的畫風越來越遠了,就取了一個新名字變成了一門新語言—— C 語言。 1973 年夏天他們用手頭的編譯器和語言給 PDP-11 重寫了一個 Unix Kernel。C 語言大約就是這個時期成型的。

所以,可以說第一個 C 語言的編譯器是用 B 語言,或者說是擴展過的 B 語言(NB)寫的。因為是一邊改進語言一邊用改進了的編譯器這樣滾雪球寫出來的,也可以看成是 C 語言寫的?畢竟 很難確定什麼時候 C 自己變成了一門新語言……

⑦ GCC是什麼單位

GCC是一個用於linux系統下編程的編譯器。GCC又是海灣阿拉伯國家合作委員會的英文縮寫。
概述:
GCC(GNU Compiler Collection,GNU編譯器套裝),是一套由 GNU 開發的編程語言編譯器。它是一套 GNU編譯器套裝
以 GPL 及 LGPL 許可證所發行的自由軟體,也是 GNU計劃的關鍵部分,亦是自由的類Unix及蘋果電腦 Mac OS X 操作系統的標准編譯器。 GCC 原名為 GNU C 語言編譯器,因為它原本只能處理 C語言。GCC 很快地擴展,變得可處理 C++。之後也變得可處理 Fortran、Pascal、Objective-C、Java, 以及 Ada與其他語言。
歷史:
GCC是由理查德·馬修·斯托曼在1985年開始的。他首先擴增一個舊有的編譯器,使它能編譯C,這個編譯器一開始是以Pastel語言所寫的。Pastel是一個不可移植的Pascal語言特殊版,這個編譯器也只能編譯Pastel語言。為了讓自由軟體有一個編譯器,後來此編譯器由斯托曼和Len Tower在1987年以C語言重寫並成為GNU專案的編譯器。GCC的建立者由自由軟體基金會直接管理。 在1997年,一群不滿GCC緩慢且封閉的創作環境者,組織了一個名為EGCS〈Experimental/Enhanced GNU Compiler System〉的專案,此專案匯整了數項實驗性的分支進入某個GCC專案的分支中。EGCS比起GCC的建構環境更有活力,且EGCS最終也在1999年四月成為GCC的官方版本。 GCC目前由世界各地不同的數個程序設計師小組維護。它是移植到中央處理器架構以及操作系統最多的編譯器。 由於GCC已成為GNU系統的官方編譯器(包括GNU/Linux家族),它也成為編譯與建立其他操作系統的主要編譯器,包括BSD家族、Mac OS X、NeXTSTEP與BeOS。 GCC通常是跨平台軟體的編譯器首選。有別於一般局限於特定系統與執行環境的編譯器,GCC在所有平台上都使用同一個前端處理程序,產生一樣的中介碼,因此此中介碼在各個其他平台上使用GCC編譯,有很大的機會可得到正確無誤的輸出程序。
結構:
GCC的外部介面長得像一個標準的Unix編譯器。使用者在命令列下鍵入gcc之程序名,以及一些命令參數,以便決定每個輸入檔案使用的個別語言編譯器,並為輸出程序碼使用適合此硬體平台的組合語言編譯器,並且選擇性地執行連結器以製造可執行的程序。 每個語言編譯器都是獨立程序,此程序可處理輸入的原始碼,並輸出組合語言碼。全部的語言編譯器都擁有共通的中介架構:一個前端解析符合此語言的原始碼,並產生一抽象語法樹,以及一翻譯此語法樹成為GCC的暫存器轉換語言〈RTL〉的後端。編譯器最佳化與靜態程序碼解析技術(例如FORTIFY_SOURCE,一個試圖發現緩沖區溢位〈buffer overflow〉的編譯器)在此階段應用於程序碼上。最後,適用於此硬體架構的組合語言程序碼以Jack Davidson與Chris Fraser發明的演算法產出。 幾乎全部的GCC都由C寫成,除了Ada前端大部分以Ada寫成。 前端介面 前端的功能在於產生一個可讓後端處理之語法樹。此語法解析器是手寫之遞回語法解析器。 直到最近,程序的語法樹結構尚無法與欲產出的處理器架構脫鉤。而語法樹的規則有時在不同的語言前端也不一樣,有些前端會提供它們特別的語法樹規則。 在2005年,兩種與語言脫鉤的新型態語法樹納入GCC中。它們稱為GENERIC與GIMPLE。語法解析變成產生與語言相關的暫時語法樹,再將它們轉成GENERIC。之後再使用"gimplifier"技術降低GENERIC的復雜結構,成為一較簡單的靜態唯一形式(Static Single Assignment form,SSA)基礎的GIMPLE形式。此形式是一個與語言和處理器架構脫鉤的全域最佳化通用語言,適用於大多數的現代編程語言。 中介介面 一般編譯器作者會將語法樹的最佳化放在前端,但其實此步驟並不看語言的種類而有不同,且不需要用到語法解析器。因此GCC作者們將此步驟歸入通稱為中介階段的部分里。此類的最佳化包括消解死碼、消解重復運算與全域數值重編碼等。許多最佳化技巧也正在實作中。 後端介面 GCC後端的行為因不同的前處理器宏和特定架構的功能而不同,例如不同的字元尺寸、呼叫方式與大小尾序等。後端介面的前半部利用這些訊息決定其RTL的生成形式,因此雖然GCC的RTL理論上不受處理器影響,但在此階段其抽象指令已被轉換成目標架構的格式。 GCC的最佳化技巧依其釋出版本而有很大不同,但都包含了標準的最佳化演算法,例如循環最佳化、執行緒跳躍、共通程序子句消減、指令排程等等。而RTL的最佳化由於可用的情形較少,且缺乏較高階的資訊,因此比較起近來增加的GIMPLE語法樹形式[2],便顯得比較不重要。 後端經由一重讀取步驟後,利用描述目標處理器的指令集時所取得的資訊,將抽象暫存器替換成處理器的真實暫存器。此階段非常復雜,因為它必須關照所有GCC可移植平台的處理器指令集的規格與技術細節。 後端的最後步驟相當公式化,僅僅將前一階段得到的組合語言碼藉由簡單的副函式轉換其暫存器與內存位置成相對應的機械碼。

⑧ 最早的C語言編譯器是什麼做的

匯編。這真的是最早最早的。

准確的來說,這和編譯器的開發有關,不用說太細,很麻煩怕你不懂。你現在假設第一個編譯器是用會變寫出來的,它的功能很簡單,就是解釋簡單一種類似於C語言的高級語言,但是這種所謂的高級語言還沒有完全擁有C語言的所有特性。只有比較簡單核心功能,比如能把文本文件的高級語言轉換成機器代碼並且執行。

有了這個原型之後,就可以用這個編譯器來解釋簡單C程序,就可以用C重寫編寫一個新的編譯器,這樣就有更多的C的功能。於是,從此之後就用現有的編譯器解釋更復雜的語言,用更復雜的語言寫出更好的編譯器,然後不斷這樣迭代。這確實是編譯器的演變。

然後最後一個問題就是當一個新的CPU發明過後,怎麼辦,需要重寫又從匯編開始寫編譯器嗎?答案是不用。假設你有一個CPU A執行一些代碼,你用匯編寫了一個基礎的C編譯器,然後用C寫出了更復雜的編譯器,接受更復雜的C功能,然後不斷循環演化。現在你有了CPU B,CPU B和CPU A執行兩套完全不同的代碼,那如何讓CPU B的機器也可以變異C語言呢?因為現在A上面已經可以運行非常復雜的C語言程序了,所以你可以在A上面開發一個編譯器把C語言程序轉化為CPU B的執行代碼。然後用這個程序,直接編譯你的C語言編譯器,再把這個程序轉換到有B命令集的電腦上面,這樣你就開發出了B電腦需要的C語言編譯器。

所以除非你真的是活在非常早起的人類。否在現在的編譯器基本上都利用這種原理直接編譯已經用C語言或者其它高級語言寫好的代碼來產生新的編譯器就行了。理論上可以只使用C語言來開發C的編譯器,不過處於一些歷史原因和底層效率等因素的考量,部分代碼還是使用匯編來實現的。

我舉得不過是一個例子,不一定是真實的C語言編譯的進化,何況有這么多不同的C語言編譯器,每一個的發展歷史都有小的不同。但是基本上都是利用了這種編譯器編譯新的編譯器的思想來實現了。而這樣回溯回去,最早的編譯器只能使用匯編來些。而其實最早的匯編語言的編譯器就只能使用機器語言來寫了。不過都是先處理簡單的轉換任務,有了這個核心功能過後,就可以寫程序轉換更復雜的語法。然後越來越復雜。就有了各種各樣的高級語言編譯器了。

⑨ 最難的開發語言

第十名、R語言
R語言,一種自由軟體編程語言與操作環境,主要用於統計分析、繪圖、數據挖掘。R基於S語言的一個GNU計劃項目,所以也可以當作S語言的一種實現,通常用S語言編寫的代碼都可以不作修改的在R環境下運行。R的語法是來自Scheme。
提名詞
R語言作者,George Ross Ihaka:在奧克蘭大學統計系任副教授,是R語言的最初作者。
2
/10
第九名、Python
頒獎詞
Python是一種廣泛使用的高級編程語言,屬於通用型編程語言。作為一種解釋型語言,Python的設計哲學強調代碼的可讀性和簡潔的語法。相比於C++或Java,Python讓開發者能夠用更少的代碼表達想法。不管是小型還是大型程序,該語言都試圖讓程序的結構清晰明了。
提名詞
Python語言作者,Guido van Rossum:生於荷蘭哈勒姆,計算機程序員,為Python程序設計語言的最初設計者及主要架構師。
3
/10
第八名、C語言
頒獎詞
C是一種通用的編程語言,廣泛用於系統軟體與應用軟體的開發。C語言具有高效、靈活、功能豐富、表達力強和較高的可移植性等特點。C語言編譯器普遍存在於各種不同的操作系統中,例如Microsoft Windows、macOS、Linux、Unix等。C語言的設計影響了眾多後來的編程語言,例如C++、Objective-C、Java、C#等。
提名詞
C語言作者,Dennis MacAlistair Ritchie:美國計算機科學家。黑客圈子通常稱他為「dmr」。他是C語言的創造者、Unix操作系統的關鍵開發者,對計算機領域產生了深遠影響,並與肯·湯普遜同為1983年圖靈獎得主。
4
/10
第七名、Go
頒獎詞
Go(又稱Golang)是Google開發的一種靜態強類型、編譯型、並發型,並具有垃圾回收功能的編程語言。Go的語法接近C語言,但對於變數的聲明有所不同。Go支持垃圾回收功能。
提名詞
Go語言作者,Robert C. Pike:來自加拿大的程序員,曾經加入貝爾實驗室,為 UNIX小組的成員。他與肯·湯普遜共同開發了UTF-8。目前為 google的工程師,參與編程語言 Go與Sawzall的研發工作。
5
/10
第六名、JavaScript
頒獎詞
JavaScript,通常縮寫為JS,是一種高級的,解釋執行的編程語言。JavaScript是一門基於原型、函數先行的語言,是一門多範式的語言,它支持面向對象編程,命令式編程,以及函數式編程。它已經由ECMA(歐洲計算機製造商協會)通過ECMAScript實現語言的標准化。它被世界上的絕大多數網站所使用,也被世界主流瀏覽器(Chrome、IE、Firefox、Safari、Opera)支持。
提名詞
JavaScript語言作者,Brendan Eich:美國程序員與企業家,JavaScript主要創造者與架構師,曾任Mozilla公司的首席技術官,並曾短暫擔任首席執行官。
6
/10
第五名、Objective-C
頒獎詞
Objective-C是一種通用、高級、面向對象的編程語言。它擴展了標準的ANSI C編程語言,將Smalltalk式的消息傳遞機制加入到ANSI C中。目前主要支持的編譯器有GCC和Clang(採用LLVM作為後端)。
提名詞
Objective-C作者,Brad Cox:美國計算機科學家。於傅爾曼大學主修化學與數學,於芝加哥大學取得數學生物學博士學位。Objective-C主要作者。
7
/10
第四名、PHP
頒獎詞
PHP(全稱:PHP:Hypertext Preprocessor,即「PHP:超文本預處理器」)是開源的通用計算機腳本語言,尤其適用於網路開發並可嵌入HTML中使用。PHP的語法借鑒吸收C語言、Java和Perl等流行計算機語言的特點,易於一般程序員學習。PHP的主要目標是允許網路開發人員快速編寫動態頁面,但PHP也被用於其他很多領域。
提名詞
PHP語言作者,Rasmus Lerdorf:出生於格陵蘭島凱凱塔蘇瓦克,是一個丹麥程序員,他擁有加拿大國籍。他也是編程語言PHP的創始人,其中PHP的頭兩個版本是由他編寫的,後來他也參與PHP後續版本的開發。
8
/10
第三名、Java
頒獎詞
Java是一種廣泛使用的計算機編程語言,擁有跨平台、面向對象、泛型編程的特性,廣泛應用於企業級Web應用開發和移動應用開發。Java編程語言是個簡單、面向對象、分布式、解釋性、健壯、安全與系統無關、可移植、高性能、多線程和動態的語言。
提名詞
Java語言作者,James Gosling:出生於加拿大,軟體專家,Java編程語言的共同創始人之一,一般公認他為「Java之父」。
9
/10
第二名、C++
頒獎詞
C++是一種使用廣泛的計算機程序設計語言。它是一種通用程序設計語言,支持多重編程模式,例如過程化程序設計、數據抽象、面向對象程序設計、泛型程序設計和設計模式等。
提名詞
C++語言作者,Bjarne Stroustrup:生於丹麥奧胡斯郡,計算機科學家。他以創造C++編程語言而聞名,被稱為「C++之父」。
10
/10
第一名、Visual Basic .NET
頒獎詞
Visual Basic .NET(VB.NET)是.NET Framework框架下的一種多重編程範式高級語言。Visual Basic .NET屬Basic系語言,其語法特點是以極具親和力的英文單詞為基礎標識,以及與自然語言極其相近的邏輯表達,有時候你會覺得寫VB.NET代碼就好像在寫英文句子一樣,從這個角度來說,VB.NET似乎是最高級的一門編程語言,當然在Basic系語言中VB.NET也確實是迄今為止最強大的一門編程語言。
提名詞
Visual Basic .NET作者,Alan Cooper:交互設計的提倡者。庫珀有些時候被叫做 Visual Basic 之父,雖然大多數的工作是由微軟的內部開發團隊完成的,但是對於Windows可視化設計工具的創意是來源於庫珀的。

閱讀全文

與c的編譯器的作者相關的資料

熱點內容
安卓快手下載怎麼沒有下載到本地 瀏覽:228
怎麼在安卓手機登繪旅人 瀏覽:404
桌面文件全部加密 瀏覽:401
6s怎麼外接u盤需要什麼app 瀏覽:131
linux查看文件許可權命令 瀏覽:685
安卓手游存檔怎麼用 瀏覽:761
linuxyum安裝ftp 瀏覽:690
村委會主任可以推行政命令嗎 瀏覽:102
電腦文件夾封面多張圖片 瀏覽:263
網吧總伺服器叫什麼 瀏覽:922
多個演算法解決同一個問題 瀏覽:455
小車解壓後我的購車發票呢 瀏覽:977
做app開發用什麼雲伺服器 瀏覽:177
linux網卡子介面 瀏覽:985
21歲職高畢業學程序員怎麼學 瀏覽:321
vs如何對單個文件編譯 瀏覽:6
為什麼有的電腦不能安裝python 瀏覽:75
金蝶迷你版加密狗檢測到過期 瀏覽:186
硬體描述語言編譯結果 瀏覽:655
程序員逆天改命 瀏覽:19