編譯和執行的區別

  計算機並不能直接地接受和執行用高階語言編寫的源程式,源程式在輸入計算機時,通過"翻譯程式"翻譯成機器語言形式的目標程式,計算機才能識別和執行。這種"翻譯"通常有兩種方式,即編譯方式和解釋方式。這兩種方式有什麼區別呢?下面,小編告訴你答案。

  1.編譯方式

  編譯:程式執行時之前,將程式的把有程式碼編譯為機器程式碼,再執行這個程式。

  編譯方式是指利用事先編好的一個稱為編譯程式的機器語言程式,作為系統軟體存放在計算機內,當用戶將高階語言編寫的源程式輸入計算機後,編譯程式便把源程式整個地翻譯成用機器語言表示的與之等價的目標程式,然後計算機再執行該目標程式,以完成源程式要處理的運算並取得結果。

  2.解釋方式

  解釋:程式執行時,取一條指令,將其換化為機器指令, 再執行這條機器指令。

  解釋方式是指源程式進入計算機後,解釋程式邊掃描邊解釋,逐句輸入逐句翻譯,計算機一句句執行,並不產生目標程式。如PASCAL、FORTRAN、COBOL等高階語言執行編譯方式;BASIC語言則以執行解釋方式為主;而PASCAL、C語言是能書寫編譯程式的高階程式設計語言。

  3.編譯方式和解釋方式的區別

  編譯程式、解釋程式是兩種語言的處理形式。

  解釋程式***為高階服務***直接執行源程式或源程式的內部形式,一般是讀一句源程式,翻譯一句,執行一句,不產生目的碼,如BASIC解釋程式。

  編譯程式***為高階服務***是將高階語言書寫的源程式翻譯成與之等價的低階語言的目標程式。編譯程式與解釋程式最大的區別之一在於前者生成目的碼,而後者不生成。

  此外,前者產生的目的碼的執行速度比解釋程式的執行速度要快;後者人機互動好,適於初學者使用。用COBOL、FORTRAN等語言編寫的程式考慮到執行速度一般都是編譯執行。

  簡單的說,編譯就是全文翻譯,全部翻譯完才執行。

  解釋就相當於同聲翻譯,邊翻譯邊執行。

  編譯語言, 比如C或C++, 你編一段程式, 由Turbo C, VC, 或其它什麼編譯器編譯, 變成了一個可執行的程式檔案 ***在DOS或Windows下, 副檔名為 .EXE的***, 以後執行這個編譯好的檔案就成了. 因為已經翻譯好了, 所以執行時就沒有現場解釋這一步, 當然快得多了. DOS或Windows下的 EXE 檔案, 都是編譯或彙編出來的。

  解釋語言, 比如以前的Basic, 源程式是文字的, 執行時有一個解釋程式, 它把源程式讀入, 一條一條地現翻譯現執行. 這當然慢了, 因為它要現場解釋嘛. 現在網頁中的VBScript, JavaScript等也是如此。

  編譯或解釋, 與語言種類其實無關. 過去一般說Basic是解釋的, 其實它也有編譯的; 而C, Pascal一般都說是編譯的, 但我確實見到過以解釋方式執行的C和Pascal。

  4.常用的執行符號

  ipconfig--------檢視本地ip

  winver---------檢查Windows版本

  wmimgmt.msc----開啟windows管理體系結構***WMI***

  wupdmgr--------windows更新程式

  wscript--------windows指令碼宿主設定

  write----------寫字板

  winmsd---------系統資訊

  wiaacmgr-------掃描器和照相機嚮導

  winchat--------XP自帶區域網聊天

  mem.exe--------顯示記憶體使用情況

  Msconfig.exe---系統配置實用程式

  mplayer2-------簡易windows media player

  mspaint--------畫圖板

  mstsc----------遠端桌面連線

  mplayer2-------媒體播放機

  magnify--------放大鏡實用程式

  mmc------------開啟控制檯