第一個語言編譯程序
❶ 第一個 C 語言編譯器是用什麼語言編寫的
C++比較著名,並且開源的C編譯器有GCC、clang等,目前GCC和clang都是用C++實現的
❷ 第一個 C 語言編譯器是怎樣編寫的
第一個C語言編譯器
是先制定了簡單的C語法後,用B語言寫的
這個是C語言的前身。
當時B語言已經比較成熟 只不過 沒有C強大
於是 發明了C語言
之所以叫C,其實也是因為在B基礎上加一。
後續的C編譯器 就都是用C寫的了。
❸ 最早的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語言編譯器,每一個的發展歷史都有小的不同。但是基本上都是利用了這種編譯器編譯新的編譯器的思想來實現了。而這樣回溯回去,最早的編譯器只能使用匯編來些。而其實最早的匯編語言的編譯器就只能使用機器語言來寫了。不過都是先處理簡單的轉換任務,有了這個核心功能過後,就可以寫程序轉換更復雜的語法。然後越來越復雜。就有了各種各樣的高級語言編譯器了。
❹ c璇璦緙栬瘧紼嬪簭鐨勭涓琛屾庝箞鍐欏晩錛
scanf_s(" %c", &a)錛%c鍓嶆坊鍔犵┖鏍,鐢ㄤ簬婊ら櫎絀虹櫧絎︺
1銆佺▼搴忕殑絎涓琛#include <stdio.h>鏄棰勫勭悊鍣ㄦ寚浠わ紝鍛婅瘔 C 緙栬瘧鍣ㄥ湪瀹為檯緙栬瘧涔嬪墠瑕佸寘鍚 stdio.h 鏂囦歡銆
2銆佷笅涓琛宨nt main()鏄涓誨嚱鏁幫紝紼嬪簭浠庤繖閲屽紑濮嬫墽琛屻
3銆佷笅涓琛宲rintf(...)鏄 C 涓鍙︿竴涓鍙鐢ㄧ殑鍑芥暟錛屼細鍦ㄥ睆騫曚笂鏄劇ず娑堟伅 "Hello, World!"銆
4銆佷笅涓琛宺eturn 0;緇堟 main() 鍑芥暟錛屽苟榪斿洖鍊 0銆
鎵╁睍璧勬枡錛
C璇璦鍒濆﹁呮瘮杈冨枩嬈㈢殑Turbo C2.0鎻愪緵浜400澶氫釜榪愯屾椂鍑芥暟錛屾瘡涓鍑芥暟閮藉畬鎴愮壒瀹氱殑鍔熻兘錛岀敤鎴峰彲闅忔剰璋冪敤銆傝繖浜涘嚱鏁版諱綋鍒嗘垚杈撳叆杈撳嚭鍑芥暟銆佹暟瀛﹀嚱鏁般佸瓧絎︿覆鍜屽唴瀛樺嚱鏁般佷笌BIOS鍜孌OS鏈夊叧鐨勫嚱鏁般 瀛楃﹀睆騫曞拰鍥懼艦鍔熻兘鍑芥暟銆佽繃紼嬫帶鍒跺嚱鏁般佺洰褰曞嚱鏁扮瓑銆
浣滀負紼嬪簭鍛樺簲灝介噺鐔熸倝鐩鏍囧鉤鍙板簱鍑芥暟鍏跺姛鑳姐傝繖鏍鋒墠鑳芥父鍒冩湁浣欏湴寮鍙戠壒瀹氬鉤鍙扮殑搴旂敤紼嬪簭銆傛瘮濡備綔涓篧indows搴旂敤紼嬪簭鐨勫紑鍙戣咃紝搴斿敖閲忕啛鎮塛indows SDK錛涗綔涓篖inux搴旂敤紼嬪簭寮鍙戣咃紝搴斿敖閲忕啛鎮塋inux緋葷粺璋冪敤鍜孭OSIX鍑芥暟瑙勮寖銆
鍙傝冭祫鏂欐潵婧愶細鐧懼害鐧劇-c璇璦
❺ 第一個 C 語言編譯器是用什麼語言編寫的
第一個C語言編譯器(簡單的編譯器)是用匯編完成的,後來的完整C語言編譯器是用C語言編寫的(也就是由簡單的編譯器編譯)。
❻ 請問編寫軟體的第一個語言程序是如何誕生的
早期的計算機軟體都是用匯編語言直接編寫的,這種狀況持續了數年。當人們發現為不同類型的CPU編寫可重用軟體的開銷要明顯高於編寫編譯器時,人們發明了高級編程語言。由於早期的計算機的內存很少,當大家實現編譯器時,遇到了許多前源技術難題。
大約在20世紀50年代末期,與機器無關的編程語言被首次提出。隨後,人們開發了幾種實驗性質的編譯器。第一個編譯器是由Grace Hopper於1952年為A-0語言編寫的。通常認為,1957年由IBM的約翰·巴科斯領導的FORTRAN團隊介紹了第一個完整的編譯器。1960年,COBOL成為一種較早的能在多種架構下被編譯的語言。
高級語言在許多領域流行起來。由於新的編程語言支持的功能越來越多,計算機的架構越來越復雜,這使得編譯器也越來越復雜。
早期的編譯器是用匯編語言編寫的。首個能編譯自己源程序的編譯器啟悔簡是在1962年由麻省理工學院的Hart和Levin製作的。從20世紀70年代起,實現能編譯自己源程序的編譯器變得越來越可行,不過還是用Pascal和C語言來實現編譯器更加流行。製作某種語言的第一個能編譯器,要麼需要用其它語言來編寫,要麼就像Hart和Levin製作Lisp編譯器那樣,悄褲用解釋器來運行編譯器。
引自 : 維基網路
❼ 第一個C語言編譯器是怎樣編寫的
任何一個功能
任何一個語言 都能實現
所以 關鍵的不在於語言 而在於 演算法
C語言被人設計出來
設計了它的語法和規則
然後 根據這個規則,用B語言(Ken Thompson發明的B語言,而 B語言則源自BCPL語言。) 加匯編 編寫了第一個C的編譯器
沒用多久
因為C語言更好用
於是 後續的C語言編譯器 都是C語言自己寫的了。
❽ 第一個 C 語言編譯器是怎樣編寫的
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)寫的。
❾ 世界上第一個語言編譯程序是用什麼語言編寫的
數字電子計算機,在1946年誕生,那時還沒有編譯程序,一台計算機就是一個程序,修改程序,就是直接修該內存的指令(電路).後來,出現了匯編程序(當然用機器語言寫的),匯編語言就出現了,在後來就有了高級語言.至於第一個編譯程序,嚴格來說匯編程序也是編譯程序,所以是用機器語言寫的.
❿ 最早的編程軟體是怎麼來的
最早的沒有現在意義上的編譯器,是靠打孔器打紙帶編程。大型機靠讀紙帶執行程序。
由於機器語言由0、1組成,難以閱讀。所以在機器語言的基礎上開發了匯編語言。最早的匯編語言編譯器應該是機器語言編寫的。一旦第一個匯編語言編譯器開發出來以後,以後的版本都可以用匯編語言來編寫了。
由於匯編語言還是很難使用,所以開發出高級語言。也可以預見,第一個高級語言編譯器是由匯編語言編寫的。有了第一個高級語言編譯器,以後的高級語言編譯器便可以用這個高級語言編譯器生成。
也就是說,現在我們使用的C++語言編譯器,可以用C++語言來編寫。