微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > arm中的宏定义

arm中的宏定义

时间:11-11 来源:互联网 点击:
语法格式如下:

MACRO
[$ label] macroname{ $ parameter1, $ parameter,……}
其他指令
MEND
MACRO伪操作标识宏定义的开始,MEND标识宏定义的结束。用MACRO及MEND定义一段代码,称为宏定义体,这样在程序中就可以通过宏指令多次调用该代码段。
其中, $ label在宏指令被展开时,label会被替换成相应的符号,通常是一个标号。宏定义中的$label是一个可选参数,在一个符号前使用$表示程序被汇编时将使用相应的值来替代$后的符号。
macroname为所定义的宏的名称。
$parameter为宏指令的参数。当宏指令被展开时将被替换成相应的值,类似于函数中的形式参数,可以在宏定义时为参数指定相应的默认值。

例如:

定义宏如下:

MACRO

$label TestBranch$dest, $reg, $cc

$label

CMP $reg,#0

B$cc $dest

MEND

调用宏的过程如下:

testTestBranch Nonzero,r0, NE

Nonzero

............

程序汇编后,宏展开如下:

test

CMP R0, #0

BNE Nonzero

Nonzero

............

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top