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

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
