匯編語言程序開發(fā)工具_第1頁
匯編語言程序開發(fā)工具_第2頁
匯編語言程序開發(fā)工具_第3頁
匯編語言程序開發(fā)工具_第4頁
匯編語言程序開發(fā)工具_第5頁
已閱讀5頁,還剩72頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、2022-3-22DSP原理及應用1本章主要介紹代碼生成工具,包括本章主要介紹代碼生成工具,包括C54x軟軟件開發(fā)流程、匯編語言程序的編寫、編輯、匯編件開發(fā)流程、匯編語言程序的編寫、編輯、匯編和鏈接過程、和鏈接過程、COFF段的一般概念、匯編器和鏈段的一般概念、匯編器和鏈接器處理段的方法以及程序的重定位等。接器處理段的方法以及程序的重定位等。 2022-3-22DSP原理及應用24.4.1 1 TMS320C54x軟件開發(fā)過程軟件開發(fā)過程 4.24.2 匯編語言程序的編輯、匯編和鏈接過程匯編語言程序的編輯、匯編和鏈接過程 4.34.3 COFF的一般概念的一般概念 4.44.4 源程序的匯編源

2、程序的匯編4.54.5 鏈接器的使用鏈接器的使用2022-3-22DSP原理及應用3目的目的: 產(chǎn)生一個可以由產(chǎn)生一個可以由C54x目標系統(tǒng)執(zhí)行的模塊。目標系統(tǒng)執(zhí)行的模塊。 開發(fā)流程開發(fā)流程: 用用C/C+語言或匯編語言編寫源文件,經(jīng)語言或匯編語言編寫源文件,經(jīng)C編譯器、編譯器、匯編器生成匯編器生成COFF格式的目標文件,再用鏈接器進行鏈接,格式的目標文件,再用鏈接器進行鏈接,生成在生成在C54x上可執(zhí)行的目標代碼,然后利用調(diào)試工具上可執(zhí)行的目標代碼,然后利用調(diào)試工具對可執(zhí)行的目標代碼進行仿真和調(diào)試。對可執(zhí)行的目標代碼進行仿真和調(diào)試。 當調(diào)試完成后,通過當調(diào)試完成后,通過Hex代碼轉(zhuǎn)換工具,將

3、調(diào)試后的代碼轉(zhuǎn)換工具,將調(diào)試后的可執(zhí)行目標代碼轉(zhuǎn)換成可執(zhí)行目標代碼轉(zhuǎn)換成EPROM編程器能接受的代碼,并編程器能接受的代碼,并將該代碼固化到將該代碼固化到EPROM中或加載到用戶的應用系統(tǒng)中,中或加載到用戶的應用系統(tǒng)中,以便以便DSP目標系統(tǒng)脫離計算機單獨運行。目標系統(tǒng)脫離計算機單獨運行。 2022-3-22DSP原理及應用4 C C源文件源文件C C編譯器編譯器匯編匯編源文件源文件匯編器匯編器匯編匯編源文件源文件COFFCOFF目標目標文件文件鏈接器鏈接器可執(zhí)行的可執(zhí)行的COFFCOFF文件文件宏宏源文件源文件存檔存檔器器宏庫宏庫存檔器存檔器目標目標文件庫文件庫建庫工具建庫工具運行時運行時支

4、持庫支持庫EPROMEPROM編程器編程器交叉引用交叉引用列表器列表器調(diào)試工具調(diào)試工具TMS320C54xTMS320C54x絕對地址絕對地址列表器列表器HEXHEX代碼代碼轉(zhuǎn)換工具轉(zhuǎn)換工具2022-3-22DSP原理及應用5C54xC54x的開發(fā)工具的開發(fā)工具 TITI公司提供的公司提供的DSPDSP開發(fā)環(huán)境和工具主要包括以開發(fā)環(huán)境和工具主要包括以下三個部分:下三個部分: 代碼生成工具代碼生成工具 代碼調(diào)試工具代碼調(diào)試工具 實時操作系統(tǒng)實時操作系統(tǒng)2022-3-22DSP原理及應用6C54xC54x的開發(fā)工具的開發(fā)工具(1)(1)代碼生成工具:代碼生成工具: C C編譯器編譯器:用來將用來將

5、C/C+C/C+語言源程序自動編譯語言源程序自動編譯為為C54xC54x的匯編語言源程序。的匯編語言源程序。 匯編器匯編器:用來將匯編語言源文件匯編成機器用來將匯編語言源文件匯編成機器語言語言COFFCOFF目標文件。目標文件。 鏈接器鏈接器:將匯編生成的、可重新定位的將匯編生成的、可重新定位的COFFCOFF目標模塊組合成一個可執(zhí)行的目標模塊組合成一個可執(zhí)行的COFFCOFF目標模塊。目標模塊。 2022-3-22DSP原理及應用7C54xC54x的開發(fā)工具的開發(fā)工具(2)(2)代碼調(diào)試工具:代碼調(diào)試工具: 軟件仿真器:軟件仿真器:是一種模擬是一種模擬DSPDSP芯片各種功能并芯片各種功能并

6、在非實時條件下進行軟件調(diào)試的調(diào)試工具,它不需在非實時條件下進行軟件調(diào)試的調(diào)試工具,它不需目標硬件支持,只需在計算機上運行。目標硬件支持,只需在計算機上運行。 可擴展的開發(fā)系統(tǒng)仿真器可擴展的開發(fā)系統(tǒng)仿真器( (XDS510)XDS510):可用來可用來進行系統(tǒng)級的集成調(diào)試,是進行進行系統(tǒng)級的集成調(diào)試,是進行DSPDSP芯片軟硬件開發(fā)芯片軟硬件開發(fā)的最佳工具。的最佳工具。 評價模塊評價模塊EVMEVM板:板:是一種低成本的開發(fā)板,可是一種低成本的開發(fā)板,可進行進行DSPDSP芯片評價、性能評估和有限的系統(tǒng)調(diào)試。芯片評價、性能評估和有限的系統(tǒng)調(diào)試。 2022-3-22DSP原理及應用82022-3-

7、22DSP原理及應用9.asm源文件源文件.obj目標文件目標文件.out輸出文件輸出文件. cmd鏈接命鏈接命令文件令文件. lst列表文件列表文件. map存儲器存儲器映像文件映像文件- o- m- l2022-3-22DSP原理及應用102022-3-22DSP原理及應用112022-3-22DSP原理及應用122022-3-22DSP原理及應用132022-3-22DSP原理及應用14目標文件目標文件目標存儲器目標存儲器.bss.data.textRAME2PROMROM2022-3-22DSP原理及應用152022-3-22DSP原理及應用162022-3-22DSP原理及應用172

8、022-3-22DSP原理及應用182022-3-22DSP原理及應用192022-3-22DSP原理及應用20 2022-3-22DSP原理及應用21 2022-3-22DSP原理及應用222022-3-22DSP原理及應用232022-3-22DSP原理及應用242022-3-22DSP原理及應用25鏈接器可對多個目標文件進行鏈接。若鏈接文件中鏈接器可對多個目標文件進行鏈接。若鏈接文件中不使用不使用MEMORYMEMORY和和SECTIONSSECTIONS命令,則為默認方式。命令,則為默認方式。 每個目標文件都有每個目標文件都有. .texttext,.data.data、. .bssb

9、ss段和命名段段和命名段。若采用默認鏈接,鏈接器將對多個目標文件中的各個。若采用默認鏈接,鏈接器將對多個目標文件中的各個段進行組合,形成各自的對應段,并將各個段配置到所段進行組合,形成各自的對應段,并將各個段配置到所指定的存儲器中,形成可執(zhí)行的目標模塊。指定的存儲器中,形成可執(zhí)行的目標模塊。 在默認的方式下,鏈接器將從存儲器的在默認的方式下,鏈接器將從存儲器的00800080h h開始開始,對組合后的各段進行存儲器配置。,對組合后的各段進行存儲器配置。2022-3-22DSP原理及應用26File1.obj.text1.data1.bss1table_1 (初始化的命名段初始化的命名段)u_v

10、ars1 (未初始化的命名段未初始化的命名段)File2.obj.text2.data2.bss2table_2 (初始化的命名段初始化的命名段)u_vars2 (未初始化的命名段未初始化的命名段)FFT(初始化的命名段初始化的命名段)程序存儲器程序存儲器數(shù)據(jù)存儲器數(shù)據(jù)存儲器2022-3-22DSP原理及應用272022-3-22DSP原理及應用282022-3-22DSP原理及應用292022-3-22DSP原理及應用30! + -2022-3-22DSP原理及應用312022-3-22DSP原理及應用322022-3-22DSP原理及應用332022-3-22DSP原理及應用342022-

11、3-22DSP原理及應用352022-3-22DSP原理及應用362022-3-22DSP原理及應用372022-3-22DSP原理及應用38宏的使用分以下宏的使用分以下3 3個步驟:個步驟: 定義宏定義宏 在調(diào)用宏時,必須首先定義宏;在調(diào)用宏時,必須首先定義宏; 調(diào)用宏調(diào)用宏 在定義宏之后在定義宏之后, ,可在源程序中調(diào)用宏;可在源程序中調(diào)用宏; 擴展宏擴展宏 在源程序調(diào)用宏指令時,匯編器將對宏指在源程序調(diào)用宏指令時,匯編器將對宏指令進行擴展。令進行擴展。2022-3-22DSP原理及應用392022-3-22DSP原理及應用40macname .macro parameter 1,para

12、meter n 宏程序語句或宏偽指令宏程序語句或宏偽指令 .mexit.endm宏程序名稱,必須將名稱放在源程序標號域。宏程序名稱,必須將名稱放在源程序標號域。用來說明該語句為宏定義的第一行偽指令用來說明該語句為宏定義的第一行偽指令, ,必須放在必須放在 助記符操作碼區(qū)域助記符操作碼區(qū)域。為任選的替代參數(shù),作為宏指令的操作數(shù)。為任選的替代參數(shù),作為宏指令的操作數(shù)。每次宏調(diào)用時要執(zhí)行的指令或匯編命令每次宏調(diào)用時要執(zhí)行的指令或匯編命令用于控制宏指令展開的命令。用于控制宏指令展開的命令。相當于一條跳到相當于一條跳到.endm.endm語句。語句。結(jié)束宏定義。結(jié)束宏定義。2022-3-22DSP原理及

13、應用41標號標號任選項任選項宏指令名宏指令名位于操作碼區(qū)位于操作碼區(qū)2022-3-22DSP原理及應用42若源程序中調(diào)用宏指令,則匯編時就將對宏指令若源程序中調(diào)用宏指令,則匯編時就將對宏指令進行擴展。進行擴展。 擴展時匯編器先將變量傳遞給宏參數(shù),按宏定義擴展時匯編器先將變量傳遞給宏參數(shù),按宏定義取代宏調(diào)用語句,然后再對源代碼進行匯編。取代宏調(diào)用語句,然后再對源代碼進行匯編。 在默認的情況下,擴展宏將出現(xiàn)在清單文件中在默認的情況下,擴展宏將出現(xiàn)在清單文件中,若若不需要擴展宏出現(xiàn)在清單文件中,則可通過偽指令不需要擴展宏出現(xiàn)在清單文件中,則可通過偽指令. .mnolist來實現(xiàn)。來實現(xiàn)。2022-3

14、-22DSP原理及應用432022-3-22DSP原理及應用442022-3-22DSP原理及應用45 宏指令和子程序都可以被多次調(diào)用,但是把子宏指令和子程序都可以被多次調(diào)用,但是把子程序匯編成目標代碼的過程只進行一次,而在用到宏程序匯編成目標代碼的過程只進行一次,而在用到宏指令的每個地方都要對宏指令中的語句逐條地進行匯指令的每個地方都要對宏指令中的語句逐條地進行匯編。編。 在調(diào)用前,由于子程序不使用參數(shù),故子程序在調(diào)用前,由于子程序不使用參數(shù),故子程序所需要的寄存器等都必須事先設(shè)置好;而對于宏指令所需要的寄存器等都必須事先設(shè)置好;而對于宏指令來說,由于可以使用參數(shù),調(diào)用時只要直接代入?yún)?shù)來說

15、,由于可以使用參數(shù),調(diào)用時只要直接代入?yún)?shù)就行了。就行了。 2022-3-22DSP原理及應用46在鏈接過程中,鏈接器將各個目標文件合并,并在鏈接過程中,鏈接器將各個目標文件合并,并完成以下工作:完成以下工作: 將各個段配置到目標系統(tǒng)的存儲器。將各個段配置到目標系統(tǒng)的存儲器。 對各個符號和段進行重新定位,并給它們指對各個符號和段進行重新定位,并給它們指 定一個最終的地址。定一個最終的地址。 解決輸入文件之間未定義的外部引用。解決輸入文件之間未定義的外部引用。 2022-3-22DSP原理及應用472022-3-22DSP原理及應用482022-3-22DSP原理及應用492022-3-22DS

16、P原理及應用502022-3-22DSP原理及應用512022-3-22DSP原理及應用522022-3-22DSP原理及應用532022-3-22DSP原理及應用542022-3-22DSP原理及應用552022-3-22DSP原理及應用562022-3-22DSP原理及應用572022-3-22DSP原理及應用582022-3-22DSP原理及應用59 2022-3-22DSP原理及應用602022-3-22DSP原理及應用61兩個輸入文件兩個輸入文件鏈接命令選項鏈接命令選項指令字指令字頁面名稱頁面名稱區(qū)間名稱區(qū)間名稱起始地址起始地址區(qū)間長度區(qū)間長度2022-3-22DSP原理及應用622

17、022-3-22DSP原理及應用632022-3-22DSP原理及應用642022-3-22DSP原理及應用65兩個輸入文件兩個輸入文件鏈接命令選項鏈接命令選項指令字指令字輸輸出出段段說說明明語語句句2022-3-22DSP原理及應用66輸出段輸出段加載地址加載地址 運行地址運行地址.textROMRAM 800h.conROM.bssRAM.vecROM FF80.dataRAM 16位邊界位邊界2022-3-22DSP原理及應用67輸出段輸出段加載地址加載地址 運行地址運行地址.textROMRAM 800h.conROM.bssRAM.vecROM FF80.dataRAM 16位邊界位邊界 ROM RAM0000h h.text.c

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論