热门问题
时间线
聊天
视角
編譯語言
一種用編譯器實作的程式語言,可將原始碼轉換為二進位可執行的形式 来自维基百科,自由的百科全书
Remove ads
編譯語言(英語:Compiled language)是一種程式語言類型,通過編譯器來實作。它不像直譯語言一樣,由直譯器將程式碼一句一句執行,而是以編譯器,先將程式碼編譯為機器碼,再加以執行。理論上,任何程式語言都可以是編譯式,或直譯式的。它們之間的區別,僅與程式的應用有關。


優點與缺點
一般而言,用編譯語言寫成的程式,在執行期的執行速度,通常比用直譯語言寫的程式快。因為程式在編譯期,已經被預先編譯成機器碼,可以直接執行,不用像直譯語言一樣,還要多一道直譯程序。
但是要先進行編譯,之後才能執行程式,這也造成了編譯語言的缺點。一般而言,編譯語言的程式開發速度,以及除錯時間,都是比較長的。因為它不像直譯語言可以寫完一行,或一小段程式之後,馬上執行,馬上除錯。直譯語言通常讓程式開發的整體時間變少,在開發過程中,程式師也可以更彈性、快速的測試自己的想法。
為了改善編譯語言的效率而發展出的即時編譯技術,已經縮小了這兩種語言間的差距。這種技術混合了編譯語言與直譯語言的優點,它像編譯語言一樣,先把程式原始碼編譯成字節碼。到執行期時,再將字節碼直譯,之後執行。Java與LLVM是這種技術的代表產物。
編譯語言列表
- Ada
 - ALGOL
 - BASIC
- PowerBasic
 - Visual Basic(轉位元組碼)
 - PureBasic
 
 - C
 - C++
 - C♯(轉位元組碼)
 - Carbon
 - CLEO
 - COBOL
 - Cobra
 - Crystal
 - D
 - eC
 - Eiffel
- Sather
 - Ubercode
 
 - Erlang(轉位元組碼)
 - F♯(轉位元組碼)
 - Factor(後期版本)
 - Forth
 - Fortran
 - Go
 - Haskell
 - Haxe (轉位元組碼或C++)
 - Java(轉位元組碼)
 - JOVIAL
 - Julia (through JIT)
 - LabVIEW, G
 - LISP
 - Mercury
 - ML
- Standard ML
- Alice
 
 - OCaml
 
 - Standard ML
 - Nim(轉C、C++或Objective-C)
 - Pascal
- Object Pascal
- Delphi
 - Free Pascal / Lazarus
 
 - Modula-2
 - Modula-3
 - Oberon
 
 - Object Pascal
 - Objective-C
 - PL/I
 - RPG
 - Rust
 - Seed7
 - SPITBOL
 - Swift
 - Vala
 - Visual Foxpro
 - Visual Prolog
 - W
 - Zig
 
Remove ads
相關條目
參考資料
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads
