婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 編譯和解釋的區別是什么

編譯和解釋的區別是什么

熱門標簽:地圖標注植物名稱 南召400電話辦理資費 地圖標注審核工作怎么樣注冊 鄭州中國移動400電話申請 去哪里辦卡 福建ai電銷機器人加盟公司 揭陽外呼系統公司 無錫電銷機器人銷售 招聘信息 熱血傳奇沃瑪森林地圖標注

編譯和解釋的區別是什么?

編譯器是把源程序的每一條語句都編譯成機器語言,并保存成二進制文件,這樣運行時計算機可以直接以機器語言來運行此程序,速度很快;

而解釋器則是只在執行程序時,才一條一條的解釋成機器語言給計算機來執行,所以運行速度是不如編譯后的程序運行的快的.

這是因為計算機不能直接認識并執行我們寫的語句,它只能認識機器語言(是二進制的形式) 

一、低級語言與高級語言

最初的計算機程序都是用0和1的序列表示的,程序員直接使用的是機器指令,無需翻譯,從紙帶打孔輸入即可執行得到結果。后來為了方便記憶,就將用0、1序列表示的機器指令都用符號助記,這些與機器指令一一對應的助記符就成了匯編指令,從而誕生了匯編語言。無論是機器指令還是匯編指令都是面向機器的,統稱為低級語言。因為是針對特定機器的機器指令的助記符,所以匯編語言是無法獨立于機器(特定的CPU體系結構)的。但匯編語言也是要經過翻譯成機器指令才能執行的,所以也有將運行在一種機器上的匯編語言翻譯成運行在另一種機器上的機器指令的方法,那就是交叉匯編技術。

高級語言是從人類的邏輯思維角度出發的計算機語言,抽象程度大大提高,需要經過編譯成特定機器上的目標代碼才能執行,一條高級語言的語句往往需要若干條機器指令來完成。高級語言獨立于機器的特性是靠編譯器為不同機器生成不同的目標代碼(或機器指令)來實現的。那具體的說,要將高級語言編譯到什么程度呢,這又跟編譯的技術有關了,既可以編譯成直接可執行的目標代碼,也可以編譯成一種中間表示,然后拿到不同的機器和系統上去執行,這種情況通常又需要支撐環境,比如解釋器或虛擬機的支持,Java程序編譯成bytecode,再由不同平臺上的虛擬機執行就是很好的例子。所以,說高級語言不依賴于機器,是指在不同的機器或平臺上高級語言的程序本身不變,而通過編譯器編譯得到的目標代碼去適應不同的機器。從這個意義上來說,通過交叉匯編,一些匯編程序也可以獲得不同機器之間的可移植性,但這種途徑獲得的移植性遠遠不如高級語言來的方便和實用性大。

二、編譯與解釋

編譯是將源程序翻譯成可執行的目標代碼,翻譯與執行是分開的;而解釋是對源程序的翻譯與執行一次性完成,不生成可存儲的目標代碼。這只是表象,二者背后的最大區別是:對解釋執行而言,程序運行時的控制權在解釋器而不在用戶程序;對編譯執行而言,運行時的控制權在用戶程序。

解釋具有良好的動態特性和可移植性,比如在解釋執行時可以動態改變變量的類型、對程序進行修改以及在程序中插入良好的調試診斷信息等,而將解釋器移植到不同的系統上,則程序不用改動就可以在移植了解釋器的系統上運行。同時解釋器也有很大的缺點,比如執行效率低,占用空間大,因為不僅要給用戶程序分配空間,解釋器本身也占用了寶貴的系統資源。

編譯器是把源程序的每一條語句都編譯成機器語言,并保存成二進制文件,這樣運行時計算機可以直接以機器語言來運行此程序,速度很快;
而解釋器則是只在執行程序時,才一條一條的解釋成機器語言給計算機來執行,所以運行速度是不如編譯后的程序運行的快的.

  • 編輯:用編輯軟件(EDIT.EXE或記事本)形成源程序(.ASM),如:LX.ASM;
  • 匯編:用匯編程序(MASM.EXE)對源程序進行匯編,形成目標文件(.OBJ),格式如下:MASM LX.ASM;
  • 連接:用連接程序(LINK.EXE)對目標程序進行連接,形成可執行文件(.EXE),格式如下:LINK LX.OBJ;
  • 執行:如果結果在屏幕在顯示,則直接執行可執行文件。
  • 調試:用調試程序(DEBUG.EXE)對可執行文件進行調試,格式如下:DEBUG LX.EXE

1. 在具體計算機上實現一種語言,首先要確定的是表示該語言語義解釋的虛擬計算機,一個關鍵的問題是程序執行時的基本表示是實際計算機上的機器語言還是虛擬機的機器語言。這個問題決定了語言的實現。根據這個問題的回答,可以將程序設計語言劃分為兩大類:編譯型語言和解釋型語言。

2. 由編譯型語言編寫的源程序需要經過編譯、匯編和鏈接才能輸出目標代碼,然后機器執行目標代碼,得出運行結果,目標代碼由機器指令組成,一般不能獨立運行,因為源程序中可能使用了某些匯編程序不能解釋引用的庫函數,而庫函數代碼又不在源程序中,此時還需要鏈接程序完成外部引用和目標模塊調用的鏈接任務,最后輸出可執行代碼。C、C++、Fortran、Pascal、Ada都是編譯實現的。

3. 解釋型語言的實現中,翻譯器并不產生目標機器代碼,而是產生易于執行的中間代碼,這種中間代碼與機器代碼是不同的,中間代碼的解釋是由軟件支持的,不能直接使用硬件,軟件解釋器通常會導致執行效率較低。用解釋型語言編寫的程序是由另一個可以理解中間代碼的解釋程序執行的。與編譯程序不同的是,解釋程序的任務是逐一將源程序的語句解釋成可執行的機器指令,不需要將源程序翻譯成目標代碼后再執行。對于解釋型Basic語言,需要一個專門的解釋器解釋執行 Basic程序,每條語言只有在執行才被翻譯。這種解釋型語言每執行一次就翻譯一次,因而效率低下。

4. Java很特殊,Java程序也需要編譯,但是沒有直接編譯稱為機器語言,而是編譯稱為字節碼,然后在Java虛擬機上用解釋方式執行字節碼。Python 的也采用了類似Java的編譯模式,先將Python程序編譯成Python字節碼,然后由一個專門的Python字節碼解釋器負責解釋執行字節碼。

   (Java虛擬機對字節碼的執行相當于模擬一個cpu,而ruby1.8--在虛擬機還未出現前--是通過解釋成語法樹執行。)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • 在Mac OS上自行編譯安裝Apache服務器和PHP解釋器
  • 解釋執行和編譯執行的區別?
  • windows命令行中java和javac、javap使用詳解(java編譯命令)
  • java編譯時出現使用了未經檢查或不安全的操作解決方法
  • android apk反編譯到java源碼的實現方法
  • Eclipse不自動編譯java文件的終極解決方法
  • java教程之java程序編譯運行圖解(java程序運行)
  • Java 版的 Ruby 解釋器 JRuby 1.7.14 發布
  • JAVA設計模式之解釋器模式詳解
  • Java版的Ruby解釋器 JRuby簡介

標簽:桂林 宣城 南昌 鹽城 文山 黔南 東莞 景德鎮

巨人網絡通訊聲明:本文標題《編譯和解釋的區別是什么》,本文關鍵詞  編譯,和,解釋,的,區別,是什么,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《編譯和解釋的區別是什么》相關的同類信息!
  • 本頁收集關于編譯和解釋的區別是什么的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲人123区| 国产精品66部| 国产精品美女久久久久久久久 | 91精品久久久久久久99蜜桃| 在线视频国内自拍亚洲视频| 99久久婷婷国产| 色域天天综合网| 91免费小视频| 久久久久久一级片| 久久亚洲精品小早川怜子| 欧美一区二区三区在线看| 日韩一区二区在线看| 精品国产一区二区在线观看| 久久精品人人做| 国产精品色婷婷| 一区二区高清在线| 青青草原综合久久大伊人精品优势| 亚洲成人av一区| 国产综合久久久久影院| 国产精品1024| 91国产视频在线观看| 欧美理论电影在线| 这里只有精品视频在线观看| 欧美精品一区二区三| 中文字幕一区二区在线播放| 国产精品视频观看| 日本韩国欧美在线| 精品免费国产二区三区| 久久夜色精品一区| 国产精品视频一二三| 一区二区三区不卡视频在线观看 | 成人av电影免费观看| 91麻豆精品一区二区三区| 欧美高清激情brazzers| 中文欧美字幕免费| 日韩国产欧美在线播放| 成人激情免费视频| 日韩精品一区二区三区在线| **欧美大码日韩| 国产原创一区二区| 欧美亚一区二区| 日本一区二区三区四区| 亚洲超碰精品一区二区| 成人精品在线视频观看| 精品少妇一区二区三区在线播放| 国产精品一级片| 国产精品一区在线观看乱码| 欧美性大战久久久久久久蜜臀| 日韩美女主播在线视频一区二区三区| 国产精品久久久久一区| 免费看欧美女人艹b| 日本韩国一区二区三区视频| 国产人成一区二区三区影院| 奇米色一区二区| 在线观看欧美精品| 中文字幕一区二区三区色视频 | 色偷偷久久一区二区三区| 久久影院视频免费| 婷婷国产在线综合| 欧美视频一区二区三区| 亚洲黄色片在线观看| 波多野结衣的一区二区三区| 日本一区二区三区四区| 粉嫩蜜臀av国产精品网站| 久久久久国产免费免费| 韩国理伦片一区二区三区在线播放 | 日韩一区在线免费观看| 成人三级在线视频| 久久久久国产免费免费| 精品一区二区在线播放| 日韩免费在线观看| 精品一区二区三区的国产在线播放| 欧美精品在欧美一区二区少妇 | 91精品国产综合久久久蜜臀图片| 一区二区三区91| 在线视频观看一区| 亚洲制服丝袜av| 欧美日韩国产色站一区二区三区| 一区二区三区高清| 欧美高清视频www夜色资源网| 亚洲高清免费观看高清完整版在线观看 | 色久优优欧美色久优优| 亚洲综合在线五月| 欧美日韩国产综合一区二区三区| 天天影视涩香欲综合网| 91精品欧美综合在线观看最新| 亚洲第一福利视频在线| 日韩一区二区麻豆国产| 国产高清久久久久| 国产精品第五页| 555夜色666亚洲国产免| 久久精品国产99国产精品| 欧美国产日韩一二三区| 91官网在线免费观看| 日本中文一区二区三区| 国产校园另类小说区| 色爱区综合激月婷婷| 日韩高清不卡在线| 日本一区二区三区视频视频| 日本道精品一区二区三区| 奇米综合一区二区三区精品视频| 精品国内二区三区| 色综合欧美在线| 美美哒免费高清在线观看视频一区二区| 久久蜜桃av一区精品变态类天堂 | 97久久久精品综合88久久| 亚洲超碰97人人做人人爱| 久久免费看少妇高潮| 91蜜桃视频在线| 日韩精品乱码免费| 国产精品国产三级国产a| 欧美日韩在线播放三区四区| 国产老女人精品毛片久久| 综合色天天鬼久久鬼色| 日韩欧美一级在线播放| 色偷偷久久人人79超碰人人澡| 精品一区二区三区久久| 亚洲无线码一区二区三区| 久久只精品国产| 欧美性欧美巨大黑白大战| 国产.精品.日韩.另类.中文.在线.播放 | 欧美日韩精品久久久| 国产精品一二三| 亚洲国产精品久久不卡毛片| 久久久精品黄色| 欧美一三区三区四区免费在线看 | 宅男在线国产精品| 91亚洲国产成人精品一区二区三| 人人精品人人爱| 亚洲成人免费视| 亚洲精品中文在线影院| 国产无遮挡一区二区三区毛片日本| 欧美日韩大陆在线| 欧美日韩在线免费视频| 色综合欧美在线| 99久久综合99久久综合网站| 国产精品一区二区黑丝| 精品一区二区三区不卡| 久久99久久99精品免视看婷婷 | 国产亚洲欧洲一区高清在线观看| 欧美调教femdomvk| 91美女在线观看| 91小视频免费看| 成人av网站免费| 成人永久免费视频| 成人av电影观看| 91网址在线看| 色欧美片视频在线观看| 在线这里只有精品| 91免费视频观看| 日本二三区不卡| 欧美伊人久久久久久午夜久久久久| 成人动漫av在线| 91在线观看视频| 欧美影院精品一区| 欧美日韩一卡二卡三卡| 7777精品久久久大香线蕉| 欧美一区二区人人喊爽| 精品国产一区二区三区av性色| 亚洲精品一区二区三区影院| 国产日韩av一区二区| 国产精品麻豆99久久久久久| 中日韩av电影| 亚洲一区二区在线播放相泽| 一区二区三区精品在线| 免费观看在线色综合| 国产精品99久久久久久有的能看| 成人一二三区视频| 91九色最新地址| 欧美一区二区三区四区在线观看| 欧美mv和日韩mv的网站| 国产精品丝袜一区| 亚洲国产欧美在线| 韩国毛片一区二区三区| av不卡免费电影| 欧美日韩国产成人在线91| 337p日本欧洲亚洲大胆精品 | 精品日韩在线观看| 国产精品国产三级国产普通话三级| 最新日韩av在线| 麻豆极品一区二区三区| 成人性生交大片免费| 欧美色爱综合网| 国产目拍亚洲精品99久久精品| 亚洲精品美国一| 国产精品一区二区免费不卡| 91国产免费看| 中文字幕色av一区二区三区| 亚洲成人动漫在线观看| 成人综合在线观看| 日韩一级欧美一级| 亚洲精品国产成人久久av盗摄 | 韩日av一区二区| 欧美日韩情趣电影| 国产精品久久久久久久第一福利| 日本一不卡视频| 欧美中文字幕亚洲一区二区va在线 | 欧美一区二区网站| 艳妇臀荡乳欲伦亚洲一区| 成人手机在线视频|