導航:首頁 > 源碼編譯 > 編譯器和解釋器實現技術完全不同

編譯器和解釋器實現技術完全不同

發布時間:2024-09-21 09:44:34

編譯程序和解釋程序的區別

編譯程序和解釋程序的區別是:

1、編譯是將源程序翻譯成可執行的目標代碼;解釋程序不產生目標代碼。

2、解釋程序可跨平台使用;編譯程序跨平台性不好。

3、解釋程序可以隨時修改,立刻生效;編譯程序不行。

4、解釋程序運行效率低;編譯程序執行速度快。

編譯是將源程序翻譯成可執行的目標代碼,翻譯沒斗與執行是分開的;而解釋是對源程序的翻譯與執行一次性完成,不生成可存儲的目標代碼。這只是表象,二者背後的最大區別是:對解釋執行而言,程序運行時的控制權在解釋器而不在用戶程序;對編譯執行而言,運行時的控制權在用戶程序。

解釋具有良好的動態特性和可移植性,比如在解釋執行時可以動態改變變數的類型、對程序進行修改以及在程序中插入良好的調試診斷信息等,而將解釋器移植到不同的系統上,則程序不用改動就可以在移植了解釋器的系統上運行。

同時解釋器也有很大的缺點,比如執行效率低,佔用空間大,因為不僅要給用戶程序分配空間,念察敗解釋器本身也佔用了寶貴的系統資源。

編譯器是把源程序的每一條語句都編譯成機器語言,並保存成二進制文件,這樣運行仔顫時計算機可以直接以機器語言來運行此程序,速度很快。

而解釋器則是只在執行程序時,才一條一條的解釋成機器語言給計算機來執行,所以運行速度是不如編譯後的程序運行的快的。

❷ 編譯和解釋的區別是什麼

1.定義區別

①編譯原理旨在介紹編譯程序構造的一般原理和基本方法。內容包括語言和文法、詞法分析、語法分析、語法制導翻譯、中間代碼生成、存儲管理、代碼優化和目標代碼生成。

②匯編語言(assembly language)是一種用於電子計算機、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。

2.處理方式區別

①編譯過程與解釋挺像,區別就在於編譯是將所有的源代碼指令一次性成翻目標代碼並執行。

②匯編過程就是把匯編指令一對一地翻譯成01機器碼的過程。而採用這種處理方式的語言只有一類:匯編語言。

3.特點區別

①編譯語言的特點就是不需要解釋器的參與,所以運行比較快,但是編譯好的程序只能在當前平台運行,是個局限性。

②匯編語言是當今世界上歷史最早,應用最廣,功能最強大,運行速度最快的編程語言。但是匯編語言開發工期長,可讀性差,並且不能跨平台編程。

❸ 編譯器和解釋器的主要區別是什麼他們相對於對方各自的優點

解釋器

解釋執行
的源代碼,
編譯器
是將源代碼編譯成
目標代碼
他們最大的區別是程序運行時需要解釋器邊解釋邊執行,而編譯器則在運行時是完全不需要的
解釋器的優點是比較容易讓用戶實現自己跨平台的代碼,比如javaphp等,同一套代碼可以在
幾乎所有的
操作系統上執行,而無需根據操作系統做修改;
編譯器的目的就是生成目標代碼再由連接器生成可執行的
機器碼
,這樣的話需要根據不同的操作系統編制代碼,雖然有像Qt這樣的源代碼級跨平台的編程工具庫,但在不同的平台上仍然需要重新編譯連接成可執行文件,但其執行效率要遠遠高於解釋運行的程序。
編譯器是把源程序的每一條語句都編譯成機器語言,並保存成二進制文件,這樣運行時計算機可以直接以機器語言來運行此程序,速度很快;
而解釋器則是只在執行程序時,才一條一條的解釋成機器語言給計算機來執行,所以運行速度是不如編譯後的程序運行的快的.
這是因為計算機不能直接認識並執行我們寫的語句,它只能認識機器語言(是二進制的形式)

閱讀全文

與編譯器和解釋器實現技術完全不同相關的資料

熱點內容
打孔式文件夾怎麼裝視頻 瀏覽:27
php怎麼學比較好 瀏覽:379
python中關於函數調用 瀏覽:362
debian系統命令行如何排序 瀏覽:407
車壓縮機保修幾年 瀏覽:307
linux同步腳本 瀏覽:664
福建新唐集成硬體加密 瀏覽:943
空調壓縮機被破壞 瀏覽:105
現在學php怎麼樣 瀏覽:90
linuxchttp下載 瀏覽:770
大數據虛擬機雲伺服器 瀏覽:57
java與嵌入式開發 瀏覽:20
minios如何搭建文件伺服器 瀏覽:1000
華為為啥有些壓縮包解壓不開 瀏覽:563
oracle可以編譯存儲嗎 瀏覽:475
機械男和女程序員創業 瀏覽:799
自己怎麼製作軟體app 瀏覽:214
javajson字元串轉java對象 瀏覽:230
必修一數學PDF 瀏覽:775
javascriptphpjsp 瀏覽:811