鱼C论坛

 找回密码
 立即注册
查看: 2735|回复: 7

汇编检测点9.2

[复制链接]
发表于 2014-4-26 09:20:14 | 显示全部楼层 |阅读模式

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

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

x
assume cs:code, ds:data

data segment
     db 0,0,0          ;为什么这里填了3个0就能满足jmp word ptr [bx + 1]能够使cs:ip指向第一条指令
data ends             我打其他的数就不行,为什么?急啊,大神帮帮忙,谢谢

code segment

start:
      mov ax, data
      mov ds, ax
      mov bx, 0
      jmp word ptr [bx + 1]
code ends

end start                                 
各位大神,教教小弟。

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

使用道具 举报

发表于 2014-4-26 16:08:26 | 显示全部楼层
  你运气不好。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-26 16:50:30 | 显示全部楼层
好奇怪, jmp word ptr [bx + 1]执行后应该指向的是第3个0开始的,从第3个0开始当成代码执行才对。。不懂、、、
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-26 17:01:00 | 显示全部楼层
好好复习下jmp word ptr 指令 跳转到第一条指令即cs:[0],bx=0所以 jmp word ptr[bx+1]的要求是
ds:[1]字的内容必须为0     所以本题最少需要定义3个字节 且后2个字节必须为0
例如:定义db 1,0,0 也是正确的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-26 17:13:14 | 显示全部楼层
复习后,发现4l正解。。厉害
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-4-26 17:53:56 | 显示全部楼层
这也拿出来问?:dizzy:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-2-20 16:39:52 | 显示全部楼层
又有收获了,4l讲的对
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-16 14:27:00 | 显示全部楼层
首先你要知道jmp word ptr是属于什么跳转,word属于段内跳转,dword属于段间跳转。
已经题目是jmp word ptr [bx+1]
也就是说跳转的ip为,高位ds:[2],低位ds:[1]。
已知是段内跳转,所以不用指定cs的值(没发生过变化),所以你只需要想办法指定ip的值为0就可以了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-19 22:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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