有一数据存放在内存20000H单元中,现给定段地址为SA,若想用偏移地址寻到此单元。则SA应满足的条件是:最小为 1001H ,最大为 2000H 。
当段地址给定为 1001H 以下和 2000H 以上,CPU无论怎么变化偏移地址都无法寻到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为最大值
这样子求解答案跟网上公布的一样。
如果换种解法:
SA=(20000h-EA)/16=(20000H-FFFFH)/16=10001/10=1000,这两种解法得数不一样,麻烦解释一下原因。 |