. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(内存访问)
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  检测点.2.2  [待解决] 回复[ 4次 ]   点击[ 318次 ]  
sasorilu
[帖 主]   [ 发表时间:2013-02-06 09:12 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2013-02-06 09:02
有一数据存放在内存20000H单元中,现给定段地址为SA,若想用偏移地址寻到此单元.则SA应满足的条件是?

我的算法是:物理地址=SA*16+EA
                 20000H=SA*16+(0H~FFFFH)
                 SA=2000     SA=10001
答案是2000 1001  
我实在是想不明白 10001不能被16整除  1000可以  为什么答案是1001 
求高手解答.T.T
yunzhuo
[第1楼]   [ 回复时间:2013-06-02 00:16 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2013-05-05 20:45
SA=1000H
EA最大值为FFFFH
故有:
SA*16+EA = 1000H*16 + FFFFH
         = 10000H + FFFFH
         = 1FFFFH
不可能为20000H。
因此,SA必须取到1001
capitelation
[第2楼]   [ 回复时间:2013-06-26 18:14 ]   [引用]   [回复]   [ top ] 
荣誉值:18
信誉值:0
注册日期:2013-06-25 18:18
楼上正解。问SA最小值。SA为1000H时,最大只能寻址到1FFFFH,到不了20000H。
liulian753
[第3楼]   [ 回复时间:2013-07-25 16:22 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2013-07-15 11:11
你忽略了一个数,就好像从5到8有几个整数,是4个而不是3个!!!
zz63948992
[第4楼]   [ 回复时间:2013-08-01 23:04 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2013-08-01 17:00
AX:0000=20000?得AX=2000
AX:FFFF=20000? 得AX=1000.1,向上取整AX=1001
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved