|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Dear黑色 于 2020-11-8 16:33 编辑
1.给定段地址为 0001H ,仅通过变化偏移地址寻址,CPU的寻址范围为 10H 到 1000FH
2.有一数据存放在内存20000H单元中,现给定段地址为SA,若想用偏移地址寻到此单元,则SA应满足的条件是: 最小为1001H ,最大为2000H,
物理地址 = 段地址*16 + 偏移地址
最大偏移地址:FFFFH
最小偏移地址:0000H
最小SA:
20000H = SA*16 + FFFFH
SA*16 = 20000H - FFFFH
SA*16 = 10001
由于SA*16等于SA向左偏移一位,那么SA的末尾数一定是0,所以SA*16只能是10000或者10010
如SA*16=10000
10000H + FFFFH = 1FFFH < 20000H 所以SA不能是1000,因为并不能寻址到20000H
如SA*16=10010
10010 + FFFFH = 2000FH >20000H 所以SA是1001,这才能寻址到20000H
最大SA:
20000H = SA*16 + 0H
SA*16 = 20000H
SA向右偏移一位 SA = 2000H
3.因为SA最小为1001H,最大为2000H,所以如果 SA<1001H 或 SA>2000H,那将永不能寻址到20000H
ps:第二题的SA最小值,有点头疼,还是看了其他水友的解读才理解 |
|