⑴ 編譯程序和解釋程序都是什麼意思
1、編譯程序是把用高級程序設計語言或計算機匯編語言書寫的源程序,翻譯成等價的機器語言格式目標程序的翻譯程枯轎序,屬於採用生成性實現途徑實現的翻譯程序。編譯程序以高級程序設計語言書寫的源程序作為輸入,而沒頃肆以匯編語言或機器語言表示的目標程序作為輸出;編譯出的目標程序通常還要經歷運行階段,以便在運行程序的支持下運行,加工初始數據,算出所需的計算結果。
2、解釋程序是高級語言翻譯程序的一種,它將源語言書寫的源程序作為輸入,解釋一句後就提交計算機執行一句,並不形成目標程序。就像外語翻譯中的「口譯」一樣,說一句翻一句,不產生全文的翻譯文本。
(1)編譯翻譯解釋程序擴展閱讀:
編譯程序的實現演算法較為復雜。這是因為它所翻譯的語句與目標語言的指令不是一一對應關系,而是一多對應關系;同時也因為它要處理遞歸調用、動態存儲分配、多種數據類型,以及語句間的緊密依賴關系。但是,由於高級程序設計語言書寫的程序具有易讀、易乎遲移植和表達能力強等特點,編譯程序廣泛地用於翻譯規模較大、復雜性較高、且需要高效運行的高級語言書寫的源程序。
⑵ 請解釋翻譯程序和編譯程序及二者之間的關系。
解釋程序所謂解釋程序是高級語言翻譯程序的一種,它將源語言(如BASIC)書寫的源程序作為輸入,解釋一句後就提交計算機執行一句,並不形成標程序。就像外語翻譯中的「口譯」一樣,說一句翻一句,不產生全文的翻譯文本。這種工作方式非常適合於人通過終端設備與計算機會話,如在終端上打一條命令或語句,解釋程序就立即將此語句解釋成一條或幾條指令並提交硬體立即執行且將執行結果反映到終端,從終端把命令打入後,就能立即得到計算結果。這的確是很方便的,很適合於一些小型機的計算問題。但解釋程序執行速度很慢,例如源程序中出現循環,則解釋程序也重復地解釋並提交執行這一組語句,這就造成很大浪費。
編譯程序這是一類很重要的語言處理程序,它把高級語言(如FORTRAN、COBOL、Pascal、C等)源程序作為輸入,進行翻譯轉換,產生出機器語言的目標程序,然後再讓計算機去執行這個目標程序,得到計算結果。編譯程序工作時,先分析,後綜合,從而得到目標程序。所謂分析,是指詞法分析和語法分析;所謂綜合是指代碼優化,存儲分配和代碼生成。為了完成這些分析綜合任務,編譯程序採用對源程序進行多次掃描的辦法,每次掃描集中完成一項或幾項任務,也有一項任務分散到幾次掃描去完成的。下面舉一個四遍掃描的例子:第一遍掃描做詞法分析;第二遍掃描做語法分析;第三遍掃描做代碼優化和存儲分配;第四遍掃描做代碼生成。值得一提的是,大多數的編譯程序直接產生機器語言的目標代碼,形成可執行的目標文件,但也有的編譯程序則先產生匯編語言一級的符號代碼文件,然後再調用匯編程序進行翻譯加工處理,最後產生可執行的機器語言目標文件。在實際應用中,對於需要經常使用的有大量計算的大型題目,採用招待速度較快的編譯型的高級語言較好,雖然編譯過程本身較為復雜,但一旦形成目標文件,以後可多次使用。相反,對於小型題目或計算簡單不太費機時的題目,則多選用解釋型的會話式高級語言,如BASIC,這樣可以大大縮短編程及調試的時間
⑶ 高級語言翻譯程序的實現途徑有哪兩種
高級語言翻譯程序的實現途徑主要有兩種:編譯方式和解釋方式。
1. 編譯方式: 定義:編譯方式是將高級語言全部翻譯成機器指令之後,再將機器指令交予計算機執行。 過程:計算機專業人員事先編好一個編譯程序,構成一個編譯系統存放到計算機內。當把高級語言程序輸入到計算機內並運行程序之後,編譯系統就會把整個高級語言程序翻譯為目標代碼程序,然後執行這個目標代碼程序。 特點:整個過程類似於日常生活中的筆譯,先完成整個文本的翻譯,再執行翻譯後的文本。
2. 解釋方式: 定義:解釋方式是將高級語言逐句翻譯,翻譯一句,執行一句,不產生整個目標程序。 過程:計算機專業人員事先編好一個解釋程序,構成一個解釋系統存放到計算機內。當把高級語言程序輸入到計算機內並運行程序之後,解釋系統就會逐句對高級語言程序進行解釋和執行。 特點:整個過程類似於日常生活中的口譯,邊解釋邊執行,不產生完整的翻譯文本。
⑷ 編譯程序和解釋程序都是什麼意思
編譯程序是將源程序整體編譯成目標程序後,再一次性執行的工具;而解釋程序是一邊解釋源程序,一邊執行,不形成目標程序的工具。以下是兩者的具體區別:
執行方式:
執行效率:
使用場景:
類比理解:
⑸ 什麼是翻譯程序,編譯程序,解釋程序
翻譯程序是指將用某種語言編寫的程序轉換成另一種語言形式的程序的程序,如編譯程序和匯編程序等。
編譯程序是把用高級語言編寫的源程序轉換(加工)成與之等價的另一種用低級語言編寫的目標程序的翻譯程序。
解釋程序是解釋、執行高級語言源程序的程序。