| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
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最小值,有点头疼,还是看了其他水友的解读才理解   |   
 
 
 
 |