. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(CPU工作原理)
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  偏移地址???  [待解决] 回复[ 13次 ]   点击[ 638次 ]  
rikka_wang
[帖 主]   [ 发表时间:2011-03-27 21:31 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-03-20 20:30
看书好久了,一直有个问题很困扰,就是段地址和偏移地址之间的关系以及变化规律,哪位大哥能帮忙详细讲解一下,小弟感激不尽,先谢谢了!
bigeq1
[第1楼]   [ 回复时间:2011-03-27 21:50 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-11-19 15:45
段地址*16+偏移地址=物理地址
偏移地址的范围为0H~FFFFH
所以反过来来看,段地址一般是16的整数倍
zaixuexi
[第2楼]   [ 回复时间:2011-03-28 09:57 ]   [引用]   [回复]   [ top ] 
荣誉值:93
信誉值:0
注册日期:2010-11-29 14:28
先说说你自己的理解,哪里困惑了,给个实例,一起来看看
rikka_wang
[第3楼]   [ 回复时间:2011-03-28 16:00 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-03-20 20:30
偏移地址寻址很困惑!
734656064
[第4楼]   [ 回复时间:2011-04-01 07:49 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-03-27 20:45
如1楼的
396515416
[第5楼]   [ 回复时间:2011-04-03 01:10 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-04-02 01:18
我也很纠结     刚看到那就卡哪啦    相信在理解一下应该可以看懂  呵呵呵
crepuscular
[第6楼]   [ 回复时间:2011-04-07 19:39 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-04-07 16:21
偏移地址寻址就是以段地址为基准 计算从段地址到内存单元物理地址所发生的位移大小 这个值就成为偏移地址
以数学的角度来说 它就是一个相对距离(相对段地址) 书中有个学校到图书馆的例子 仔细体会下就OK了
xiesong0303114
[第7楼]   [ 回复时间:2011-04-08 13:49 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-04-07 13:42
可以参考书中图书馆的例子,多看就会明白了!因为8086是16位,但是有20为的地址线,所有物理地址就用段地址*16+偏移地址表示了!
xcf007
[第8楼]   [ 回复时间:2011-04-12 13:23 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-04-12 08:35
学完操作系统原理,再看应该好理解些,
考虑地址范围0~0xFFFFF,共0x100000个单元,寻址时,光这个地址存储就得用3个字节,24位,而16位的寄存器存储不了,所以用段地址+偏移地址方式表示
如1234H*16+4567H==>168A7H 合成一个这样的地址,这样可以寻址空间就为16M了。
hongdan0714jin
[第9楼]   [ 回复时间:2011-04-13 21:54 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-03-27 21:54
段地址*16+偏移地址=物理地址
偏移地址的范围为0H~FFFFH
所以反过来来看,段地址一般是16的整数倍
------------------
回复:不是吧,是起始地址为16的整数倍吧,段地址怎么一般是16的整数倍呢??
a_qingzi
[第10楼]   [ 回复时间:2011-04-28 16:26 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-04-28 16:01
段地址和偏移地址之间的关系以及变化规律?
他们之间有什么关系和规律,无非就是共同组成一个物理地址空间罢了。
要说关系就一个:一个段地址可以偏移地址有0~FFFF个
有人说段地址是16的整数倍,千万别迷糊这句话,这句话有个条件:那就是对于一个20位的地址来说是这样。
但是对于一个任意的数据,你都可以把它设定为段地址,段地址的意思就是说:“从这里开始”你可以偏移0~FFFF个位置去找东西。
a_qingzi
[第11楼]   [ 回复时间:2011-04-28 16:28 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-04-28 16:01
回复:[第10楼]
不是吧,是起始地址为16的整数倍吧,段地址怎么一般是16的整数倍呢??
------------------
这个是有条件的,是对于20位的物理地址来说的。看楼上的解释。
wlzaini1314
[第12楼]   [ 回复时间:2011-04-28 17:02 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-01-15 22:31
段地址*16+偏移地址=物理地址
偏移地址的范围为0H~FFFFH
所以反过来来看,段地址一般是16的整数倍
------------------
回复:不是吧,是起始地址为16的整数倍吧,段地址怎么一般是16的整数倍呢??
------------------
回复:是一定的   段地址*16+偏移地址=物理地址 
不是16的倍数  那物理地址又是多少了呢
tsembrace
[第13楼]   [ 回复时间:2011-04-29 11:38 ]   [引用]   [回复]   [ top ] 
荣誉值:31
信誉值:3
注册日期:2009-06-15 19:20
段地址*16+偏移地址=物理地址
偏移地址的范围为0H~FFFFH
所以反过来来看,段地址一般是16的整数倍
------------------
回复:不是吧,是起始地址为16的整数倍吧,段地址怎么一般是16的整数倍呢??
------------------
回复:是一定的   段地址*16+偏移地址=物理地址 
不是16的倍数  那物理地址又是多少了呢
------------------
回复:

段地址当然不一定为16的整数倍,没有依据,更没有规定。
通过“段地址*16+偏移地址=物理地址”
可以看出对当偏移地址为0000h时候,物理地址=段地址×16,则应该是:可寻址范围内的首单元地址为
16的倍数。
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved