yydwzl 发表于 2012-1-9 10:19:33

关于检测点10.2

本帖最后由 yydwzl 于 2012-1-9 12:35 编辑

下面的程序执行后,ax中的数值为多少?


我有点不明白,call s后的偏移地址是7,再一下push ip,入栈,这时ax应该为7才对呀,可以答案是6,为什么呢,请各位高手帮我一下,谢谢了

天河一_水 发表于 2012-1-9 10:43:46

知道执行call指令前ip是多少吗?

yydwzl 发表于 2012-1-9 10:50:29

执行指令前,IP不是3吗?

天河一_水 发表于 2012-1-9 11:41:43

当call指令读出后ip就改变了,指向下一条了。

yydwzl 发表于 2012-1-9 12:35:23

嗯,明白了

张国祥 发表于 2012-1-9 19:20:57

ip始终指向下一条要运行的命令始地址,就是说读入call s指令后,Ip瞬间变为6,这时,栈顶保存的就是6了

张国祥 发表于 2012-1-9 19:21:35

唔……貌似楼主问题解决了,,,要及时结贴啊!

yydwzl 发表于 2012-1-10 09:49:35

张国祥 发表于 2012-1-9 19:21 static/image/common/back.gif
唔……貌似楼主问题解决了,,,要及时结贴啊!

谢谢你了,再问你一个问题,在哪结帖呢,我把主题改为已解决,算不算呢

张国祥 发表于 2012-1-13 17:37:37

就是设为已解决!对的!

seuer126 发表于 2012-1-14 17:13:24

张国祥 发表于 2012-1-9 19:20 static/image/common/back.gif
ip始终指向下一条要运行的命令始地址,就是说读入call s指令后,Ip瞬间变为6,这时,栈顶保存的就是6了

一开始我对这个问题也迷糊,呵呵
页: [1]
查看完整版本: 关于检测点10.2