導航:首頁 > 源碼編譯 > 編譯原理張晶是哪的人

編譯原理張晶是哪的人

發布時間:2025-07-23 07:44:10

1. 什麼是目標代碼

目標代碼是指源代碼經過編譯程序產生的能被CPU直接識別的二進制代碼。
目標代碼的形式
目標代碼生成是以中間代碼作為輸入,將其轉換成特定機器的機器語言或匯編語言作為輸出。在此以四元式序列作為它的加工對象,輸出目標代碼的形式有三種:具有絕對地址的機器語言程序,具有相對地址的機器碼程序和匯編指令程序。

具有絕對地址的機器語言程序在存儲空間中有固定的存儲位置,一旦產生此種形式的目標代碼之後,便可立即執行,因此這種形式最為迅速有效,但它並不靈活,不適合大型程序。
具有相對地址的機器語言程序由若干個目標模塊組成,各個模塊中都包含目標程序中的一部分代碼,可將它們裝人到存儲空間的任何位置,然後由連接裝配程序將它們連接在一起之後執行。顯然,連接裝配程序增加了開銷,但這種形式有較大的靈活性,所以為許多編譯程序所採用。
目標代碼生成程序可以產生匯編語言形式的目標代碼,這種形式在實現上要比前兩種形式容易。當然,這種形式的目標代碼還需經匯編後才能成為可執行代碼。

目標代碼的生成
目標代碼生成是編譯程序的最後一個工作階段,其任務是把經優化處理之後的中間代碼變換成特定機器上的機器語言程序或匯編語言程序,實現最終的翻譯工作。由於目標語言依賴於硬體系統,因而如何充分利用現有的寄存器以節省訪問內存的時間,合理地選擇執行速度快的指令,生成盡可能短且有效的目標代碼是這個階段考慮的主要問題。

如果代碼生成程序以四元式形式的中間代碼序列作為輸入,在其生成目標代碼時,可假定每個四元式中的運算符及運算對象的數據類型均已知道,所需的全部類型轉換操作均已在中間代碼中得到體現。此外,如果出現在程序中的全部符號名運行時所需的存儲空間均已得到分配,它們所在的數據區編號及相對地址已分別填人符號表各相應登記項欄中。所以在四元式中,僅出現符號名在符號表中登記項的序號。
參考文獻
龍馬工作室編著.第8章 CSS+Div常見用法 Dreamweaver CS5從新手到高手.人民郵電出版社,2011.02.
張晶主編.第11章 目標代碼生成 編譯原理.哈爾濱工程大學出版社,2011.08.
王麗芳,張靜,李富萍等編著.第三章 程序設計語言和方法 計算機科學導論.清華大學出版社,2012.01.

閱讀全文

與編譯原理張晶是哪的人相關的資料

熱點內容
網吧伺服器有什麼用 瀏覽:597
粵嵌單片機小游戲 瀏覽:221
怎麼登陸svn本地伺服器地址 瀏覽:38
oracle編譯存儲過程命令 瀏覽:124
pdf文件取詞 瀏覽:251
程序員下載網站 瀏覽:72
伺服器打補丁有什麼危害 瀏覽:374
天津網關伺服器雲主機 瀏覽:741
adaptbb怎麼連安卓 瀏覽:686
程序員是怎麼連網路的 瀏覽:886
命令與征服將軍遊民 瀏覽:451
it歌曲文件夾怎麼打開 瀏覽:802
電腦版考蟲app如何下載 瀏覽:436
最近有什麼安卓機皇發布 瀏覽:13
python比一大的偶數集合 瀏覽:991
opengl游戲pdf 瀏覽:568
編譯時顯示沒有編譯工具與文件擴展名相關聯 瀏覽:132
公司如何搭建自己的伺服器 瀏覽:670
阿里雲伺服器安保費用 瀏覽:404
用python2還是python3 瀏覽:921