導航:首頁 > 源碼編譯 > 邊編譯邊執行還是編譯執行

邊編譯邊執行還是編譯執行

發布時間:2023-03-20 09:58:47

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

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文件)。

Ⅱ C語言既可以編譯執行又可以解釋執行嗎 編譯執行怎麼解釋 解釋執行又怎麼解釋

C 語言程序僅可以解釋執行。

解釋程序是將源程序(如BASIC)作為輸入,解釋一句後就提交計算機執行一句,並不形成目標程序。編譯程序是把高級語言(如FORTRAN、COBOL、Pascal、C等)源程序作為輸入,進行翻譯轉換,產生出機器語言的目標程序,然後再讓計算機執行這個目標程序,得到計算結果。

相對於編譯性語言,其優點是可移植性好,只要有解釋器環境,程序就可以在不同的操作系統上運行。

缺點是代碼需要有專門的解釋器,在程序運行時,除要給用戶程序本身分配內存空間外,解釋器也佔用系統資源,所以其運行速度較慢。另外,也很難達到像C、C++那樣操作系統底層操作的目的。握拍返

解釋型語言常用於,一是對運行速度要求不高(如一些網頁腳本等)的場合,二是對跨平台(賀賀操作系統的兼容性)有要求的場合。

(2)邊編譯邊執行還是編譯執行擴展閱讀

1、Python和Java語言,專門有一個解釋器能夠直接執行Python程序,每個語段飢句都是執行的時候才翻譯。

2、Python代碼在運行前,會先編譯成中間代碼,每個 .py 文件將被換轉成pyc 文件,pyc 就是一種位元組碼文件,它是與平台無關的中間代碼。不管放在 Windows 還是 Linux 平台都可以執行,運行時將由虛擬機逐行把位元組碼翻譯成目標代碼。

Ⅲ 編譯後的程序比邊解釋邊執行的程序的運行速度快嗎為什麼

程序的編譯是指將人可以理解的代碼(如C的源代碼)段編譯成機器指令碼(二級制指令),也就是處理堆棧、處理器、匯流排的指令,交由計算機自動執行。解釋型語言是在需要執行時臨時編譯運行,執行時多了編譯的過程,自然就要慢的多了。
比較特殊的是java,javac命令編譯的結果雖然也是二進制文件,但實際也不是機器指令,而是優化後的代碼,最後的執行是通過java虛擬機再次編譯後執行。所以效率介於編譯型和解釋型之間。
目前java的執行速度已經有了大幅度的提升,但要想趕上或超越C 或者匯編,理論上是不現實的。

Ⅳ 有沒有大佬用通俗一點的語言解釋下什麼是解釋執行和編譯執行啊啊

把源代碼一行行地翻譯成位元組碼,邊翻譯邊執行就叫解釋執行;把源代碼一次性翻譯成位元組碼或機器碼等二進制文件,執行時直接運行二進制文件,不需要源代碼就叫編譯執行。

Ⅳ 計算機高級語言裡面的編譯型和解釋型有什麼區別

答案選b啊
沒有匯編這個過程,匯編是一種語言,不是過程
高級程序語言有兩種:先編譯後執行,和邊邊解釋邊執行(當然還有半解釋半編譯的),無非就是解釋或邊以
比如:basic就是解釋的,兒c/c++
都是編譯的

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

就像外語翻譯中的「口譯」一樣,說一句翻一句,不產生全文的翻譯文本。這種工作方式非常適合於人通過終端設備與計算機會話,如在終端上打一條命令或語句,解釋程序就立即將此語句解釋成一條或幾條指令並提交硬體立即執行且將執行結果反映到終端,從終端把命令打入後,就能立即得到計算結果。這的確是很方便的,很適合於一些小型機的計算問題。但解釋程序執行速度很慢,例如源程序中出現循環,則解釋程序也重復地解釋並提交執行這一組語句,這就造成很大浪費。
B、編譯程序
這是一類很重要的語言處理程序,它把高級語言(如FORTRAN、COBOL、Pascal、C等)源程序作為輸入,進行翻譯轉換,產生出機器語言的目標程序,然後再讓計算機去執行這個目標程序,得到計算結果。
編譯程序工作時,先分析,後綜合,從而得到目標程序。所謂分析,是指詞法分析和語法分析;所謂綜合是指代碼優化,存儲分配和代碼生成。為了完成這些分析綜合任務,編譯程序採用對源程序進行多次掃描的辦法,每次掃描集中完成一項或幾項任務,也有一項任務分散到幾次掃描去完成的。下面舉一個四遍掃描的例子:第一遍掃描做詞法分析;第二遍掃描做語法分析;第三遍掃描做代碼優化和存儲分配;第四遍掃描做代碼生成。
值得一提的是,大多數的編譯程序直接產生機器語言的目標代碼,形成可執行的目標文件,但也有的編譯程序則先產生匯編語言一級的符號代碼文件,然後再調用匯編程序進行翻譯加工處理,最後產生可執行的機器語言目標文件。
在實際應用中,對於需要經常使用的有大量計算的大型題目,採用招待速度較快的編譯型的高級語言較好,雖然編譯過程本身較為復雜,但一旦形成目標文件,以後可多次使用。相反,對於小型題目或計算簡單不太費機時的題目,則多選用解釋型的會話式高級語言,如BASIC,這樣可以大大縮短編程及調試的時
編譯執行是讀完所有的語句再執行,解釋執行是邊讀語句邊執行,後者花的時間顯然要多,對效率會產生影響,但卻能無形中健壯程序

Ⅶ 在程序設計中,編譯與解釋的區別是什麼

首先,我們編寫的程序現在一般都是用高級語言編寫的,如c/c++
以及面向對象的visual
系列;我們編寫的程序計算機是不能直接執行的,因為計算機只能執行二進製程序.因此要經過一個將我們寫的代碼翻譯成二進制的過程.
完成這個過程一般有兩種方式:1.解釋方式
2.
編譯方式
1.解釋方式是每執行一句就翻譯一句即邊執行邊解釋.這種方式每次運行程序時都要重新翻譯整個程序,效率較低,執行速度慢,如QB,不過現在幾乎沒有人再用這種低效的方式的設計語言了.
2.編譯方式是在程序第一次執行前就先執一個全部的翻譯過程,然後每次執行的時候就可以直接執行這個翻譯好的二進制文件了,這樣的程序只需要翻譯一次,效率明顯要高很多,現在的大多數語言都是這種方式,網頁中的asp.net
採用的也是這種方式.

Ⅷ Java語言中編譯執行和解釋執行的區別

編譯執行和解釋執行是不同語言之間的特性,所有的java都是編譯執行的。 如果不是編譯執行,其實已經完全不用java的編譯器。那麼只是一個使用java語法的另一種語言而已。
編譯執行是指把代碼先編譯成機器碼。然後按順序運行,如果編譯中有任何異常,都無法繼續運行。java的編譯就是把java轉換成class。
而解釋執行則是運行到哪一行代碼就執行哪一行代碼。如果其他代碼有錯誤但沒有運行到,一般不會影響。
比較起來,編譯執行速度要快的多。而解釋執行則在於比較靈活。可以動態修改。甚至可以在代碼運行到指定語句之前,修改該代碼。

Ⅸ 程序執行的兩種方式是什麼分別是如何進行的,各有什麼特點

解釋執行和編譯執行
編譯方式是指利用事先編好的一個稱為編譯程序的機器語言程序,作為系統軟體存放在計算機內,當用戶將高級語言編寫的源程序輸入計算機後,編譯程序便把源程序整個地翻譯成用機器語言表示的與之等價的目標程序,然後計算機再執行該目標程序,以完成源程序要處理的運算並取得結果。
解釋方式是指源程序進入計算機後,解釋程序邊掃描邊解釋,逐句輸入逐句翻譯,計算機一句句執行,並不產生目標程序。
前者過程簡單,後者執行速度快

php代碼是否能夠進行編譯後再執行呀

php無需編譯,可以邊寫邊運行。調試比較方便。需要安裝web伺服器和php。必須通過訪問自己創建的站點執行。

apache+php可以。不過你如果用的是windows而且已經安裝了IIS的話直接安裝php並做好相關設置就可以了。

閱讀全文

與邊編譯邊執行還是編譯執行相關的資料

熱點內容
民國修真 瀏覽:386
php數組作為參數傳遞 瀏覽:991
運行命令查ip 瀏覽:200
漲奶吃奶小說 瀏覽:338
股票十大戰法主圖指標源碼 瀏覽:702
查看網路的命令是什麼意思 瀏覽:585
《鬼吹燈》1-8全本txt 瀏覽:336
python繪圖兩個圓代碼 瀏覽:605
python中end的用法 瀏覽:682
大概率30選股源碼 瀏覽:206
阿里雲伺服器如何鏡像 瀏覽:161
能看的 瀏覽:403
京東伺服器為什麼會崩 瀏覽:834
php超類 瀏覽:822
怎麼在美團APP上請假 瀏覽:100
午夜激情影院 瀏覽:242
歐拉app怎麼下訂單 瀏覽:422
肉文有聲小說 瀏覽:955
求個看片的網址 瀏覽:547
pythonsin函數圖像 瀏覽:329