鱼C论坛

 找回密码
 立即注册
查看: 1618|回复: 6

第2章检测点2.3为什么会是这个答案??

[复制链接]
发表于 2014-4-30 19:36:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
第2章检测点2.3为什么会是这个答案?我研究了快2天了就是想不出来,书本我也翻了好几遍。
检测点2.3
下面的3条指令执行后,cpu几次修改IP?都是在什么时候?最后IP中的值是多少?  
mov ax,bx  
sub ax,ax  
jmp ax

答:一共修改四次
第一次:读取mov ax,bx之后  
第二次:读取sub ax,ax之后  
第三次:读取jmp ax之后  
第四次:执行jmp ax修改IP  
最后IP的值为0000H,因为最后ax中的值为0000H,所以IP中的值也为0000H

这是怎么算来的??最后的结果为什么是0000H
还有“sup”这个什么起什么作用的,第一章和第二章没学这个啊。


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-4-30 19:45:03 | 显示全部楼层
本帖最后由 盐生 于 2014-4-30 19:46 编辑

你没去记jmp的作用吧?jmp(可能是jump的缩写)之后就开始从新的地址执行代码,当然变CS:IP(等于CS:AX)了;sub自己早点百度就不用想两天了,,,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-30 20:22:31 | 显示全部楼层
本帖最后由 为之疯狂 于 2014-4-30 20:24 编辑

mov ax,bx  ;将bx的值传到ax中
sub ax,ax   ;ax-ax的值传到ax中
jmp ax       ;经过上一步就能确定ax的值是0,然后修改ip值为ax,也就是0,最后跳转到cs:0的代码段去。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-4-30 20:44:05 | 显示全部楼层
我的天呐,SUP是减法,ax减ax等于0啊,jmp读取是修改一次,读取后执行后变成了又修改一次。终于弄懂了,谢谢!!!!!!!!看到你的提醒我又研究了1小时才弄明白。够笨的O(∩_∩)O~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-30 20:48:15 | 显示全部楼层

以后一起讨论吧,我q312154421
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-30 20:54:53 | 显示全部楼层
58223495 发表于 2014-4-30 20:44
我的天呐,SUP是减法,ax减ax等于0啊,jmp读取是修改一次,读取后执行后变成了又修改一次。终于弄懂了,谢谢 ...

是sub,不是sup
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-2 09:57:50 | 显示全部楼层
sub ax,ax == ax -= ax;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-31 07:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表