Adele-_Someone_ 发表于 2013-9-23 08:57:54

检测点3.1第二题答案有错误吧 ?


NGtailang 发表于 2013-9-23 09:09:23

不知道你的示意图怎么得来的。
jmp 修改的是cs和ip的值,到后面你就知道了,只是它们索引的物理地址在10000

Adele-_Someone_ 发表于 2013-9-23 09:12:05

NGtailang 发表于 2013-9-23 09:09 static/image/common/back.gif
不知道你的示意图怎么得来的。
jmp 修改的是cs和ip的值,到后面你就知道了,只是它们索引的物理地址在1000 ...

对呀 ,物理地址10000 不也可以用1000:0表示么

Adele-_Someone_ 发表于 2013-9-23 09:12:45

NGtailang 发表于 2013-9-23 09:09 static/image/common/back.gif
不知道你的示意图怎么得来的。
jmp 修改的是cs和ip的值,到后面你就知道了,只是它们索引的物理地址在1000 ...

对呀 ,物理地址10000 不也可以用1000:0表示么   那我红色部分说的对不对

tsembrace 发表于 2013-9-23 09:25:40

1、对,(DS)初始值按题意应该是1000h;
2、可以。保证能指向10000h就ok~

Adele-_Someone_ 发表于 2013-9-23 09:48:43

tsembrace 发表于 2013-9-23 09:25 static/image/common/back.gif
1、对,(DS)初始值按题意应该是1000h;
2、可以。保证能指向10000h就ok~

谢谢你{:1_1:}

NGtailang 发表于 2013-9-23 19:12:48

Adele-_Someone_ 发表于 2013-9-23 09:12 static/image/common/back.gif
对呀 ,物理地址10000 不也可以用1000:0表示么   那我红色部分说的对不对

首先你要理解题目,刚开始cs:ip指向20000物理地址,也就是第一条指令 mov ax,6622h
依据顺序下一跳就是jmp指令了,jmp修改了cs : ip的值为 0ff0 :0100,根据公式物理地址=SA*16+EA,算出物理地址为10000,跳转后继续执行指令,你说的那个ds 其实可以忽略掉。

福禄娃娃 发表于 2013-9-23 22:13:32

那里不能填1000和0
因为jmp 后接的是cs和ip的值
jmp off0:0100
虽然0ff00h+0100h=10000h 但是题目明确指出了jmp后的cs和ip值

eleven_xxq 发表于 2013-9-24 10:04:37

加油。回帖是美德。

405631061 发表于 2013-9-24 17:18:14

学习了,楼主好样的

菜鸟一个a 发表于 2013-12-24 22:04:39

学习学习再学习
页: [1]
查看完整版本: 检测点3.1第二题答案有错误吧 ?