监测点2.2问题
”我们知道偏移地址最小为0H,最大为FFF0H“这里为什么最大是FFF0H,不是FFFFH呢?没错就是FFFFH,你估计是教材错了,寻址的最大范围都是0~FFFFH。只要是16位CPU就能寻址2^16 NeBen 发表于 2012-7-6 20:24 static/image/common/back.gif
没错就是FFFFH,你估计是教材错了,寻址的最大范围都是0~FFFFH。只要是16位CPU就能寻址2^16
这个是“应朋友要求,将第二题的答案详细解释一下:
因为题目要求是要物理地址最终为20000H。
我们知道偏移地址最小为0H,最大为FFF0H。
我们要求段地址能够取到的最小值,即要和偏移地址最大值配合,所以段地址应该为1001H,偏移地址为FFF0H:1001H * 10H + FFF0H == 20000H。
我们要求段地址能够取到的最大值,即要和偏移地址最小值配合,所以段地址应该为2000H,偏移地址为0H。
本文来自:鱼C工作室<a href=http://www.fishc.com>详细出处参考:http://www.fishc.com/a/kehouti/_huibianyuyan_/654.html”
难道是小甲鱼老师错了:lol tuya456 发表于 2012-7-7 12:05 static/image/common/back.gif
这个是“应朋友要求,将第二题的答案详细解释一下:
因为题目要求是要物理地址最终为20000H。
是啊,这里错了,我当初也搞没明白,但是的确错了,我还找了他结果没回应 tuya456 发表于 2012-7-7 12:05 static/image/common/back.gif
这个是“应朋友要求,将第二题的答案详细解释一下:
因为题目要求是要物理地址最终为20000H。
正确解题过程:
物理地址=SA*16+EA
20000h=SA*16+EA
SA=(20000h-EA)/16=2000h-EA/16
EA取最大值时,SA=2000h-ffffh/16=1001h,SA为最小值
EA取最小值时,SA=2000h-0h/16=2000h,SA为最大值
用计算器算算也能知道小甲鱼这里错了:lol,再说了没有什么绝对的权威,这点得知道,王爽这本书也有不少错误了,没弄清是错的就会理解不了。 NeBen 发表于 2012-7-7 12:08 static/image/common/back.gif
用计算器算算也能知道小甲鱼这里错了,再说了没有什么绝对的权威,这点得知道,王爽这本书也有不少错误 ...
小甲鱼写的是1001h和2000h啊,难道不对吗? 张国祥 发表于 2012-7-9 15:27 static/image/common/back.gif
小甲鱼写的是1001h和2000h啊,难道不对吗?
过程是错的,是打错应该,结果是对的,唉,没有绝对的权威 SA*16(这是16进制的,还是10进制的)+EA=20000H
如果这个16是16进制的
SA*10H+EA=20000H
SA=(20000H-EA)/10H
如果分解开来
假设EA=FFFFH
(20000H-EA)/10H
=20000H/10H-FFFFH/10H
=2000H-FFFH
=1001H
---------------------------------
SA=(20000H-EA)/10H
如果不分开计算
假设EA=FFFFH
(20000H-FFFFH)/10H
=1000H
SA=1000H,EA=FFFF,找不到20000H
如果EA=FFF0H
(20000H-FFF0H)/10H
=1001H
算错了.还望指点,费解很久
NeBen 发表于 2012-7-7 12:06 static/image/common/back.gif
正确解题过程:
物理地址=SA*16+EA
晓得了,谢谢哦~{:5_101:}
页:
[1]