基于GNU Binutils的匯編器與連接器的研究與開(kāi)發(fā)
發(fā)布時(shí)間:2024-12-01 08:17
設(shè)計(jì)新型微處理器的同時(shí)必須要為其開(kāi)發(fā)配套的編譯工具鏈,而匯編器和連接器是編譯工具鏈中的重要部分。本課題的任務(wù)是為L(zhǎng)X-1164微處理器設(shè)計(jì)和開(kāi)發(fā)相應(yīng)的匯編器和連接器。 通過(guò)分析,筆者確定了移植的開(kāi)發(fā)方案,即通過(guò)移植GNU Binutils中的匯編器GAS和連接器GLD,使其支持LX-1164微處理器。 本文首先介紹了LX-1164微處理器的特點(diǎn)、目標(biāo)文件格式ELF的相關(guān)內(nèi)容,分析了BFD庫(kù)的原理及其符號(hào)處理過(guò)程。然后,分析了匯編器GAS和連接器GLD中重要的數(shù)據(jù)結(jié)構(gòu)及各自的運(yùn)行機(jī)制。最后,結(jié)合LX-1164微處理器的特點(diǎn),詳細(xì)描述了BFD庫(kù)、匯編器GAS和連接器GLD的移植步驟。
【文章頁(yè)數(shù)】:63 頁(yè)
【學(xué)位級(jí)別】:碩士
【部分圖文】:
本文編號(hào):4013819
【文章頁(yè)數(shù)】:63 頁(yè)
【學(xué)位級(jí)別】:碩士
【部分圖文】:
圖6-1文件glm.o的ELF頭部信息
R9,R5STIDBR5,R10,R6SHLHWR15,$0X2,R7STIDBR18,R10,R7L3:ADDHWR15,$0X1,R15JUMPL2L1:RETURN該文件實(shí)現(xiàn)了選擇排序的的算法,供glm.s文件調(diào)用。6.2匯編結(jié)果分析使用LX-1164匯....
圖6-2文件glm.o的節(jié)頭部信息
圖6-2文件glm.o的節(jié)頭部信息圖6-3文件glm.o的重定位和符號(hào)信息從結(jié)果中,我們可以看到,由于函數(shù)SelectSort在glm.s沒(méi)有被定義,在匯編過(guò)程中無(wú)法解析該函數(shù)名,從而在符號(hào)表中的SelectSort是未定義的,需要在連接時(shí)
圖6-3文件glm.o的重定位和符號(hào)信息從結(jié)果中,我們可以看到,由于函數(shù)SelectSort在glm.s沒(méi)有被定義,在匯編過(guò)
49圖6-3文件glm.o的重定位和符號(hào)信息從結(jié)果中,我們可以看到,由于函數(shù)SelectSort在glm.s沒(méi)有被定義,在匯編過(guò)程中無(wú)法解析該函數(shù)名,從而在符號(hào)表中的SelectSort是未定義的,需要在連接時(shí)處理。在glm.o中有兩個(gè)重定位項(xiàng):N和S....
圖6-4文件sort.o的ELF頭部信息
本文編號(hào):4013819
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/4013819.html
最近更新
教材專著