編譯執行解釋執行
Ⅰ 有沒有大佬用通俗一點的語言解釋下什麼是解釋執行和編譯執行啊啊
把源代碼一行行地翻譯成位元組碼,邊翻譯邊執行就叫解釋執行;把源代碼一次性翻譯成位元組碼或機器碼等二進制文件,執行時直接運行二進制文件,不需要源代碼就叫編譯執行。
Ⅱ 解釋執行和編譯執行的區別和概念
解釋執行:
由解釋器根據輸入的數據當場執行而不生成任何的目標程序
編譯執行:
先將源代碼編譯成目標語言(如:機器語言)之後通過連接程序連接到生成的目標程序進行執行
Ⅲ 編譯執行和解釋執行的區別
一、主體不同
1、編譯執行:由編譯程序將目標代碼一次性編譯成目標程序,再由機器運行目標程序。
2、解釋執行:將源語言直接作為源程序輸入,解釋執行解釋一句後就提交計算機執行一句,並不形成目標程序。
二、優勢不同
1、編譯執行:相比解釋執行編譯執行效率高,佔用資源小,適合復雜程序
2、解釋執行:開發速度快,出現嚴重BUG的幾率小。
三、缺點不同
1、編譯執行:兼容性差,例如在windows平台上寫的編譯程序一般不可以在unix平台上運行。
2、解釋執行:解析需要時間,不生成目標程序而是一句一句的執行的方式會造成計算機資源的浪費,即執行效率低。
Ⅳ 編譯執行和解釋執行有什麼區別
編譯執行就像你買的《C Primer》中文版,譯者全部翻譯完(編寫代碼),拿到出版社去(編譯器),編輯們校對沒有發現錯別字(編譯),然後出版給你看,只要出版社(編譯器)工作正常,那麼就可以認為書的內容肯定沒有錯(可以正確執行);
解釋執行就像你去聽報告,老外一邊講(代碼),同聲傳譯(解釋器)一邊翻給你聽(解釋執行),如果哪一句老外講錯了(代碼出錯),同聲傳譯才卡殼,但是前面已經翻譯出去的,肯定是沒啥問題(部分正常執行了);
這么說你理解了沒有?編譯執行效率高,但靈活性差(任何修改都要重編譯),代碼保密性好;解釋執行效率低一點(這是以前的說法,現代解釋器的效率也可以非常高),靈活性好,代碼保密性差;
還有一種介於兩者之間的執行方式,半編譯執行,像大名鼎鼎的java和C#等等,就是這種方式,是實現跨平台的優良解決方案。
Ⅳ Java語言中編譯執行和解釋執行的區別
編譯執行和解釋執行是不同語言之間的特性,所有的java都是編譯執行的。 如果不是編譯執行,其實已經完全不用java的編譯器。那麼只是一個使用java語法的另一種語言而已。
編譯執行是指把代碼先編譯成機器碼。然後按順序運行,如果編譯中有任何異常,都無法繼續運行。java的編譯就是把java轉換成class。
而解釋執行則是運行到哪一行代碼就執行哪一行代碼。如果其他代碼有錯誤但沒有運行到,一般不會影響。
比較起來,編譯執行速度要快的多。而解釋執行則在於比較靈活。可以動態修改。甚至可以在代碼運行到指定語句之前,修改該代碼。
Ⅵ C語言既可以編譯執行又可以解釋執行嗎
目前我知道的C語言只能編譯執行,就是先編譯成二進制的exe文件才能執行。
腳本語言才可以解釋執行。
Ⅶ 請教什麼是「解釋執行」,什麼是「編譯後執行」:
解釋執行就是把你的程序一句一句的執行。
編譯執行是這個開放環境(也可以說是這個語言)它自帶了一個編譯器。編寫好的代碼首先被編譯程匯編語言或者是機器語言,然後執行。多用在高級語言上。
所以解釋執行一般比編譯執行效率高。
沒有說反。語言越低級,越靠近機器,執行效率就會越高。