| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 798 人关注过本帖
标题:始终不明白0:200为何等于0020:0000
只看楼主 加入收藏
luohua2007
Rank: 1
等 级:新手上路
帖 子:88
专家分:0
注 册:2007-4-11
收藏
 问题点数:0 回复次数:4 
始终不明白0:200为何等于0020:0000
0:200 - 0:23F = 0020:0000 - 0020:003F

看不明白为什么会这样,有什么换算公式或者什么规定啊,
请大家详细说一下把,
总觉的0:200的段地址因该是0000,偏移地址是2000才对,
可书上却解释成0020:0000。
想了几天也没想明白,尽管我知道书上是对的,可还是搞不明白
和学过的规则完全不一样
2007-05-17 12:34
guancracker
Rank: 1
等 级:新手上路
威 望:1
帖 子:27
专家分:0
注 册:2007-5-14
收藏
得分:0 
是这样的CPU 可以用不同的段地址和偏移地址形成一个物理地址。
也就是说一个内存物理地址可以由不同的段地址和偏移地址形成。
只要满足的条件是:
内存物理地址= 段地址 X 16 + 偏移地址 就行了
那好,什么又是 段地址 X 16 呢?说通俗点就是在段地址后面加一个零 形成20位的地址

0:200为何等于0020:0000
0:200=00000+200=00200
0020:0000=00200+0=00200
它们都等于内存物理地址00200, 是一样的。


你可以D查看一下
是不是0:200和0020:0000的内容一样。因为都是指向内存地址00200H。
书上的说没错。在23页有解释。

[此贴子已经被作者于2007-5-17 13:04:28编辑过]


2007-05-17 13:03
I喜欢c
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:64
帖 子:1749
专家分:0
注 册:2007-3-2
收藏
得分:0 

段地址与偏移地址搞懂没/


 我是指针,却丢失了目标地址!          我是循环,却缺少了结束条件!      我是函数,却没有人来调用!   
2007-05-17 13:47
luohua2007
Rank: 1
等 级:新手上路
帖 子:88
专家分:0
注 册:2007-4-11
收藏
得分:0 
明白了, 谢谢2位指点
如何计算物理地址,我会,
只是没想到程序可以那样随便写,
那我的答案也算对了,就象这个样子
0:200=0000:0200=0020:0000

[此贴子已经被作者于2007-5-17 16:22:57编辑过]


来生 再续前缘 孟婆浅浅一笑 低头看那一锅普通的汤 只因加了一味叫遗忘的草料 也抵过了曾经的万千誓言
2007-05-17 16:19
fishlover
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-5-10
收藏
得分:0 

.......学以致用


2007-05-21 00:50
快速回复:始终不明白0:200为何等于0020:0000
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026671 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved