首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

关于转移地址在寄存器中的call授命

2012-09-09 
关于转移地址在寄存器中的call指令下面的程序执行后,ax中的数值为多少?内存地址 机器码 汇编指令1000:0 b8

关于转移地址在寄存器中的call指令
下面的程序执行后,ax中的数值为多少?
内存地址 机器码 汇编指令
1000:0 b8 06 00 mov ax,6
1000:2 ff d0 call ax
1000:5 40 inc ax
1000:6 mov bp,sp
  add ax,[bp]


答案说是11,我验证也是11,但我不明白,最后应该ax是 6+ss:[bp],因为bp和sp相等了,所以最后结果就是6+栈顶的那个数,因为call ax那的内存地址为1000:2,所以ss:sp里应该是2啊,所以最后应该是6+2=8啊,求教各位

[解决办法]
是11没错,因为调用call ax后记录下的ip是它下一条指令的ip,即5,6+5=11

热点排行