鱼C论坛

 找回密码
 立即注册
查看: 7101|回复: 12

一个很困惑的问题:监测点2.3中ip为什么会被修改?每次变化多少?

[复制链接]
发表于 2011-5-4 08:03:00 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 loop 于 2011-5-9 18:00 编辑

监测点2.3中ip为什么会被修改?每次变化多少?为什么最后变为0?

                               
登录/注册后可看大图

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-5-4 09:27:50 | 显示全部楼层
指令要从CS段IP所指向的地方开始执行。
最开始的时候,指向 mov ax,bx这条指令,一般情况下,我们设置第一条指令的IP值为0000H
执行完第一条指令,IP的值会自动增加,以继续执行下一条指令,所以就改变了呀。mov ax,bx这条指令的机器码是:89D8   占用的是2个字节,所以IP为了执行下一条指令,就要+2,不知道我这样解释,你是否能明白。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-5-4 10:18:52 | 显示全部楼层
能好的好的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-5-9 10:03:08 | 显示全部楼层
对于指令的执行就会用到cs和ip,你懂的啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-5-9 10:16:04 | 显示全部楼层
也不需要知道什么指令所对应的代码的啊,你看指令是 sub ax,ax  这里已经把ip的值弄成0 了的啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-5-9 11:03:55 | 显示全部楼层
看看路过,见识一下

评分

参与人数 1鱼币 -2 收起 理由
loop -2 回复与主题无关~

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-5-9 17:55:55 | 显示全部楼层
本帖最后由 loop 于 2011-5-9 17:58 编辑
  1. mov ax,bx   ;读入指令缓冲器IP++

  2. sub ax,ax  ;读入指令缓冲器IP++,sub命令把ax值清零了。

  3. jmp ax  ;读入指令缓冲器IP++,执行jmp命令改变IP的值,IP++
复制代码
IP值变化了4次,因为ax=0,jmp把ax的值赋值给IP,所以最后IP为0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-5-9 19:37:23 | 显示全部楼层
本帖最后由 风扫地 于 2011-5-9 19:37 编辑

sub  ax,ax  的意思就是 用ax里面的值减去ax里面的值再将结果(结果显然是0)送入ax中去
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-5-9 19:39:19 | 显示全部楼层
我看了这个也知道了我的一个疑问了,一个汇编指令对应的有一段机器代码的,机器代码占用了多少的字节,下面的ip就改变多少了,;P
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-2 21:17:19 | 显示全部楼层
loop 发表于 2011-5-9 17:55
IP值变化了4次,因为ax=0,jmp把ax的值赋值给IP,所以最后IP为0

mov ax,bx   ;读入指令缓冲器IP++
sub ax,ax     ;读入指令缓冲器IP++,sub命令把ax值清零了。
jmp ax         ;读入指令缓冲器IP++,执行jmp命令改变IP的值,IP++
复制代码IP值变化了4次,因为ax=0,jmp把ax的值赋值给IP,所以最后IP为0

版主,这样解释的


但是jmp ax        ;读入指令缓冲器IP++,执行jmp命令改变IP的值,IP++
在用jmp将ax=0赋给ip后,ip的值不是又改变了么,怎么还是0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-3 12:11:57 | 显示全部楼层
因为ax的值是0,jmp ax 命令就是修改IP值的,所以当ax=0时,就等于把ax的值赋给IP,所以IP就=0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2019-7-20 10:36:50 | 显示全部楼层
清晰明了多了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-7-18 11:32:47 | 显示全部楼层
这里没有定义ax 是初始值是0啊,哪里来的0呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 07:25

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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