ADD AX,Y
MOV Z,AX
POP AX
ENDM
形成加法宏定义ADDITION.同样,宏调用
DEFMAC SUBTRACT,SUB
形成减法的宏定义.当然在形成这些宏定义后,就可以使用宏调用
ADDITION VAR1,VAR2,VAR3
而展开成:
+ PUSH AX
+ MOV AX,VAR1
+ ADD AX,VAR2
+ MOV VAR3,AX
+ POP AX
10.这里再介绍一个宏定义的变元中使用的伪操作%,它的格式是:
%expression
汇编
程序把跟在%之后的表达式的值转换成当前基数下的数,在展开期间,用这个数来取代哑元.
宏定义:
MSG MACRO COUNT,STRING
MSG&COUNT DB STRING
ENDM
ERRMSG MACRO TEXT
CNTR=CNTR+1
MSG % CNTR,TEXT
ENDM
宏调用:
CNTR=0
ERRMSG ''SYNTAX ERROR''
ERRMSG ''INVALID OPERAND''
宏展开:
+ MSG1 DB ''SYNTAX ERROR''
+ MSG2 DB ''INVALID OPERAND''
二、重复汇编
有时汇编语言程序需要连续地重复完全相同的或者几乎完全相同的一组代码,这时可使用重复汇编。
1.重复伪操作
其格式为:
REPT expression
&n