白白_669 发表于 2019-7-24 08:46:51

检测点3.1(2)

检测点3.1第二题中的ip值是怎么算出来的啊?

人造人 发表于 2019-7-24 09:03:25

检测点3.1第二题 是什么?
你要我去翻书吗?
要学会提问题

yjcoke 发表于 2019-7-24 15:35:01

楼主也是够懒的,连题目都不想帖。
CS是代码段,IP表示执行的指令地址,那么你只要找到执行到哪里了,你自然就知道IP值是怎么来的。
另外,物理地址等于段地址乘以16+偏移地址。
题目的给定值是CS=2000H,其他都是0
那么第一步指令肯定是从20000H开始,代码是mov,ax,6622H。这个时候因为指令占据了3个字节,所以IP变成了CS段的3H也就是2000H:3H.分开了说就是CS=2000H IP=3H。下一步是JMP 0FF0:0100,那么你就要算一下这个地址变成物理地址是多少{ff0*10H(10进制的16就等于16进制的10H)}加上100,那么是不是等于10000H呢?这个时候的CS=FF0H,IP=100H。好了,就是这样。
你要是还不明白,从头开始看吧,温故知新。

xlt201314 发表于 2019-7-29 17:00:55

ip=cpu所读字节数加上长度吧
页: [1]
查看完整版本: 检测点3.1(2)