導航:首頁 > 源碼編譯 > 編譯型語言和解釋型語言的過程

編譯型語言和解釋型語言的過程

發布時間:2022-01-14 21:20:35

『壹』 解釋性語言和編譯性語言的區別

用編譯型語言寫的程序執行之前,需要一個專門的編譯過程,通過編譯系統(不僅僅只是通過編譯器,編譯器只是編譯系統的一部分)把高級語言翻譯成機器語言,把源高級程序編譯成為機器語言文件,比如windows下的exe文件。以後就可以直接運行而不需要編譯了,因為翻譯只做了一次,運行時不需要翻譯,所以編譯型語言的程序執行效率高,但也不能一概而論,部分解釋型語言的解釋器通過在運行時動態優化代碼,甚至能夠使解釋型語言的性能超過編譯型語言。
解釋則不同,解釋型語言編寫的程序不需要編譯。解釋型語言在運行的時候才翻譯,比如VB語言,在執行的時候,專門有一個解釋器能夠將VB語言翻譯成機器語言,每個語句都是執行的時候才翻譯。這樣解釋型語言每執行一次就要翻譯一次,效率比較低。

『貳』 關於「編譯型語言」和「解釋性語言」的區別

1、程序控制權不同:

對於解釋性語言而言,程序運行時的控制權在解釋器(jre,.net)而不再用於程序。編譯型語言對於編譯器而言,運行時的控制權在用戶程序。

2、運行速度不同:

一些網頁腳本,伺服器腳本以及輔助開發介面這樣的對速度要求不高,對不同系統的兼容性有一定要求的程序則通常使用解釋性語言,如Java、JavaScript、VBScript、Perl、Python、Ruby、Matlab等等。

編譯語言由於程序執行速度快,同等條件下對系統的要求比較低,因此像開發操作系統、大型應用程序、資料庫系統等時都採用它,像C/C++,Pascal/Object Pascal(Delphi)等都是編譯型語言。

3、移植性不同:

解釋型語言,例如Java語言,Java程序首先通過編譯器編譯成class文件,如果在Windows平台上運行,則通過Windows平台上的Java虛擬機(VM)進行解釋。如果運行在Linux平台上,則通過Linux平台上的Java虛擬機進行解釋執行。

所以說能跨平台,前提是平台上必須要有相匹配的Java虛擬機。如果沒有Java虛擬機,則不能進行跨平台。

編譯型語言,例如C語言,用C語言開發程序後,需要通過編譯器把程序編譯成機器語言(即計算機可以識別的二進制文件,因為不同的操作系統識別的二進制文件是不同的),所以C語言程序進行移植後,需要重新編譯(如Windows編譯成ext文件,Linux編譯成erp文件)。

『叄』 編譯型語言和解釋語言的區別是什麼

1.編譯型語言在程序執行之前,有一個單獨的編譯過程,將程序翻譯成機器語言,以後執行這個程序的時候,就不用再進行翻譯了。
2.解釋型語言,是在運行的時候將程序翻譯成機器語言,所以運行速度相對於編譯型語言要慢。
3.C/C++ 等都是編譯型語言,而Java,C#等都是解釋型語言。
4.雖然Java程序在運行之前也有一個編譯過程,但是並不是將程序編譯成機器語言,而是將它編譯成位元組碼(可以理解為一個中間語言)。
在運行的時候,由JVM將位元組碼再翻譯成機器語言。
5.腳本語言一般都有相應的腳本引擎來解釋執行。 他們一般需要解釋器才能運行。JAVASCRIPT,ASP,PHP,PERL,Nuva都是腳本語言。C/C++編譯、鏈接後,可形成獨立執行的exe文件。

『肆』 解釋型語言與編譯型語言有什麼區別

前者給人看思路或者流程的,後者寫給編譯器看的。

『伍』 編譯型語言與解釋型語言的區別

編譯型語言是編譯好二進制代碼直接有機器執行;
解釋型一般都是有一個虛擬機,交給虛擬機執行,虛擬機在交給CPU執行~

『陸』 解釋型語言和編譯型語言的區別

首先,我們編程都是用的高級語言(寫匯編和機器語言的大牛們除外),計算機不能直接理解高級語言,只能理解和運行機器語言,所以必須要把高級語言翻譯成機器語言,計算機才能運行高級語言所編寫的程序。
說到翻譯,其實翻譯的方式有兩種,一個是編譯,一個是解釋。兩種方式只是翻譯的時間不同。
用編譯型語言寫的程序執行之前,需要一個專門的編譯過程,通過編譯系統(不僅僅只是通過編譯器,編譯器只是編譯系統的一部分)把高級語言翻譯成機器語言(具體翻譯過程可以參看下圖),把源高級程序編譯成為機器語言文件,比如windows下的exe文件。以後就可以直接運行而不需要編譯了,因為翻譯只做了一次,運行時不需要翻譯,所以編譯型語言的程序執行效率高,但也不能一概而論,部分解釋型語言的解釋器通過在運行時動態優化代碼,甚至能夠使解釋型語言的性能超過編譯型語言。

『柒』 編譯型語言和解釋型語言的區別和優劣

編譯型:優點:運行速度快,代碼效率高,編譯後的程序不可修改,保密性較好
缺點:代碼需要經過編譯方可運行,可移植性差,只能在兼容的操作系統上運行
解釋型:優點:可移植性較好,只要有解釋環境,可在不同的操作系統上運行缺點:運行需要解釋環境,運行起來比編譯的要慢,佔用資源也要多一些,代碼效率低,代碼修改後就可運行,不需要編譯過程

『捌』 編譯型語言和解釋型語言的區別

編譯型語言在程序執行之前,有一個單獨的編譯過程,將程序翻譯成機器語言就不用再進行翻譯了。

解釋型語言,是在運行的時候將程序翻譯成機器語言,所以運行速度相對於編C/C++ 等都是編譯型語言,而Java,C#等都是解釋型語言。

雖然Java程序在運行之前也有一個編譯過程,但是並不是將程序編譯成機器語言,而是將它編譯成位元組碼(可以理解為一個中間語言)。
在運行的時候,由JVM將位元組碼再翻譯成機器語言。
註:腳本語言一般都有相應的腳本引擎來解釋執行。 他們一般需要解釋器才能運行。JAVASCRIPT,ASP,PHP,PERL,Nuva都是腳本語言。C/C++編譯、鏈接後,可形成獨立執行的exe文件。

編譯型語言:

『玖』 編譯型語言和解釋型語言各自的優缺點是什麼

一、編譯型語言

優點:運行速度快,代碼效率高,編譯後的程序不可修改,保密性較好。

缺點:代碼需要經過編譯方可運行,可移植性差,只能在兼容的操作系統上運行 。

二、解釋型語言

優點:可移植性較好,只要有解釋環境,可在不同的操作系統上運行。

缺點:運行需要解釋環境,運行起來比編譯的要慢,佔用資源也要多一些,代碼效率低,代碼修改後就可運行,不需要編譯過程。

(9)編譯型語言和解釋型語言的過程擴展閱讀:

編譯型語言:程序在執行之前需要一個專門的編譯過程,把程序編譯成 為機器語言的文件,運行時不需要重新翻譯,直接使用編譯的結果就行了。程序執行效率高,依賴編譯器,跨平台性差些。如C、C++、Delphi等。而相對的,解釋性語言編寫的程序不進行預先編譯,以文本方式存儲程序代碼。在發布程序時,看起來省了道編譯工序。但是在運行程序的時候,解釋性語言必須先解釋再運行。

『拾』 解釋性語言和編譯型語言的區別與不同

編譯型語言在程序執行之前,先會通過編譯器對程序執行一個編譯的過程,把程序轉變成機器語言。運行時就不需要翻譯,而直接執行就可以了。最典型的例子就是C語言。
解釋型語言就沒有這個編譯的過程,而是在程序運行的時候,通過解釋器對程序逐行作出解釋,然後直接運行,最典型的例子是MS Basic。
通過以上的例子,我們可以來總結一下解釋型語言和編譯型語言的優缺點,因為編譯型語言在程序運行之前就已經對程序做出了「翻譯」,所以在運行時就少掉了「翻譯」的過程,所以效率比較高。

閱讀全文

與編譯型語言和解釋型語言的過程相關的資料

熱點內容
怎麼教育孩子的app 瀏覽:172
交叉編譯的輸出文件 瀏覽:330
手機app怎麼變更辦稅員 瀏覽:936
sql服務停用命令 瀏覽:912
為什麼系統要用兩個雲伺服器 瀏覽:680
兩個pdf怎麼合並 瀏覽:293
php查詢為空 瀏覽:589
香港伺服器丟包了怎麼辦 瀏覽:46
linux系統管理教程 瀏覽:643
共享文件夾怎麼設置只讀文件 瀏覽:295
小米添加雲伺服器地址 瀏覽:581
qt入門pdf 瀏覽:670
視頻監控取消默認加密 瀏覽:294
雲伺服器怎麼設置輸入鍵盤 瀏覽:817
單片機支持多大mhz 瀏覽:42
linux啟動mysql命令 瀏覽:792
編程和游戲買什麼筆記本 瀏覽:902
程序員座點陣圖片大全 瀏覽:142
aix重啟命令 瀏覽:462
騰訊雲伺服器的後台 瀏覽:47