王爽汇编 检测点2.3 求解释!
题目: 下面的3跳指令执行后,CPU几次修改了IP? 都是什么时候? 最后IP的值是多少?mov ax,bx
sub ax, ax
jmp ax
我是这样理解的:
第一次执行mov ax,bx 后IP的值+一次
第二次执行sub ax,ax 后ip的值加一次
第三次执行 jmp ax 后IP=0 然后再加一次2;
不是吗?
还有ax 不是2个字节嘛? 为什么图上面是mov ax,0123H; 在内存中只有3个字节。ax=B8;
我刚学,请多多指教! mov ax,bx ;读入指令缓冲器IP++ (第一次)
sub ax,ax;读入指令缓冲器IP++,(第二次)sub命令把ax值清零了。(等同于ax-ax)
jmp ax;读入指令缓冲器IP++ (第三次)
执行jmp ax后,IP值被ax覆盖,IP==0。(第四次) 小生我怕怕 发表于 2013-3-13 03:32 static/image/common/back.gif
mov ax,bx ;读入指令缓冲器IP++ (第一次)
sub ax,ax;读入指令缓冲器IP++,(第二次)sub命令把ax ...
谢谢咯。呵呵! 下面的那个为什么ax 是一个字节。 看了小生大神的回复 我懂了
页:
[1]