监测点2.3
首先,第一次是读取mov ax,bx的时候,IP+3第二次是读取sub ax,ax(sub的意思是减,那就是ax-ax=0)ip+3
第三次是读取jmp ax ip+2
第四次则是jmp执行的时候,ip=0;因为前面的ax-ax,不管ax的值为多少,最后都等于0,那么ip被赋值ax则为0,所以一共4次
具体参考,CPU,先读取指令之后在IP增加读取指令长度,之后在执行指令。 谢谢,本来不是很懂,但看到你的发表,都明白了
jmp ax ip+2 为什么IP是+2 不是 +3 看不太懂,为什么要AX-AX? svlik 发表于 2020-5-4 08:38
jmp ax ip+2 为什么IP是+2 不是 +3
JMP 一个 ax一个 所以是ip+2 后面的执行第四次不懂,执行三次以后就应该停止的呀! 4次 {:10_249:} svlik 发表于 2020-5-4 08:38
**** 作者被禁止或删除 内容自动屏蔽 ****
因为jmp只是用了两个字节而已 aini414 发表于 2022-4-22 19:57
**** 作者被禁止或删除 内容自动屏蔽 ****
我也这样想的,为什么前面不是读取一次执行一次,最后一条就需要读取一次执行一次呢,如果那个是正确答案,我只能理解为前面那些都只是名词,最后一个是动词,意思是前面那些都是修改数据,最后一个是动词,所以还需要去执行一次。
页:
[1]