程式與編譯程式執行策略的區別是什麼

2021-03-04 08:54:46 字數 3282 閱讀 1542

1樓:雲南新華電腦學校

你好,很高興能為你解答,看到請採納,謝謝!

編譯執行 是把源程式編譯成 目標碼後 再執行目標碼。例如,c語言程式,必須給出完整程式,編譯器,通過幾次掃瞄,翻譯,編排,鏈結,變成 exe 檔案 執行。編譯執行,程式執行時間短,效率高。

解釋執行,並不把整個程式 變成目標碼,而是按順序,讀一句,解釋一句,執行一句,所以,沒給完整程式,它就可以執行了。例如,瀏覽器處理網頁,網頁程式,每下來一句,就可以解釋執行一句,不用等整個網頁下來後再處理。

計算機中:解釋程式與編譯程式:的相同點與不同點是什麼

2樓:匿名使用者

編譯程式、解釋程式均是計算機語言處理程式。

其區別主要為:

解釋程式直接執行源程式或源程式的內部形式,一般是讀一句源程式,翻譯一句,執行一句,不產生目標**,如basic解釋程式。編譯程式是將高階語言書寫的源程式翻譯成與之等價的低階語言的目標程式。編譯程式與解釋程式最大的區別之一在於前者生成目標**,而後者不生成;此外,前者產生的目標**的執行速度比解釋程式的執行速度要快;後者人機互動好,適於初學者使用。

編譯程式和解釋程式有何區別?

3樓:之何勿思

編譯程式能生成目標程式,而解釋程式不能。

補充:1、編譯程式是整體編譯完了,再一次性執行。

2、而解釋程式是一邊解釋,一邊執行。 解釋一句後就提交計算機執行一句,並不形成目標程式。就像外語翻譯中的「口譯」一樣,說一句翻一句,不產生全文的翻譯文字。

3、編譯器是把源程式的每一條語句都編譯成機器語言,並儲存成二進位制檔案,這樣執行時計算機可以直接以機器語言來執行此程式,速度很快。

4、而直譯器則是只在執行程式時,才一條一條的解釋成機器語言給計算機來執行,所以執行速度是不如編譯後的程式執行的快的。這是因為計算機不能直接認識並執行我們寫的語句,它只能認識機器語言(是二進位制的形式)

4樓:貿富貴班香

說一句翻一句。就像外語翻譯中的「口譯」一樣。

而解釋程式是一邊解釋,並不形成目標程式,再一次性執行。

解釋一句後就提交計算機執行一句,一邊執行編譯程式是整體編譯完了,不產生全文的翻譯文字

5樓:冀秀英永裳

計算機並不能直接地接受和執行用高階語言編寫的源程式,源程式在輸入計算機時,通過"翻譯程式"翻譯成機器語言形式的目標程式,計算機才能識別和執行。這種"翻譯"通常有兩種方式,即編譯方式和解釋方式。編譯方式是指利用事先編好的乙個稱為編譯程式的機器語言程式,作為系統軟體存放在計算機內,當使用者將高階語言編寫的源程式輸入計算機後,編譯程式便把源程式整個地翻譯成用機器語言表示的與之等價的目標程式,然後計算機再執行該目標程式,以完成源程式要處理的運算並取得結果。

解釋方式是指源程式進入計算機後,解釋程式邊掃瞄邊解釋,逐句輸入逐句翻譯,計算機一句句執行,並不產生目標程式。如pascal、fortran、cobol等高階語言執行編譯方式;basic語言則以執行解釋方式為主;而pascal、c語言是能書寫編譯程式的高階程式語言。

編譯程式、解釋程式、匯程式設計序是3種語言處理程式。其區別主要為:匯程式設計序(為低階服務)是將組合語言書寫的源程式翻譯成由機器指令和其他資訊組成的目標程式。

解釋程式(為高階服務)直接執行源程式或源程式的內部形式,一般是讀一句源程式,翻譯一句,執行一句,不產生目標**,如basic解釋程式。編譯程式(為高階服務)是將高階語言書寫的源程式翻譯成與之等價的低階語言的目標程式。編譯程式與解釋程式最大的區別之一在於前者生成目標**,而後者不生成;此外,前者產生的目標**的執行速度比解釋程式的執行速度要快;後者人機互動好,適於初學者使用。

用cobol、fortran等語言編寫的程式考慮到執行速度一般都是編譯執行。

6樓:匿名使用者

編譯程式就是把用高階語言編寫的面向過程的源程式翻譯成目標程式的語言處理程式。簡單說就是翻譯成計算機能識別的2進製。

解釋程式由乙個總控程式和若干個執行子程式組成。解釋程式的工作過程如下:首先,由總控程式執行初始準備工作,置工作初態;然後,從源程式中取乙個語句s,並進行語法檢查。

如果語法有錯,則輸出錯誤資訊;否則,根據所確定的語句型別轉去執行相應的執行子程式。返回後檢查解釋工作是否完成,如果未完成,則繼續解釋下一語句;否則,進行必要的善後處理工作。

解釋執行方式與編譯執行方式是不同的,其根本區別在於:編譯方式把源程式的執行過程嚴格地分成兩大步:編譯和執行。

即先把源程式全部翻譯成目標**,然後再執行此目標**,獲執行結果。解釋方式則不然。它是按照源程式中語句的動態順序,直接地逐句進行分析解釋,並立即執行。

所以,解釋程式是這樣一種程式,它能夠按照源程式中語句的動態順序,逐句地分析解釋並執行,直至源程式結束。

與編譯程式一樣,解釋程式也與源語言及計算機有關。同一臺計算機上不同語言的解釋程式是不同的;同一種語言在不同的計算機上的解釋程式也可能不同。同一種高階語言的源程式,它可以採用解釋執行方式,也可以採用編譯執行方式。

例如,basic語言有解釋basic和編譯basic之分。前者執行速度慢;後者執行速度快。編譯程式和解釋程式都屬於系統程式。

所以都是在做處理。

7樓:匿名使用者

編譯程式將源程式翻譯成目標程式,而解釋程式是逐條解釋執行源程式語句

8樓:益堂允玉韻

編譯程式是整體編譯完了,再一次性執行。

而解釋程式是一邊解釋,一邊執行。

解釋一句後就提交計算機執行一句,並不形成目標程式。就像外語翻譯中的「口譯」一樣,說一句翻一句,不產生全文的翻譯文字。

9樓:市苗伍昂然

首先,我們編寫的bai

程式現在一du般都是用

高階語言

編寫的zhi,如c/c++

以及面dao向物件的visual

系列;我們編內寫的程式

計算機是不能容直接執行的,因為計算機只能執行二進位制程式.因此要經過乙個將我們寫的

**翻譯成二進位制的過程.

完成這個過程一般有兩種

方式:1.解釋方式

2.編譯方式

1.解釋方式是每執行一句就翻譯一句即邊執行邊解釋.這種方式每次執行程式時都要重新翻譯整個程式,

效率較低,執行速度慢,如qb,不過現在幾乎沒有人再用這種低效的方式的

設計語言

了.2.

編譯方式

是在程式第一次執行前就先執乙個全部的翻譯過程,然後每次執行的時候就可以直接執行這個翻譯好的

二進位制檔案

了,這樣的程式只需要翻譯一次,效率明顯要高很多,現在的大多數語言都是這種方式,網頁中的asp.***

採用的也是這種方式.

編譯執行和解釋執行的區別是什麼,解釋和編譯有什麼區別

一 與計算機的交流方式不同 1 解釋程式不產生目標 它逐條地取出源程式中的語句,邊解釋,邊執行 直譯器把源 檔案邊解釋成機器語言邊交給cpu執行。2 編譯是將源程式翻譯成可執行的目標 執行可執行程式檔案,翻譯與執行是分開的。二 執行環境不同 1 解釋程式可跨平台使用,因為直譯器已經做好了對不同平台的...

為什麼在c 上寫好且執行的程式在ACM編譯器上卻編譯錯誤

如果真想做acm,就不要用vc6.0,vc對標準c 支援很差。用dev c 正賽windows系統都沒有,要學會用emacs netbeans eclipse 若出現編譯錯誤,各oj上都會有提示,告訴你哪行錯了。常見vc正確,但標準c 錯誤的 1.void main 純粹m yy gcc和iso c...

電腦喜歡黑屏特別是執行比較大的程式的時候

估計是電壓不穩定吧?你說的黑屏是黑屏關機還是顯示器黑屏?如果是直接關機 那麼有可能是電源不穩定,裡面的電阻燒了 如果是顯示器黑屏 檢查一下是不是現實電源接觸不良和連線有問題!建議你拿電腦拿去修理部測一下電壓看看是不是主機板爆漿了或者電源壞了!這種細緻的維修一般還是需要專業修電腦的地方才能找出原因!不...