㈠ 解釋性語言和編譯型語言的區別與不同
首先明確一點,機器只能執行二進制指令。
編譯型就是把源代碼編譯成某種機器能執行的二進制指令,執行時,機器直接執行其中的指令碼。
而解釋型,顧名思義需要一個能夠解釋其特殊指令的中間件,這個中間件通常叫做虛擬機,如java虛擬機。解釋型語言也並非直接執行源代碼,而是編譯成該解釋語言特有的一種指令碼,虛擬機能夠識別這種指令碼,並在執行時將其翻譯成相應的機器碼。
所以,相對的編譯型運行速度更快,但是在不同的平台上不能通用。而解釋型,運行速度慢,但是只要平台上安裝了虛擬機,解釋型語言生成的程序就能運行。
㈡ 解釋型語言和編譯型語言的區別是什麼
解釋型語言和編譯型語言的區別是在於翻譯的時間點不同。編譯型語言是在代碼執行之前進行編譯,生成中間代碼文件。解釋型語言是在運行時進行及時解釋,並立即執行,當編譯器以解釋方式運行的時候,也稱之為解釋器。
計算機不能理解除任何機器語言之外的語言,所以必須把程序員所寫的代碼翻譯成機器語言才能執行程序。程序語言翻譯成機器語言的工具,被稱為翻譯器。
解釋型語言的特性
解釋型語言效率低,每執行一次都要進行翻譯。非獨立性,跨平台性好編譯型語言進行移植後要重新編譯,相對而言解釋型語言跨平台較容易。
同等條件下,編譯型語言對系統的條件要求比較低,像開發操作系統,大型應用程序,資料庫系統,則用編譯型語言。對不同平台兼容性有一定要求的程序通常使用解釋型語言。
㈢ 計算機語言的分類及之間的聯系與區別
計算機高級編程語言按其程序的執行方式可以分為兩種:編譯型,解釋型
1.編譯型語言是指使用專門的編譯器、針對特定平台(操作系統)將某種高級語言源程序一次性「翻譯」成可被該平台硬體運行的機器碼(包括指令和操作數),並包裝成該平台的操作系統所能識別和運行的格式。
這種語言的程序執行時效率高,可以脫離開發環境獨立運行,但如果要移植必須修改源程序,或者針對不同的平台採用不同的編譯器進行重新編譯。現在的多是高級語言,如c,c++,Pascal,LISP等都是編譯型的。
2.解釋型是指用專門的解釋器將某種高級語言源程序逐條解釋成特定平台的機器碼指令並立即執行,解釋一句執行一句,而不進行整體的編譯和鏈接處理。
3.java語言是解釋型和編譯型的結合,先採用通用的java編譯器將java源程序編譯成為與平台無關的中間產物,然後利用java虛擬機(JVM:Java Virtual Maching)進行解釋執行。
匯編語言
為了減輕使用機器語言編程的痛苦,人們進行了一種有益的改進:用一些簡潔的英文字母、符號串來替代一個特定的指令的二進制串,
比如,用"ADD"代表加法,"MOV"代表數據傳遞等等,這樣一來,人們很容易讀懂並理解程序在干什麼,糾錯及維護都變得方便了,這種程序設計語言就稱為匯編語言,即第二代計算機語言。
然而計算機是不認識這些符號的,這就需要一個專門的程序,專門負責將這些符號翻譯成二進制數的機器語言,這種翻譯程序被稱為匯編程序。
匯編語言同樣十分依賴於機器硬體,移植性不好,但效率仍十分高,針對計算機特定硬體而編制的匯編語言程序,能准確發揮計算機硬體的功能和特長,程序精煉而質量高,所以至今仍是一種常用而強有力的軟體開發工具。
匯編語言的實質和機器語言是相同的,都是直接對硬體操作,只不過指令採用了英文縮寫的標識符,更容易識別和記憶。它同樣需要編程者將每一步具體的操作用命令的形式寫出來。
㈣ 請簡述解釋性編程語言和編譯性編程語言的區別
1、對於語言本身來說,各種編程語言本質沒什麼不同。所謂的「解釋性」和「編譯」指的是執行機制上的不同。
2、編譯型語言的優缺點:執行效率高,缺點是跨平台能力弱,不便調試。解釋型解釋型語言:解釋性語言編寫的程序不進行預先編譯,以文本方式存儲程序代碼。執行時才翻譯執行。程序每執行一次就要翻譯一遍。
3、解釋型語言和編譯型語言的區別是在於翻譯的時間點不同。編譯型語言是在代碼執行之前進行編譯,生成中間代碼文件。解釋型語言是在運行時進行及時解釋,並立即執行,當編譯器以解釋方式運行的時候,也稱之為解釋器。
4、程序控制權不同:對於解釋性語言而言,程序運行時的控制權在解釋器(jre,.net)而不再用於程序。編譯型語言對於編譯器而言,運行時的控制權在用戶程序。
㈤ 高級語言程序有兩種工作方式編譯方式和解釋方式
具體如下。
編譯型工作過程圖,編譯程序功能就是把高級語言書寫的源代碼譯成與之等價的目標程序(匯編語言或機器語言)。解釋型,解釋程序實現高級知鄭語言的三種方式解釋型在詞法、語法和語義分析方面與編譯程序的工作原理基本相同,但在運行時直接執行源程序或源程序的內部形式,即解釋程序不產生源程序的目標程序,解釋程序通常可以分為兩部分:第一部分是分析部分,經語義分析後把源程序翻譯成中間代碼,中間代碼常用逆波蘭式表示。第二部分是解釋部分。
高級語言(High-levelprogramminglanguage)是一種獨立於機器,面向過程或對象的語言。高級語言是參照數學語言而設哪猛罩計的近似於日常會話的語言。例如,要將2個變數相李鬧加並賦值給第三個變數,用高級語言表達為var3=var1+var2。