解釋方式和編譯方式有什麼區別
發布時間: 2024-11-21 01:09:21
『壹』 將高級語言翻譯成機器語言的方式有哪兩種
將高級語言翻譯成機器語言的方式有編譯和解釋。
1、解釋方式是將源程序逐句解釋執行,即解釋一句執行一句,因此在解釋方式中不產生目標文件。例如早期的BASIC語言採用的就是「解釋」方式。
2、編譯方式是將整個高級語言編寫的源程序先翻譯成機器語言程序,然後再生成可在操作系統下直接運行的執行程序,通常會產生目標程序。
編譯和解釋的區別
編譯是將源程序翻譯成可執行的目標代碼,翻譯與執行是分開的;而解釋是對源程序的翻譯與執行一次性完成,不生成可存儲的目標代碼。這只是表象,對解釋執行而言,程序運行時的控制權在解釋器而不在用戶程序;對編譯執行而言,運行時的控制權在用戶程序。
解釋具有良好的動態特性和可移植性,在解釋執行時可以動態改變變數的類型、對程序進行修改以及在程序中插入良好的調試診斷信息等,而將解釋器移植到不同的系統上,則程序不用改動就可以在移植了解釋器的系統上運行。
編譯器是把源程序的每一條語句都編譯成機器語言,並保存成二進制文件,這樣運行時計算機可以直接以機器語言來運行此程序,速度很快。
而解釋器則是只在執行程序時,才一條一條的解釋成機器語言給計算機來執行,所以運行速度是不如編譯後的程序運行的快的。
熱點內容