请求大神帮忙,汇编
我想请问,dx-ax压栈后储存在哪里?压栈后弹出又放在哪里呢?是默认的吗? 哥们,你没搞明白栈的含义,这就跟一个箱子一样,push dx,push ax 就是将dx和ax的值放到这箱子中,这箱子是咱们在内存中开辟的一个内存空间,只不过这空间是满足栈的属性而已,即先进后出属性,出栈后,比如 pop ax ,那么原本在栈顶的数据就被放到了ax中,再pop dx 取下一个单元的数据到dx中, 多看两遍书,慢慢看到后面就会明白的,这样对你说不明白压栈后数据放在栈中,栈顶由SS:SP指出,栈的增长方向是由大到小的,由高地址到低地址。
当执行push的时候,第一步 SP = SP - 2 第二步 数据放入SS:SP处。
出栈后,数据放在POP指定的单元中,可以是寄存器,也可以是内存单元。当执行pop的时候,第一步先把SS:SP处指向的数据弹到寄存器或内存单元中,第二步 SP = SP + 2 你是不是想要这样的回答?
页:
[1]