. : : Assembly Language : : .
|
首页
|
我提出的问题
|
我参与的问题
|
我的收藏
|
消息中心
|
游客 登录
|
提问
|
未解决
|
已解决
|
精华区
|
搜索
|
《汇编语言》论坛
->
寄存器(内存访问)
主题 : :
关于pop指令引发的一点思考
[已解决]
回复[
9
次 ] 点击[
302
次 ]
regex
[帖 主]
[ 发表时间:2009-12-27 13:47 ]
荣誉值:61
信誉值:0
注册日期:2009-12-19 01:51
书里61页图3.12讲述了pop指令将1000CH单元的2266H出栈后, 2266H依然在1000CH处。
我可以不可以这么认为, 汇编语言没有cut指令(剪切),mov可以想象成复制指令吧?
通过debug实验也证实了这点。
mov ax,1234
mov bx,ax
所以说, 停留在1000CH里的内容将被新的push进来的信息覆盖。
parid
[第
3
楼]
[ 回复时间:2009-12-29 08:45 ]
荣誉值:0
信誉值:0
注册日期:2009-12-23 22:01
可我在debug里实验了下为什么就不行呢,我是这样弄的:
mov ax,1000
mov ss,ax
mov sp,8
mov bx,5
push bx ;执行完这句后sp应该等于6
pop dx ;执行完这句后sp应该等于8
mov sp,6 ;如果说出栈后数据仍在原来的位置,那么将sp指针的位置移到6的地方
pop ax ;再次执行pop ,如果按照楼主所说,那么ax也应该等于5.可是得出的结果却不是5,请求高人解释一下
此问题已结贴!
Copyright © 2006-2024 ASMEDU.NET All Rights Reserved