編譯程式(compiler)和口譯譯員(interpreter)的區別

編譯器與直譯器...

編譯器與直譯器

當用高階語言編寫程式時,計算機將無法理解它。為了使它可用,你需要把它轉換成計算機能理解的東西。這就是編譯器和直譯器的作用所在,因為它們都執行相同的功能。編譯器和直譯器的主要區別在於它們執行程式碼的時間。有瞭直譯器,程式碼會立即執行,而直譯器會將直譯器的程式碼傳遞給計算機。相比之下,編譯器不執行程式碼。相反,它將完成的程式碼寫入磁碟。寫入磁碟的程式碼可以隨時執行。

直譯器和編譯器之間的主要區別產生了另一個。由於執行程式時需要直譯器,因此如果要在計算機中執行程式,則需要安裝直譯器。編譯器不是這樣的。一旦程式被編譯,您只需要編譯的程式,而不是編譯器或原始程式碼。

使用直譯器而不是編譯器的優點是能夠在執行不同作業系統的計算機上執行程式;既然你有合適的翻譯。當你編譯一個程式時,它只針對一個特定的作業系統,不會在其他系統上執行。要使它在另一個作業系統上執行,需要為該作業系統最佳化程式碼並再次編譯。

使用直譯器的缺點是增加了開銷。直譯器需要一些處理能力,每行程式碼都會在執行時被解釋。當您有一個已編譯的程式時,情況並非如此,因為作業系統可以直接讀取它並執行每個命令。解釋程式碼的額外步驟使解釋後的程式執行速度明顯慢於編譯後的程式碼。直譯器也不能利用特定於作業系統的最佳化來讓編譯後的程式更高效地執行。

編譯器和直譯器之間的選擇應該取決於您想要的是可移植性還是效能。

總結:

  1. 直譯器直接執行程式碼,而編譯器則不執行
  2. 當編譯器不可用時,直譯器需要在目標機器中可用
  3. 解釋程式將在多個平臺上執行,而編譯程式則不會
  4. 解釋程式的執行速度比編譯程式慢
  • 發表於 2021-06-24 08:19
  • 閱讀 ( 26 )
  • 分類:通訊

你可能感興趣的文章

語法錯誤(syntax error)和邏輯錯誤(logical error)的區別

...的語法來編寫程式。當出現語法錯誤時,稱為語法錯誤。編譯時發生語法錯誤。在執行時發生的錯誤稱為執行時錯誤。陣列越界、跳轉為零、訪問不可用的記憶體都是執行時錯誤的一些例子。在編寫程式時,需要遵循一系列步驟...

  • 發佈於 2020-10-19 09:24
  • 閲讀 ( 68 )

編譯時間(compile time)和執行時(runtime)的區別

關鍵區別-編譯時與執行時 大多數程式都是用高階程式語言編寫的。這些程式語言的語法與英語相似。高階語言很容易被人類理解,但計算機卻無法理解。因此,編寫的程式或原始碼應轉換成機器可理解的格式。它被稱為機器...

  • 發佈於 2020-10-19 10:25
  • 閲讀 ( 62 )

perl公司(perl)和python(python)的區別

...應轉換成機器可理解的格式。諸如C和C++的程式語言使用編譯程式將原始碼轉換成機器語言。在Perl中,程式首先被轉換成位元組碼,然後位元組碼被轉換成機器指令。因此,Perl語言與C語言和C++語言相比是比較慢的語言。 執行Perl...

  • 發佈於 2020-10-19 17:38
  • 閲讀 ( 48 )

紅寶石(ruby)和python(python)的區別

...器可讀的格式。因此,Ruby是一種解釋語言。Ruby不是一個編譯語言C或C++的快速。 Ruby中的方法與其他程式語言中的函式類似。方法包含一組要執行某項任務的語句。Ruby使用塊定義閉包。閉包具有從外部作用域讀取和寫入變數的許...

  • 發佈於 2020-10-19 17:41
  • 閲讀 ( 64 )

python(python)和c語言(c language)的區別

...Python命令列發出命令。由於程式碼是逐行讀取的,所以與編譯器語言相比,Python速度較慢。Python的一個主要優點是用於垃圾收集的自動垃圾收集器。對於程式設計師來說,編寫高效的程式碼比專注於記憶體管理更容易。Python很容...

  • 發佈於 2020-10-24 05:03
  • 閲讀 ( 62 )

口譯譯員(interpreter)和翻譯(translator)的區別

...和翻譯都是名詞。譯者是動詞“translate”的名詞形式,而interpreter是動詞“interpret”的名詞形式。口譯員和譯者最重要的區別之一就是口譯員翻譯口語單詞,而譯者翻譯書面單詞。 誰是翻譯? 《牛津英語詞典》說,譯者是“把...

  • 發佈於 2020-11-04 15:08
  • 閲讀 ( 45 )

翻譯(translate)和解釋(interpret)的區別

...本的技能水平來有效地處理任務。 翻譯(translate)和解釋(interpret)的區別 •翻譯人員必須能夠理解外語和自己的語言,以便用一種語言從另一種語言清楚地寫出文字或講話。翻譯人員通常把外文翻譯成他們的母語。 •口譯員必須...

  • 發佈於 2020-11-04 19:11
  • 閲讀 ( 64 )

為什麼有些程式語言比其他語言快?

... 編譯:您的里程數可能會有所不同 ...

  • 發佈於 2021-03-13 15:07
  • 閲讀 ( 48 )

如何編譯自己的linux核心

在安裝Gentoo的同時,編譯自己的Linux核心也是被認為非常古怪和技術性的事情之一。我們已經討論了一些您可能希望這樣做的原因。在我們引導您完成這些步驟之前,下面是一些重要概念的簡要概述。 ...

  • 發佈於 2021-03-15 10:33
  • 閲讀 ( 50 )

哪個linux shell最好?比較了5種常見的貝殼

... 然後編譯器將高階語言翻譯成二進位制檔案,就像可執行檔案一樣。這個二進位制檔案就是您執行以啟動所述應用程式的檔案。 ...

  • 發佈於 2021-03-30 18:45
  • 閲讀 ( 53 )
ankellll
ankellll

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦