編譯和解釋軟考
『壹』 編譯和解釋的區別是什麼
1.定義區別
①編譯原理旨在介紹編譯程序構造的一般原理和基本方法。內容包括語言和文法、詞法分析、語法分析、語法制導翻譯、中間代碼生成、存儲管理、代碼優化和目標代碼生成。
②匯編語言(assembly language)是一種用於電子計算機、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。
2.處理方式區別
①編譯過程與解釋挺像,區別就在於編譯是將所有的源代碼指令一次性成翻目標代碼並執行。
②匯編過程就是把匯編指令一對一地翻譯成01機器碼的過程。而採用這種處理方式的語言只有一類:匯編語言。
3.特點區別
①編譯語言的特點就是不需要解釋器的參與,所以運行比較快,但是編譯好的程序只能在當前平台運行,是個局限性。
②匯編語言是當今世界上歷史最早,應用最廣,功能最強大,運行速度最快的編程語言。但是匯編語言開發工期長,可讀性差,並且不能跨平台編程。
『貳』 編譯程序和解釋程序有哪些區別
編譯是在開發期將程序源代碼變成直面系統內核的機器碼,編譯的程序可以在編譯器支持的系統平台上運行,在程序的執行期是不依靠其他軟體環境的;
解釋的程序則在執行期仍然需要其開發語言的軟體環境來對程序進行解釋,之後才能被系統底層接受和執行,所以在用戶來看,其程序執行效率低,對第三方軟體環境依賴程度高。
『叄』 java程序的翻譯方式是「編譯」還是「解釋」
java結合了編譯和解釋過程。Java源程序首先被編譯成class文件,命令javac,這一點大家都毫無疑問。然後,由虛擬機(jvm)對class文件加以解釋執行。
個人覺得,解釋器不對源程序做任何改變,這也是證明java不是解釋語言的證據,因為有class文件
『肆』 解釋和編譯有什麼區別
一、與計算機的交流方式不同
1、解釋程序不產生目標代碼,它逐條地取出源程序中的語句,邊解釋,邊執行;解釋器把源代碼文件邊解釋成機器語言邊交給CPU執行。
三、開發便捷性
1、解釋程序可以隨時修改,立刻生效,改完源代碼後,直接運行看效果
2、編譯程序每次修改源代碼,都要重新編譯,生成機器碼文件
四、運行速度
1、解釋程序運行效率低,所有的代碼均需經過解釋器邊解釋變執行,速度比編譯型慢很多
2、編譯程序執行速度快,因為你的程序代碼已經翻譯成了是計算機可以理解的機器語言。
『伍』 編譯和解釋的區別是什麼
編譯(compilation , compile) ,利用編譯程序從源語言編寫的源程序產生目標程序的過程。用編譯程序產生目標程序的動作。 編譯就是把高級語言變成計算機可以識別的2進制語言。
解釋直譯語言由解釋器將代碼一句一句運行。
理論上,任何編程語言都可以是編譯式,或直譯式的。它們之間的區別,僅與程序的應用有關。
『陸』 編譯程序和解釋程序都是( )。
編譯程序就是把用高級語言編寫的面向過程的源程序翻譯成目標程序的語言處理程序。簡單說就是翻譯成計算機能識別的2進制。
解釋程序由一個總控程序和若干個執行子程序組成。解釋程序的工作過程如下:首先,由總控程序執行初始准備工作,置工作初態;然後,從源程序中取一個語句S,並進行語法檢查。如果語法有錯,則輸出錯誤信息;否則,根據所確定的語句類型轉去執行相應的執行子程序。返回後檢查解釋工作是否完成,如果未完成,則繼續解釋下一語句;否則,進行必要的善後處理工作。
解釋執行方式與編譯執行方式是不同的,其根本區別在於:編譯方式把源程序的執行過程嚴格地分成兩大步:編譯和運行。即先把源程序全部翻譯成目標代碼,然後再運行此目標代碼,獲執行結果。解釋方式則不然。它是按照源程序中語句的動態順序,直接地逐句進行分析解釋,並立即執行。所以,解釋程序是這樣一種程序,它能夠按照源程序中語句的動態順序,逐句地分析解釋並執行,直至源程序結束。
與編譯程序一樣,解釋程序也與源語言及計算機有關。同一台計算機上不同語言的解釋程序是不同的;同一種語言在不同的計算機上的解釋程序也可能不同。同一種高級語言的源程序,它可以採用解釋執行方式,也可以採用編譯執行方式。例如,BASIC語言有解釋BASIC和編譯BASIC之分。前者執行速度慢;後者執行速度快。編譯程序和解釋程序都屬於系統程序。
所以都是在做處理。
『柒』 編譯程序和解釋程序都是什麼意思
1、編譯程序是把用高級程序設計語言或計算機匯編語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程序,屬於採用生成性實現途徑實現的翻譯程序。編譯程序以高級程序設計語言書寫的源程序作為輸入,而以匯編語言或機器語言表示的目標程序作為輸出;編譯出的目標程序通常還要經歷運行階段,以便在運行程序的支持下運行,加工初始數據,算出所需的計算結果。
2、解釋程序是高級語言翻譯程序的一種,它將源語言書寫的源程序作為輸入,解釋一句後就提交計算機執行一句,並不形成目標程序。就像外語翻譯中的「口譯」一樣,說一句翻一句,不產生全文的翻譯文本。
(7)編譯和解釋軟考擴展閱讀:
編譯程序的實現演算法較為復雜。這是因為它所翻譯的語句與目標語言的指令不是一一對應關系,而是一多對應關系;同時也因為它要處理遞歸調用、動態存儲分配、多種數據類型,以及語句間的緊密依賴關系。但是,由於高級程序設計語言書寫的程序具有易讀、易移植和表達能力強等特點,編譯程序廣泛地用於翻譯規模較大、復雜性較高、且需要高效運行的高級語言書寫的源程序。
『捌』 編譯程序和解釋程序有何區別
編譯程序能生成目標程序,而解釋程序不能。
『玖』 編譯程序和解釋程序有何區別
編譯程序能生成目標程序,而解釋程序不能。
『拾』 編譯程序和解釋程序的區別在於A.是否產生目標
編譯程序和解釋程序的區別在於
A.是否產生目標程序
B.是否用於將高級語言源程序轉換成機器語言
C.是否屬於語言處理程序
D.是否有可視化的開發環境
正確答案:A