将
ARM
ADS
下的汇编码移植到
GCC
for ARM
编译器时,有如下规则:
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
,否则会导致主汇编程序结束。
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
ARM汇编和Gnu汇编的转换
最新推荐文章于 2025-01-01 14:51:50 发布
