ARM彙編和Gnu彙編的轉換



ARM ADS下的彙編碼移植到GCC for ARM編譯器時,有如下規則:


1, 註釋行以"@""/* ... */"代替";"



2, GETINCLUDE => .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,否則會導致主組譯器結束。



8, 象徵式定義加""


Entry => Entry:


AREA Word, CODE, READONLY ==> .text


AREA Block, DATA, READWRITE ==> .data


CODE32 ==> .arm


CODE16 ==> .thumb



9, MACRO ==> .macro


MEND ==> .endm





文章出處:http://www.diybl.com/course/6_system/linux/Linuxjs/200871/129550.html

創作者介紹
創作者 立你斯 的頭像
立你斯

立你斯學習記錄

立你斯 發表在 痞客邦 留言(0) 人氣()