編譯型與解釋型編程語言的區(qū)別

前面我們知道了高級編程語言計算機是不能直接識別的,需要通過翻譯成機器碼然后交由計算機執(zhí)行。

創(chuàng)新互聯(lián)公司專注于東風(fēng)網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供東風(fēng)營銷型網(wǎng)站建設(shè),東風(fēng)網(wǎng)站制作、東風(fēng)網(wǎng)頁設(shè)計、東風(fēng)網(wǎng)站官網(wǎng)定制、微信小程序開發(fā)服務(wù),打造東風(fēng)網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供東風(fēng)網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

根據(jù)不同的翻譯機制,又分為編譯型和解釋型。

注意,翻譯源代碼是一個非常復(fù)雜的過程,大致包括詞法分析,語法分析,語義分析,性能優(yōu)化,目標(biāo)代碼生成等五個步驟。在初學(xué)階段沒有必要研究這個,如果感興趣可以閱讀《編譯原理》一書。

接下來我會使用通用的語言和類比的方式講解編譯和解釋。

編譯型

如果把高級編程語言編寫的代碼比作一篇英文文章,計算機比作一個不懂英文的人。那么,為了讓這個人閱讀這篇文章,可以找一名懂英文的翻譯將這篇文章整體翻譯成中文版。然后他就可以隨時隨地的閱讀這篇翻譯后的文章。

編譯的過程其實跟上面翻譯的過程很像。

編譯型編程語言就是通過編譯器(英文翻譯)將源代碼(編譯型編程語言編寫的程序,類比英文文章)編譯(翻譯)成可執(zhí)行文件(翻譯后的文章)。

可執(zhí)行文件可以在任何支持的平臺上,脫離編譯環(huán)境運行。因為可執(zhí)行程序就是機器碼,所以它的執(zhí)行效率高。但是編譯型編程語言一般是不能跨平臺的,也就是說不能在不同的操作系統(tǒng)間任意切換, 并且修改程序也非常不方便,只要源代碼修改了,都需要重新編譯生成新的可執(zhí)行文件。C語言,C++就是典型的編譯型編程語言。

解釋型

接上面的類比,翻譯這篇英文文章,還可以通過隨身電子詞典,逐字逐句的邊看邊翻譯。

解釋型編程語言就是通過解釋器(電子詞典)將源代碼(解釋型編程語言編寫的程序)逐行解釋成機器碼,然后交由計算機執(zhí)行。

解釋型編程語言編寫的程序離不開解釋器,因為是邊翻譯邊執(zhí)行所以相對效率不高,但是修改起來非常方便,只要源代碼修改了,下一次執(zhí)行就是修改后的代碼。解釋型編程語言大都可以跨平臺運行,這歸功于解釋器。Python,php就是典型的解釋型編程語言。

關(guān)于Python

Python屬于典型的解釋型編程語言,支持所有常見的平臺,例如Linux,Windows,Mac OS, Android, FreeBSD等等,只要在不同的平臺上安裝了對應(yīng)的解釋器,代碼就可以正確運行,一般不需要擔(dān)心任何兼容性問題,真正做到了"一次編寫,到處運行"。

另外,關(guān)于執(zhí)行效率,你可能會看到很多人說python的執(zhí)行效率差。那只是相對而言,隨著硬件性能的提升,和很多優(yōu)化手段,python在某些時候執(zhí)行效率甚至?xí)^c語言,所以忘記這個效率問題,全心全意的學(xué)習(xí)python吧。

總結(jié)

總結(jié)編譯型編程語言與解釋型語言的區(qū)別如下表:

類型 原理 優(yōu)點 缺點
編譯型語言 通過專門的編譯器,將所有源代碼一次性轉(zhuǎn)換成特定平臺(Windows、Linux 等)執(zhí)行的機器碼(以可執(zhí)行文件的形式存在)。 一次編譯,多次運行,脫離編譯環(huán)境,并且運行效率高。 可移植性差,不夠靈活。
解釋型語言 由專門的解釋器,根據(jù)需要將部分源代碼臨時轉(zhuǎn)換成特定平臺的機器碼。 跨平臺性好,通過不同的解釋器,將相同的源代碼解釋成不同平臺下的機器碼。 一邊執(zhí)行一邊轉(zhuǎn)換,效率不搞。

上一章 下一章
零基礎(chǔ)教程目錄

名稱欄目:編譯型與解釋型編程語言的區(qū)別
文章轉(zhuǎn)載:http://m.kartarina.com/article34/dsogipe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、關(guān)鍵詞優(yōu)化、網(wǎng)站建設(shè)、虛擬主機Google營銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
主站蜘蛛池模板: 亚洲AV永久无码精品成人| 色欲aⅴ亚洲情无码AV| 亚洲热妇无码AV在线播放| 亚洲无码视频在线| 亚洲AV无码国产在丝袜线观看| 久久午夜伦鲁片免费无码| 国产午夜无码视频免费网站| 亚洲av无码av制服另类专区| 国产精品亚洲专区无码牛牛 | 无码精品日韩中文字幕| 亚洲国产成人精品无码区在线网站| 无码办公室丝袜OL中文字幕| 亚洲AV无码一区二区二三区软件| 无码丰满熟妇浪潮一区二区AV| 亚洲国产精品无码久久一区二区| 蕾丝av无码专区在线观看| 亚洲另类无码专区首页| 亚洲国产精品无码中文字| 国产午夜鲁丝片AV无码| 中文无码一区二区不卡αv| 国产50部艳色禁片无码| 国产精品亚洲专区无码不卡| 午夜无码性爽快影院6080| 无码人妻丰满熟妇精品区| 久久亚洲av无码精品浪潮| 无码h黄肉3d动漫在线观看| 亚洲另类无码专区丝袜| 精品无码国产自产拍在线观看| 伊人久久综合无码成人网| 无码精品人妻一区二区三区影院| 亚洲αⅴ无码乱码在线观看性色| 日韩一区二区三区无码影院| 国产网红无码精品视频| 亚洲熟妇无码八AV在线播放| 免费无码H肉动漫在线观看麻豆| 亚洲国产精品成人AV无码久久综合影院 | 成年午夜无码av片在线观看| 日韩少妇无码一区二区三区| 日韩精品无码人妻一区二区三区| 伊人久久大香线蕉无码麻豆| 国产福利电影一区二区三区久久老子无码午夜伦不 |