关于检测点2.3
mov ax bxsub ax ax
jmp ax
ip最后怎么变成0
:dizzy::dizzy::dizzy::dizzy::dizzy: sub ax ax ax=0运行后结果
jmp ax运行后结果cs=cs ip=ax ax=16位寄存器 (跳到偏移AX处执行)
mov ax bx ;执行了这条,相当于ax=bx,而cs:ip在这段代码中,bx=ip
sub ax ax ;而执行了这条语句,就是把ax=0
jmp ax ;而jmp ax,相当于跳到ax,而ax=bx,执行了前面两条指令相当于把ax当成bx用
;而bx=ip,现在ax=0那么ip=bx=ax=0
顶一顶吧,虽然我不太懂这个 jmp ax,在含义上好似:mov IP,ax
书的33页最上面,多看书。
我只理解ip值最后是ax的值,不知道为什么ax值为0,是因为一开始的时候ax,bx中都是0吗? ㄓ国Ψ—小八 发表于 2012-2-6 23:24 static/image/common/back.gif
我只理解ip值最后是ax的值,不知道为什么ax值为0,是因为一开始的时候ax,bx中都是0吗?
是因为你不认识sub指令?
sub ax,ax 即ax-ax=0 了解了
嘿嘿
学的快忘了快 Seely 发表于 2012-2-7 09:49 static/image/common/back.gif
是因为你不认识sub指令?
sub ax,ax 即ax-ax=0
还真不知道sub,多谢了! 谢谢各位,我明白了 最后执行jump ax后,IP的只等于ax的值。
之前sub ax,ax。ax的值等于0 了,所以IP的值等于0
sub ax,ax相当于ax=ax-axa,所以执行后ax内容为零了;
jmp ax,在含义上类似于mov ip,ax,所以执行假名牌(jmp)指令后,ip内容为零…… 非同凡想 发表于 2012-2-9 22:28 static/image/common/back.gif
sub ax,ax相当于ax=ax-axa,所以执行后ax内容为零了;
jmp ax,在含义上类似于mov ip,ax,所以执行假名牌( ...
谢了,我懂了
页:
[1]