Board logo

标题: ARM指令集-宏处理伪指令 [打印本页]

作者: look_w    时间: 2017-9-24 15:50     标题: ARM指令集-宏处理伪指令

3.5.7  宏处理伪指令1、MACRO和ENDM
该伪指令的格式为:
宏名 MACRO [,参数][ ,参数]……
指令序列
ENDM
MACRO伪指令用于定义一个宏,引用宏时必须使用定义的宏名,并可向宏中传递参数。ENDM伪指令用于结束宏定义。
如:
errmac MACRO  text
BL abort
DATA
DC8 text,0
ENDM
包含在MACROENDM之间的指令序列称为宏定义体。在宏定义体的第一行应声明宏的原型(包括宏名和所需的参数),然后就可以在汇编程序中通过宏名来调用该指令序列。在源程序被编译时,汇编器将宏调用展开,用宏定义中的指令序列代替程序中的宏调用,并将实际参数值传递给宏定义中的形式参数。
2、REPT和ENDR
该伪指令的格式为:
REPT 表达式
指令序列
ENDR
伪指令用于指示汇编器将指定的指令序列进行重复汇编,重复次数由表达式的值确定。如果表达式的值为0,则不进行任何操作。
3、REPTC和ENDR
该伪指令的格式为:
REPTC 符号,替换字符串
指令序列
ENDR
该伪指令用于在宏展开时用替换字符串中的单个字符逐次替换符号。
4、REPTI和ENDR
该伪指令的格式为:
REPTI 符号,替换字符串[,替换字符串]……
指令序列
ENDR
该伪指令用于在宏展开时用整个替换字符串替换符号。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0