【虎彡】关于嵌套的宏展开~呼叫大叔大哥~迷糊
时间:2010-12-15
来源:互联网
DEFMAC MACRO MACNAM,OPERATOR
MACNAM MACRO X,Y,Z
PUSH AX
MOV AX,X
OPERATOR AX,Y
POP Z,AX
POP AX
ENDM
ENDM
帮我展开下!我一见嵌套、多层循环之类的脑袋就疼~
看到条件汇编IF了 头更疼了~~~
作者: znxllyuan 发布时间: 2010-12-15
[color=#FF0000][/color]这是用来定义“三个数进行某种操作的宏”的一个宏。如宏调用
DEFMAC Q1,ADD
则编译时就被展开为
1 Q1 MACRO X,Y,Z
1 PUSH AX
1 MOV AX,X
1 ADD AX,Y
1 MOV Z,AX ;这里应该是mov
1 POP AX
1 ENDM
而
DEFMAC Q2,SUB
则被展开为
1 Q2 MACRO X,Y,Z
1 PUSH AX
1 MOV AX,X
1 SUB AX,Y
1 MOV Z,AX
1 POP AX
1 ENDM
这不就相当于定义出两个宏Q1和Q2吗?
程序中再出现调用
Q1 SI,DI,BX
则被展开为
2 PUSH AX
2 MOV AX,SI
2 ADD AX,DI
2 MOV BX,AX
2 POP AX
DEFMAC Q1,ADD
则编译时就被展开为
1 Q1 MACRO X,Y,Z
1 PUSH AX
1 MOV AX,X
1 ADD AX,Y
1 MOV Z,AX ;这里应该是mov
1 POP AX
1 ENDM
而
DEFMAC Q2,SUB
则被展开为
1 Q2 MACRO X,Y,Z
1 PUSH AX
1 MOV AX,X
1 SUB AX,Y
1 MOV Z,AX
1 POP AX
1 ENDM
这不就相当于定义出两个宏Q1和Q2吗?
程序中再出现调用
Q1 SI,DI,BX
则被展开为
2 PUSH AX
2 MOV AX,SI
2 ADD AX,DI
2 MOV BX,AX
2 POP AX
作者: shzhfu 发布时间: 2010-12-15
引用 1 楼 shzhfu 的回复:
[color=#FF0000][/color]这是用来定义“三个数进行某种操作的宏”的一个宏。如宏调用
DEFMAC Q1,ADD
则编译时就被展开为
1 Q1 MACRO X,Y,Z
1 PUSH AX
1 MOV AX,X
1 ADD AX,Y
1 MOV Z,AX ;这里应该是mov
1 POP AX
1 ENDM
而
DEFMAC Q2,SUB
则被展开为
1……
[color=#FF0000][/color]这是用来定义“三个数进行某种操作的宏”的一个宏。如宏调用
DEFMAC Q1,ADD
则编译时就被展开为
1 Q1 MACRO X,Y,Z
1 PUSH AX
1 MOV AX,X
1 ADD AX,Y
1 MOV Z,AX ;这里应该是mov
1 POP AX
1 ENDM
而
DEFMAC Q2,SUB
则被展开为
1……
如果 DEFMAC Q1,ADD
再调用 QI VAR1,VAR2,VAR3
才有意义?
作者: znxllyuan 发布时间: 2010-12-15
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28