(1)定义宏
宏名 MACRO [形参1, 形参2, ……]
宏的定义体
ENDM
MACRO和ENDM是二个必须成对出现的关键字,它们分别表示宏定义的开始和结束;
MACRO和ENDM之间的部分是宏的定义体,它是由指令、伪指令或引用其它宏所组成的程序片段,是宏所包含的具体内容;
“宏名”是由程序员指定的一个合法的标识符,它代表该宏;
宏名可以与指令助忆符、伪指令名相同。在这种情况下,宏指令优先,而同名的指令或伪指令都失效;
在ENDM的前面不要再写一次宏名,这与段或子程序定义的结束方式有所不同;
在宏定义的首部可以列举若干个形式参数,每个参数之间要用逗号分隔。
(2)取消宏定义伪指令
伪指令PURGE的一般格式如下:
PURGE 宏名1, 宏名2, ……
(3)停止宏扩展伪指令
伪指令EXITM的一般格式如下:
EXITM
(4)其他在宏里面注意的
在宏定义中,如果形式参数与其它字符连接在一起,或形式参数出现在字符串之中,那么,就必须使用连接运算符(&)。
字符串整体传递运算符是一对尖括号<>,用它括起来的内容将作为一个字符串来进行形式参数的整体替换
在引用宏时,如果实参中含有特殊字符,而又要该特殊字符当作普通字符来出来,那么,就必须在该特殊字符前加上字符转义运算符“!”。
在引用宏时,使用计算表达式运算符“%”表示把其后面表达式的结果当作实参进行替换,而不是该表达式的整个式子。
(5)重复汇编伪指令
a、伪指令REPT的作用是把一组语句重复指定的次数,该重复次数由伪指令后面的数值表达式来确定。其一般使用格式如下:
REPT 数值表达式
重复的语句组
ENDM
b、伪指令IRP的作用是用每个参数创建一组语句,其重复次数由伪指令后面参数表中参数的个数来确定。其一般使用格式如下:
IRP 形式参数, <实参1, 实参2, ……, 实参n>
重复的语句组
ENDM
c、伪指令IRPC的作用与IRP相似,其实参表是一个字符串,并对字符串中的每个字符创建一组语句,所以,其重复次数是由该字符串中的字符数来确定。其一般使用格式如下:
IRPC 形式参数, 字符串
重复的语句组
ENDM
posted on 2007-07-20 21:28
merlinfang 阅读(3963)
评论(2) 编辑 收藏 引用 所属分类:
汇编语言