翻譯程式
翻譯程式、翻譯器或程式語言處理器是一種系統程式,它將電腦程式語言編寫的電腦語言轉換為另一種電腦語言[1],主要包括編譯程式和解釋程式,組譯程式也被認為是翻譯程式。
翻譯是先用轉換程式將高一機器上的程式整體的轉換成在低一級機器上可執行的等效程式,然後再在低一級機器上實現的技術。
解釋是在低一級機器上用他的一串語句或指令來仿真高一級機器上的一條語句或指令的功能,其中包括進階和人類可讀的電腦語言(如C++和Java)、中階語言(如Java 位元組碼)、低階語言(如組合語言和機器碼)之間的翻譯,以及不同計算平台上類似級別的語言之間的翻譯,以及從上述任何一個到另一個。
用高階語言編寫的程式稱為源程式或者原始碼,翻譯後的形式被稱為目標程式或者目的碼。
大多數翻譯程式是將高階語言編寫的程式翻譯為機器語言形式的可執行程式。但是也有些翻譯程式將源程式翻譯成其他高階語言或者位元組碼等中間形式。
該術語還用於同一程式的軟體實現和硬體實現(ASIC 微晶片)之間的轉換器,以及從微晶片的軟體描述到構建它所需的邏輯閘。
不同類型的翻譯器
[編輯]3 種不同類型的翻譯器通常如下:
編譯器
[編輯]編譯器是用於將高階程式語言轉換為低階程式語言的翻譯器。它在一個對談中轉換整個程式並報告轉換後檢測到的錯誤。編譯器需要時間來完成其工作,因為它將進階代碼一次全部轉換為低階代碼,然後將其儲存到主記憶體中。編譯器依賴於處理器和平台。它已通過以下替代名稱進行處理:特殊編譯器、交叉編譯器和源到源編譯器。
直譯器
[編輯]直譯器類似於編譯器,因為它是用於將高階程式語言轉換為低階程式語言的翻譯器。不同之處在於它一次將程式轉換為一行代碼,並在檢測到錯誤時報告錯誤,同時還進行轉換。直譯器比編譯器更快,因為它在讀取代碼時立即執行代碼。它通常用作軟體開發的除錯工具,因為它一次可以執行一行代碼。直譯器也比編譯器更可攜式,因為它獨立於處理器,您可以在不同的硬體架構之間工作 .
組譯器
[編輯]組譯器是用於將組合語言翻譯成機器語言的翻譯器。它與組合語言的編譯器具有相同的功能,但其工作方式類似於直譯器。組合語言很難理解,因為它是一種低階程式語言。組譯器將諸如組合語言之類的低階語言翻譯成諸如機器碼之類的更低階語言。
參考文獻
[編輯]- ^ What are compilers, translators, interpreters, and assemblers?. www.microcontrollertips.com. [2022-08-09]. (原始內容存檔於2019-07-19).
這是一篇與電腦相關的小作品。您可以透過編輯或修訂擴充其內容。 |