当前位置: 代码迷 >> 汇编语言 >> 进栈出栈,该怎么解决
  详细解决方案

进栈出栈,该怎么解决

热度:2699   发布时间:2013-02-26 00:00:00.0
进栈出栈
在王爽的《汇编语言程序设计》一书的58页中,有关于进栈出栈的阐述我发现有点问题。代码如下:
http://hi.csdn.net/attachment/201112/6/10192489_13231311542479.jpg

执行过程如下:

怎么执行进栈出栈之后,ax,cx的值都变了呢?
进栈出栈应该不能改变寄存器的值啊,这是不是书中的一个错误呢?


------解决方案--------------------------------------------------------
进栈,当然是不会改变寄存器内容的;出栈,如果是出到了寄存器里,寄存器的内容当然就会变为刚才栈顶的内容了,就象 pop ax 这指令,执行完后,ax 里就是刚才栈顶的内容。
------解决方案--------------------------------------------------------
探讨
在王爽的《汇编语言程序设计》一书的58页中,有关于进栈出栈的阐述我发现有点问题。代码如下:
http://hi.csdn.net/attachment/201112/6/10192489_13231311542479.jpg

执行过程如下:

怎么执行进栈出栈之后,ax,cx的值都变了呢?
进栈出栈应该不能改变寄存器的值啊,这是不是书中的一个错误呢?

------解决方案--------------------------------------------------------
探讨
在王爽的《汇编语言程序设计》一书的58页中,有关于进栈出栈的阐述我发现有点问题。代码如下:
http://hi.csdn.net/attachment/201112/6/10192489_13231311542479.jpg

执行过程如下:

怎么执行进栈出栈之后,ax,cx的值都变了呢?
进栈出栈应该不能改变寄存器的值啊,这是不是书中的一个错误呢?

------解决方案--------------------------------------------------------
探讨
在王爽的《汇编语言程序设计》一书的58页中,有关于进栈出栈的阐述我发现有点问题。代码如下:
http://hi.csdn.net/attachment/201112/6/10192489_13231311542479.jpg

执行过程如下:

怎么执行进栈出栈之后,ax,cx的值都变了呢?
进栈出栈应该不能改变寄存器的值啊,这是不是书中的一个错误呢?
  相关解决方案