新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ARM匯編和Gnu匯編的轉(zhuǎn)換

ARM匯編和Gnu匯編的轉(zhuǎn)換

作者: 時間:2016-11-20 來源:網(wǎng)絡(luò) 收藏
將ARM ADS下的匯編碼移植到GCC for ARM編譯器時,有如下規(guī)則:
1,注釋行以"@"或"/* ... */"代替";"

2, GET或INCLUDE => .INCLUDE
如:get option.a => .include "option.a"

3, EQU => .equ
TCLK2 EQU PB25 => .equ TCLK2, PB25
SETA ==> .equ
SETL ==> .equ
BUSWIDTH SETA 16 => .equ BUSWIDTH, 16

4, EXPORT => .global
IMPORT => .extern
GBLL => .global
GBLA => .global

5, DCD => .long

6, IF :DEF: => .IFDEF
ELSE => .ELSE
ENDIF => .ENDIF
:OR: => |
:SHL: => <<

7, END =>.end
NOTE:在被include的頭文件中,如"option.a"中,不再需要.end,否則會導(dǎo)致主匯編程序結(jié)束。

8,符號定義加":"號
Entry => Entry:
AREA Word, CODE, READONLY ==> .text
AREA Block, DATA, READWRITE ==> .data
CODE32 ==> .arm
CODE16 ==> .thumb

9, MACRO ==> .macro
MEND ==> .endm

Reference:
http://blog.21ic.com/user1/3858/archives/2007/43113.html


關(guān)鍵詞: ARM匯編Gnu匯編轉(zhuǎn)

評論


技術(shù)專區(qū)

關(guān)閉