第七章高级汇编语言技术 志调用形式:无变元 Computer Architecture Group at PKU 举例 示例1无变元 SAVER MACRO 程序中使用: PUSH AX., PU SH BX ,SaVER PUSH CX 申由 ENDM 19994
第七章第一章高级汇编语言技术 基础知识
第七章高级汇编语言技术 宏的调用形式:变元是操作码 Computer Architectare Group at PKU FOO MACRO P1 P2 P3 MOV AXP1 P2 P3 ENDM 调用 FOO BXINCAX 展开 MOV.BX INC AX 1999
第七章第一章高级汇编语言技术 基础知识
第七章高级汇编语言技术 变元是操作码的部分 Computer Architectire Group at PKU LEAP MACRO COND.LAB J& COND LAB ENDM 宏调用 LEAP C, THERE LEAP F,HERE 宏展开 JC THERE JF HERE 变元是操作码的一部分,必须用‘&符号作为分隔符
第七章第一章高级汇编语言技术 基础知识 变元是操作码的一部分,必须用‘&’符号作为分隔符
第七章高级汇编语言技术 &是一个操作符,它在宏定义体中可以作为哑元的前缀,展开时可以把&前后两个符 号合并而形成一个符号,这个符号可以是操作码、操作数或是一个字符串。下面两个 例子进一步具体说明这个问题。 宏定义: MACRo Pl JMP TA&-Pl ENDM 宏调用 FO WORD VAR 宏展开 JMP TAWORD_VAR 在这里,如果宏定义写为 MACRO Pl JMP TAPI 则在展开时,汇编程序把TAP1看作一个独立的标号,并不把TAP1中的P1作为哑元看待这 样就不能得到预期的结果
第七章第一章高级汇编语言技术 基础知识 &是一个操作符,它在宏定义体中可以作为哑元的前缀,展开时可以把&前后两个符 号合并而形成一个符号,这个符号可以是操作码、操作数或是一个字符串。下面两个 例子进一步具体说明这个问题
第七章高级汇编语言技术 变元是ASC串的情况 宏定义 MSGGEN MACRO LAB, NUM, XYZ LAB& NUM DB " HELLO MR &XYZ ENDM 宏调用: MSGGEN MSG, l, TAYLOR 宏展开 MSG1 DB「 HELLO MR TAYLOR
第七章第一章高级汇编语言技术 基础知识