高级汇编语言技术
|
源代码网整理以下一、宏汇编 源代码网推荐 MOV AX,P1 源代码网推荐 P2 P3 源代码网推荐 ENDM 源代码网推荐宏调用: 源代码网推荐 FOO WORD_VAR,INC,AX 源代码网推荐宏展开: 源代码网推荐 MOV AX,WORD_VAR 源代码网推荐 INC AX 源代码网推荐3.变元可以是操作码的一部分,但在宏定义体中必须用&作为分隔符. 源代码网推荐宏定义: 源代码网推荐 LEAP MACRO COND,LAB 源代码网推荐 J&COND LAB 源代码网推荐 ENDM 源代码网推荐宏调用: 源代码网推荐 ... 源代码网推荐 LEAP Z,THERE 源代码网推荐 ... 源代码网推荐 LEAP NZ,HERE 源代码网推荐 ... 源代码网推荐宏展开: 源代码网推荐 ... 源代码网推荐 JZ THERE 源代码网推荐 ... 源代码网推荐 JNZ HERE 源代码网推荐 ... 源代码网推荐4.&是一个操作符,它在宏定义体中可以作为哑元的前缀,展开时可以把&前后个符号合并而形成一个符号,这个符号可以是操作码,操作数或是一个字符串 源代码网推荐宏定义: 源代码网推荐 PO MACRO P1 源代码网推荐 JMP TA&P1 源代码网推荐 ENDM 源代码网推荐宏调用: 源代码网推荐 FO WORD_VAR 源代码网推荐宏展开: 源代码网推荐 JMP TAWORD_VAR 源代码网推荐5.实元是ASCII串的情况 源代码网推荐宏定义: 源代码网推荐 MSGGEN MACRO LAB,NUM,XYZ 源代码网推荐 LAB&NUM DB "HELLO MR.&XYZ" 源代码网推荐 ENDM 源代码网推荐宏调用: 源代码网推荐 MSGGEN MSG,1,TAYLOR 源代码网推荐宏展开: 源代码网推荐 MSG1 DB "HELLO MR.TAYLOR" 源代码网推荐6.宏指令名可以与指令助记符或伪操作名相同,在这种情况下,宏指令的优先级最高,而同名的指令或伪操作就失效了.伪操作PURGE可以用来在适当的时候取消宏定义,以便恢复指令的原始含义. 源代码网推荐宏定义: 源代码网推荐 ADD MACRO OPR1,OPR2,RESULT 源代码网推荐 ... 源代码网推荐 ENDM 源代码网推荐宏调用: 源代码网推荐 ... 源代码网推荐 ADD XX,YY,ZZ 源代码网推荐 PURGE ADD 源代码网推荐 ... 源代码网推荐在宏调用后,用PURGE伪操作取消定义,以便恢复ADD指令的原始含义,在PURGE ADD后面所用的ADD指令,则服从机器指令的定义. 源代码网推荐 PURGE伪操作可同时取消多个宏操作,此时各宏指令之间用逗号隔开. 源代码网推荐7.LOCAL伪操作的使用.宏定义体内允许使用标号,如: 源代码网推荐宏定义: 源代码网推荐 ABSOL MACRO OPER 源代码网推荐 CMP OPER,O 源代码网推荐 JGE NEXT 源代码网推荐 NEG OPER 源代码网推荐 NEXT: 源代码网推荐 ENDM 源代码网推荐如果程序中多次调用该宏定义时,展开后会出现标号的多重定义.为此系统提供了LOCAL伪操作,其格式是 源代码网推荐 源代码网供稿. |
