鱼C论坛

 找回密码
 立即注册
查看: 1826|回复: 2

拯救我的有木有?汇编求解

[复制链接]
发表于 2013-5-19 14:03:54 | 显示全部楼层 |阅读模式

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

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

x
这个内存中,指令jmp 0ff0:0100 怎么能跳转到mov ax,2000h处呢?难道0ff0:0100等于10000h吗?给个说法的有木有?
AM}}@V4{BK~4IW0`XC_7PL0.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-5-19 14:42:25 | 显示全部楼层
jmp 0ff0:0100
地址 = 段地址  * 16 + 偏移地址  
0ff0 * 16 = 0ff00 【因为是16进制 ,所以每个位向前推一位】
0ff00  + 100 = 10000
所以地址为 10000
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-5-19 15:19:23 | 显示全部楼层
一句话,我们在物理地址的时候,都是给段地址推进一个零,0ff0=相当于0ff0x16,【这里16相当于十六进制的10】,我们要把十进制的16转换为十六进制的10,然后进行十六进制的计算,所以0ff0x10执行后就相等于0ff00,再加上偏移地址,计算就是0ff0x10+0100=10000.我们在书里有点没有明确解释一些方式,其实当我们看到书里的老师都是把段地址前面多加一个0去计算,列如:0ff0前面多加一个0=0ff00,再去加0100就是我们要的物理地址。。。。。。。。。。0ff00+0100=10000{这里进行的是十六进制计算}。希望可以明白,我是菜鸟,其实我也不很懂,,以后还请大神们多多指教和指点。谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-17 14:51

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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