29. 程式直譯器(Interpreter)和程式編譯器(Compiler)的說明和比較,下列何者有誤?
(A)直譯器不產生目的程式
(B)編譯器佔用記憶體較大
(C) C程式語言是用直譯器逐句翻譯並即時執行
(D)編譯器編譯全部程式為可執行檔目的程式,但不執行
答案:登入後查看
統計: A(43), B(32), C(764), D(72), E(0) #1540015
統計: A(43), B(32), C(764), D(72), E(0) #1540015
詳解 (共 2 筆)
#2206334
C程式語言是用程式編譯器(Compiler)
直譯器(Interpreter)
特點:將程式一行一行的讀入,逐行翻譯並執行。 不會產生目的檔 。減輕編譯程式的負擔,但效率較差。
執行方法:
直接執行高階程式語言 (如shell)
轉換高階語言成為ByteCode,並執行它(如Perl, Python, Ruby)
以直譯器包含的編譯器對高階語言編譯,並指示處理器執行編譯後的程式(例如:JIT)
優點:方便操作、 馬上看到結果 、適合初學者
缺點:無法進行程式碼最佳化、效率差 、每次執行須重新翻譯程式
範例:Perl 、Python、Ruby、shell
編譯器(Compiler)
特點:將程式語言原始碼,轉換成另一種程式語言
將翻譯結果存成目的檔(Object file),與函式庫打包可成為執行檔(Execute file)
整批作業來處理轉譯工作、執行速度較快
執行方式:
原始碼
使用預處理器(preprocess)進行詞法分析
編譯
產生目的檔(Object file)
使用連結器(Linker)與函式庫結合
產生執行檔(Execute file)
優點:可進行程式碼最佳化、效率佳、可建立為執行檔
缺點:須連結其他函式庫才能執行、開發過程較不方便
範例:C、C++、Java
20
0