編譯和運行的區(qū)別
計算機并不能直接地接受和執(zhí)行用高級語言編寫的源程序,源程序在輸入計算機時,通過"翻譯程序"翻譯成機器語言形式的目標程序,計算機才能識別和執(zhí)行。這種"翻譯"通常有兩種方式,即編譯方式和解釋方式。這兩種方式有什么區(qū)別呢?下面,學習啦小編告訴你答案。
1.編譯方式
編譯:程序運行時之前,將程序的把有代碼編譯為機器代碼,再運行這個程序。
編譯方式是指利用事先編好的一個稱為編譯程序的機器語言程序,作為系統(tǒng)軟件存放在計算機內,當用戶將高級語言編寫的源程序輸入計算機后,編譯程序便把源程序整個地翻譯成用機器語言表示的與之等價的目標程序,然后計算機再執(zhí)行該目標程序,以完成源程序要處理的運算并取得結果。
2.解釋方式
解釋:程序運行時,取一條指令,將其換化為機器指令, 再執(zhí)行這條機器指令。
解釋方式是指源程序進入計算機后,解釋程序邊掃描邊解釋,逐句輸入逐句翻譯,計算機一句句執(zhí)行,并不產(chǎn)生目標程序。如PASCAL、FORTRAN、COBOL等高級語言執(zhí)行編譯方式;BASIC語言則以執(zhí)行解釋方式為主;而PASCAL、C語言是能書寫編譯程序的高級程序設計語言。
3.編譯方式和解釋方式的區(qū)別
編譯程序、解釋程序是兩種語言的處理形式。
解釋程序(為高級服務)直接執(zhí)行源程序或源程序的內部形式,一般是讀一句源程序,翻譯一句,執(zhí)行一句,不產(chǎn)生目標代碼,如BASIC解釋程序。
編譯程序(為高級服務)是將高級語言書寫的源程序翻譯成與之等價的低級語言的目標程序。編譯程序與解釋程序最大的區(qū)別之一在于前者生成目標代碼,而后者不生成。
此外,前者產(chǎn)生的目標代碼的執(zhí)行速度比解釋程序的執(zhí)行速度要快;后者人機交互好,適于初學者使用。用COBOL、FORTRAN等語言編寫的程序考慮到執(zhí)行速度一般都是編譯執(zhí)行。
簡單的說,編譯就是全文翻譯,全部翻譯完才執(zhí)行。
解釋就相當于同聲翻譯,邊翻譯邊執(zhí)行。
編譯語言, 比如C或C++, 你編一段程序, 由Turbo C, VC, 或其它什么編譯器編譯, 變成了一個可執(zhí)行的程序文件 (在DOS或Windows下, 擴展名為 .EXE的), 以后運行這個編譯好的文件就成了. 因為已經(jīng)翻譯好了, 所以運行時就沒有現(xiàn)場解釋這一步, 當然快得多了. DOS或Windows下的 EXE 文件, 都是編譯或匯編出來的。
解釋語言, 比如以前的Basic, 源程序是文本的, 運行時有一個解釋程序, 它把源程序讀入, 一條一條地現(xiàn)翻譯現(xiàn)執(zhí)行. 這當然慢了, 因為它要現(xiàn)場解釋嘛. 現(xiàn)在網(wǎng)頁中的VBScript, JavaScript等也是如此。
編譯或解釋, 與語言種類其實無關. 過去一般說Basic是解釋的, 其實它也有編譯的; 而C, Pascal一般都說是編譯的, 但我確實見到過以解釋方式執(zhí)行的C和Pascal。
4.常用的運行符號
ipconfig--------查看本地ip
winver---------檢查Windows版本
wmimgmt.msc----打開windows管理體系結構(WMI)
wupdmgr--------windows更新程序
wscript--------windows腳本宿主設置
write----------寫字板
winmsd---------系統(tǒng)信息
wiaacmgr-------掃描儀和照相機向導
winchat--------XP自帶局域網(wǎng)聊天
mem.exe--------顯示內存使用情況
Msconfig.exe---系統(tǒng)配置實用程序
mplayer2-------簡易windows media player
mspaint--------畫圖板
mstsc----------遠程桌面連接
mplayer2-------媒體播放機
magnify--------放大鏡實用程序
mmc------------打開控制臺