汇编语言宏定义时为什么经常将某个寄存器入栈?
ADD_MACMACROVAR1,VAR2PUSHAXMOVAX,VAR1ADDAX,VAR2MOVBX,AX;我想问下这里的ax跟下一行出栈的ax的值是不是不一样?PO...
ADD_MAC MACRO VAR1,VAR2
PUSH AX
MOV AX,VAR1
ADD AX,VAR2
MOV BX,AX ;我想问下这里的ax跟下一行出栈的ax的值是不是不一样?
POP AX ;
ENDM
DSEG SEGMENT
NUM DW ?
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG
START: ADD_MAC
MOV NUM,BX
CSEG ENDS
END START 展开
PUSH AX
MOV AX,VAR1
ADD AX,VAR2
MOV BX,AX ;我想问下这里的ax跟下一行出栈的ax的值是不是不一样?
POP AX ;
ENDM
DSEG SEGMENT
NUM DW ?
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG
START: ADD_MAC
MOV NUM,BX
CSEG ENDS
END START 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询