1. 程式人生 > >解釋器和編譯器的區別

解釋器和編譯器的區別

c語言代碼 支持 exe程序 png 選擇 編譯器 語法 es2017 進制

 解釋器是一條一條的解釋執行源語言。比如php,postscritp,javascript就是典型的解釋性語言。  

 編譯器是把源代碼整個編譯成目標代碼,執行時不在需要編譯器,直接在支持目標代碼的平臺上運行,這樣執行效率比解釋執行快很多。比如C語言代碼被編譯成二進制代碼(exe程序),在windows平臺上執行。

解釋器和編譯器的區別:讀入源語言後,解釋器和編譯器都要進行詞法分析、語法分析和語義分析,之後,二者開始有所分別。解釋器在語義分析後選擇了直接執行語句;編譯器在語義分析後選擇將將語義存儲成某一種中間語言,之後通過不同的後端翻譯成不同的機器語言(可執行程序)。如下圖所示:技術分享

解釋器和編譯器的區別