青石路 发表于 2013-10-16 14:10:39

请求大神帮忙,汇编

我想请问,dx-ax压栈后储存在哪里?压栈后弹出又放在哪里呢?是默认的吗?

黑洞yyh 发表于 2013-10-16 14:32:07

哥们,你没搞明白栈的含义,这就跟一个箱子一样,push dx,push ax 就是将dx和ax的值放到这箱子中,这箱子是咱们在内存中开辟的一个内存空间,只不过这空间是满足栈的属性而已,即先进后出属性,出栈后,比如 pop ax ,那么原本在栈顶的数据就被放到了ax中,再pop dx 取下一个单元的数据到dx中,

随风听雨雪 发表于 2013-10-16 21:50:49

多看两遍书,慢慢看到后面就会明白的,这样对你说不明白

福禄娃娃 发表于 2013-10-16 22:57:56

压栈后数据放在栈中,栈顶由SS:SP指出,栈的增长方向是由大到小的,由高地址到低地址。
当执行push的时候,第一步 SP = SP - 2 第二步 数据放入SS:SP处。
出栈后,数据放在POP指定的单元中,可以是寄存器,也可以是内存单元。当执行pop的时候,第一步先把SS:SP处指向的数据弹到寄存器或内存单元中,第二步 SP = SP + 2

要没时间了 发表于 2013-12-2 21:06:23

你是不是想要这样的回答?
页: [1]
查看完整版本: 请求大神帮忙,汇编