. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(CPU工作原理)
主题 : :  有一数据存放在内存20000H单元中,现给定段地址为SA,若想用偏移地址寻到此单元,则SA应满足的条件为最小()最大()?  [待解决] 回复[ 12次 ]   点击[ 815次 ]  
senhueibian
[帖 主] [ 发表时间:2009-08-21 13:34 ] 
荣誉值:0
信誉值:0
注册日期:2009-08-04 20:36
有一数据存放在内存20000H单元中,现给定段地址为SA,若想用偏移地址寻到此单元,则SA应满足的条件为最小()最大()? 
我根据CPU寻址的公式:物理地址=段地址*16 +偏移地址 得到: 
20000H=SA *16+偏移地址 
SA=(20000-最大的偏移地址)\16 
SA=(20000-FFFF)\16 
SA=10001\16 
按教材上说的段地址*16=16进制左移一位,那相反则应该等于10001右移一位即1000.1(由于本人初次涉及16进制乘除法,还请各位老师指点)出现了小数位?看答案上说的却是1001H,在这里有点不解,请各位前辈帮忙解答一下,十分感谢!
419745469
[第7楼] [ 回复时间:2009-11-12 15:57 ] 
荣誉值:0
信誉值:0
注册日期:2009-10-22 18:01
4楼,这觉得这道题最不容易理解的地方就是FFFFH/10H这里了,得出的答案有小数点的,应该是进一位还是舍去。
你竟然直接就FFFFH/10H=FFFH了。。。。
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved