當前位置:首頁 » 編程軟體 » 美國語言編譯器

美國語言編譯器

發布時間: 2024-08-06 20:03:31

① 匯編器和編譯器有什麼區別

匯編器(Assembler)是將匯編語言翻譯為機器語言的程序。一般而言,匯編生成的是目標代碼,需要經鏈接器(Linker)生成可執行代碼才可以執行。
匯編語言是一種以處理器指令系統為基礎的低級語言,採用助記符表達指令操作碼,採用標識符表示指令操作數。作為一門語言,對應於高級語言的編譯器,需要一個「匯編器」來把匯編語言原文件匯編成機器可執行的代碼。常用的高級語言編譯器有Microsoft公司的MASM系列和Borland公司的TASM系列編譯器,還有一些小公司推出的或者免費的匯編軟體包等。

編譯器就是將「一種語言(通常為高級語言)」翻譯為「另一種語言(通常為低級語言)」的程序。一個現代編譯器的主要工作流程:源代碼 (source code) → 預處理器 (preprocessor) → 編譯器 (compiler) → 目標代碼 (object code) → 鏈接器(Linker) → 可執行程序 (executables)
高級計算機語言便於人編寫,閱讀交流,維護。機器語言是計算機能直接解讀、運行的。編譯器將匯編或高級計算機語言源程序(Source program)作為輸入,翻譯成目標語言(Target language)機器代碼的等價程序。源代碼一般為高級語言 (High-level language), 如Pascal、C、C++、Java、漢語編程等或匯編語言,而目標則是機器語言的目標代碼(Object code),有時也稱作機器代碼(Machine code)。
對於C#、VB等高級語言而言,此時編譯器完成的功能是把源碼(SourceCode)編譯成通用中間語言(MSIL/CIL)的位元組碼(ByteCode)。最後運行的時候通過通用語言運行庫的轉換,編程最終可以被CPU直接計算的機器碼(NativeCode)

② 編譯器一般由哪種語言開發

其實我在想為什麼匯編語言生成一個簡單的編譯器後,可以用新生成的編譯器再次生成編譯器,例如,C語言開發C的編譯器呢?
這是一個遞歸的思想,舉個例子一看就明白了
用一個大的模具可以生成一個A模具,A模具可以做出來B模具,依次往下推,最終這個小模具可以做出來小盒子用來裝東西。
第一個大模具肯定是手工做出來的第一個模具,但是有了這個大模具後,後面就可以用他自動的生成更多的模具,後面的各種模具加起來又可以造出來更精緻的模具,
所以,自動第一個大模具造出來模具的時候,大模具就可以被拋棄了。
我們都知道編譯程序通常分為下面五個階段:
1)詞法分析
2)語法分析
3)語義分析與中間代碼產生
4)優化
5)目標代碼生成
當然最難的一點就是目標代碼的生成,這一階段實現了最終的翻譯,就是真正把原碼翻譯成可以被CPU直接計算的機器碼(NativeCode)。

③ c璇璦鐢ㄤ粈涔堣蔣浠

杞浠舵湁錛歍urboC錛孷isualC鍔犲姞6.0錛孋odeBlocks絳夈
1銆乀urboC錛氭渶緇忓吀鐨凜璇璦緙栬瘧鍣錛屾敮鎸丏OS鐜澧冿紝鍙浠ヤ嬌鐢ㄥ懡浠よ岀晫闈㈣繘琛岀紪璇戝拰璋冭瘯銆
2銆乂isualC鍔犲姞6.0錛歐indows騫沖彴涓嬬殑涓繪祦C璇璦緙栬瘧鍣錛屾敮鎸佸彲瑙嗗寲緙栫▼鍜岃皟璇曘
3銆丆odeBlocks錛氳法騫沖彴鐨凜璇璦闆嗘垚寮鍙戠幆澧冿紙IDE錛夛紝鏀鎸佸氱嶇紪璇戝櫒錛屽寘鎷珿CC銆丆lang絳夈
4銆丏evC鍔犲姞錛氳交閲忕駭鐨凜璇璦IDE錛岄傚悎鍒濆﹁呬嬌鐢錛屾敮鎸乄indows騫沖彴銆
5銆丒clipseCDT錛氬熀浜嶦clipse騫沖彴鐨凜璇璦闆嗘垚寮鍙戠幆澧冿紝鏀鎸佸氱嶇紪璇戝櫒鍜屾搷浣滅郴緇熴
6銆丼ublimeText錛氭祦琛岀殑鏂囨湰緙栬緫鍣錛屽彲浠ラ氳繃鎻掍歡瀹炵幇C璇璦緙栬瘧鍜岃皟璇曞姛鑳姐
7銆乂im錛氬懡浠よ屾枃鏈緙栬緫鍣錛屽彲浠ラ氳繃閰嶇疆瀹炵幇C璇璦緙栬瘧鍜岃皟璇曞姛鑳姐
8銆丒macs錛氬彟涓嬈炬祦琛岀殑鏂囨湰緙栬緫鍣錛屽彲浠ラ氳繃鎻掍歡瀹炵幇C璇璦緙栬瘧鍜岃皟璇曞姛鑳姐
9銆丆鍔犲姞緙栬瘧鍣錛氣淏orlandC鎴朇鍔犲姞5.5.1forWin32鈥濇槸涓涓狢鎴朇鍔犲姞緙栬瘧鍣錛屽叾鍔熻兘瀹屾暣銆佸寘鍚澶氱峉DK錛屼笖瀹歸噺鏋佸皬錛屽畨瑁呯増鏈澶у皬浠8MB銆侭orland鍏鍙哥殑鏃楄埌綰т駭鍝佲淐鍔犲姞Builder5鈥濆唴緗鐨勫氨鏄榪欎竴緙栬瘧鍣ㄣ
10銆丆璇璦鏄涓縐嶉潰鍚戣繃紼嬨佹娊璞″寲鐨勯氱敤紼嬪簭璁捐¤璦銆

④ delphi是什麼語言的編譯器

正確的說法是Object Pascal,即面向對象的Pascal語言,是在Pascal語言的基礎上發展起來的!

⑤ 緙栬瘧鍣ㄦ湁鍝浜涜蔣浠剁紪璇戝櫒鏈夊摢浜

鍏充簬緙栬瘧鍣ㄦ湁鍝浜涜蔣浠訛紝緙栬瘧鍣ㄦ湁鍝浜涜繖涓寰堝氫漢榪樹笉鐭ラ亾錛屼粖澶╂潵涓哄ぇ瀹惰В絳斾互涓婄殑闂棰橈紝鐜板湪璁╂垜浠涓璧鋒潵鐪嬬湅鍚э紒
1銆佺洰鍓嶆渶嫻佽岀殑C璇璦緙栬瘧鍣ㄦ湁浠ヤ笅鍑犵嶏細GNU Compiler Collection 鎴栫О GCCGCC錛圙NU Compiler Collection錛孏NU緙栬瘧鍣ㄥ椾歡錛夛紝鏄鐢 GNU 寮鍙戠殑緙栫▼璇璦緙栬瘧鍣ㄣ
2銆佸畠鏄浠GPL璁稿彲璇佹墍鍙戣岀殑鑷鐢辮蔣浠訛紝涔熸槸 GNU璁″垝鐨勫叧閿閮ㄥ垎銆
3銆丟CC鍘熸湰浣滀負GNU鎿嶄綔緋葷粺鐨勫畼鏂圭紪宀╁巻搴嗚瘧鍣錛岀幇宸茶澶у氭暟綾籙nix鎿嶄綔緋葷粺錛堝侺inux銆丅SD銆丮ac OS X絳夛級閲囩撼涓烘爣鍑嗙殑緙栬瘧鍣錛孏CC鍚屾牱閫傜敤浜庡井杞鐨刉indows銆
4銆丟CC鏄鑷鐢辮蔣浠惰繃紼嬪彂灞曚腑鐨勮憲鍚嶄緥瀛愶紝鐢辮嚜鐢辮蔣浠跺熀閲戜細浠GPL鍗忚鍙戝竷銆
5銆2銆丮icrosoft C 鎴栫О MS CMicrosoft C 鏄痗璇璦鐨勪竴縐岻DE錛堥泦鎴愬紑鍙戠幆澧冿級錛屽父瑙佺殑榪樻湁Microsoft Visual C++錛孊orland C++錛學atcom C++ ,Borland C++ 錛孊orland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++ 錛孡ccwin32 C Compiler 3.1,High C,Turbo C絳夌瓑......3銆丅orland Turbo C 鎴栫О Turbo CTurbo C鏄緹庡浗Borland鍏鍙哥殑浜у搧錛孊orland鍏鍙告槸涓瀹朵笓闂ㄤ粠鐑傛棶浜嬭蔣浠跺紑鍙戙佺爺鍒剁殑澶у叕鍙搞
6銆佽ュ叕鍙哥浉緇ф帹鍑轟簡涓濂 Turbo緋誨垪杞浠, 濡俆urbo BASIC, Turbo Pascal, Turbo Prolog, 榪欎簺杞浠跺緢鍙楃敤鎴鋒㈣繋銆
7銆佹墿灞曡祫鏂欙細C緙栬瘧鐨勬暣涓榪囩▼寰堝嶆潅錛屽ぇ鑷村彲浠ュ垎涓轟互涓嬪洓涓闃舵碉細棰勫勭悊闃舵靛湪璇ラ樁孌典富瑕佸畬鎴愬規簮浠g爜鐨勯勫勭悊宸ヤ綔錛屼富瑕佸寘鎷瀵瑰畯瀹氫箟鎸囦護錛屽ご鏂囦歡鍖呭惈鎸囦護錛岄勫畾涔夋寚浠ゅ拰鐗規畩瀛楃︾殑澶勭悊錛屽傚瑰畯瀹氫箟鐨勬浛鎹浠ュ強鏂囦歡澶翠腑鎵鍖呭惈鐨勬枃浠朵腑棰勫畾涔変唬鐮佺殑鏇挎崲絳夛紝鎬諱箣榪欐ヤ富瑕佸畬鎴愪竴浜涙浛鎹㈠伐浣滐紝杈撳嚭鏄鍚屾簮鏂囦歡鍚涔夌浉鍚屼絾鍐呭逛笉鍚岀殑鏂囦歡銆
8銆2銆佺紪璇戙佷紭鍖栭樁孌電紪璇戝氨鏄灝嗙涓闃舵靛勭悊寰楀埌鐨勬枃浠墮氳繃璇嶆硶璇娉曞垎鏋愮瓑杞鎹涓烘眹緙栬璦銆
9銆佷紭鍖栧寘鎷瀵逛腑闂翠唬鐮佺殑浼樺寲錛屽傜矖鎻″垹闄ゅ叕鍏辮〃杈懼紡錛屽驚鐜浼樺寲絳夛紱鍜屽圭洰鏍囦唬鐮佺殑鐢熸垚榪涜岀殑浼樺寲錛屽傚備綍鍏呭垎鍒╃敤鏈哄櫒鐨勫瘎瀛樺櫒瀛樻斁鏈夊叧鍙橀噺鐨勫礆紝浠ュ噺灝戝唴瀛樿塊棶嬈℃暟銆
10銆3銆佹眹緙栭樁孌靛皢奼囩紪璇璦緲昏瘧鎴愭満鍣ㄦ寚浠ゃ
11銆4銆侀摼鎺ラ樁孌甸摼鎺ラ樁孌電殑涓昏佸伐浣滄槸灝嗘湁鍏崇殑鐩鏍囨枃浠惰繛鎺ヨ搗鏉ワ紝鍗沖皢鍦ㄤ竴涓鏂囦歡涓寮曠敤鐨勭﹀彿鍚岃ョ﹀彿鍦ㄥ彟澶栦竴涓鏂囦歡涓鐨勫畾涔夎繛鎺ヨ搗鏉ワ紝浣垮緱鎵鏈夌殑鐩鏍囨枃浠舵垚涓轟竴涓鑳藉熻鎿嶄綔緋葷粺瑁呭叆鎵ц岀殑緇熶竴鏁翠綋銆
12銆 鍙傝冭祫鏂欐潵婧愶細鐧懼害鐧劇-gcc 錛圙NU緙栬瘧鍣ㄥ椾歡錛夊弬鑰冭祫鏂欐潵婧愶細鐧懼害鐧劇-Microsoft C鍙傝冭祫鏂欐潵婧愶細鐧懼害鐧劇-Turbo C銆

熱點內容
手機郵件接收伺服器怎麼設置 發布:2024-11-06 23:23:35 瀏覽:128
c語言循環例題 發布:2024-11-06 23:05:01 瀏覽:332
外星人m15r6選哪個配置 發布:2024-11-06 23:03:58 瀏覽:999
linuxmysql資料庫安裝 發布:2024-11-06 23:01:28 瀏覽:117
壓縮器能幹嘛 發布:2024-11-06 23:01:16 瀏覽:464
分布式存儲演算法 發布:2024-11-06 22:55:09 瀏覽:872
住宅區弱電有哪些強制配置規定 發布:2024-11-06 22:51:22 瀏覽:827
資料庫綁定 發布:2024-11-06 22:50:31 瀏覽:651
巧飯巧算演算法 發布:2024-11-06 22:44:49 瀏覽:853
dns伺服器的地址修改 發布:2024-11-06 22:39:54 瀏覽:107