中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 关于DOS可寻址内存大小? 上一主题 | 下一主题
220110
荣誉版主




积分 718
发帖 313
注册 2005-9-26
状态 离线
『楼 主』:  关于DOS可寻址内存大小?

在CSDN中看到有这么一个贴子:

  Quote:
在实模式下能够访问的最大内存地址是FFFF:FFFF,其对应的物理地址是:
  FFFF * 16 + FFFF + 1
=FFFF0 + FFFF + 1
=FFFF0 + 10000
=10FFF0
=1087K 零 1008个字节
=1M 零 63K 零 1008个字节
也就是说,在实模式下,能访问1M多的内存空间,为什么说只能访问1M的空间呢?是不是还有其它的限制?

我也想了解下,请教大家。

2006-1-5 18:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
darkradx
高级用户





积分 972
发帖 420
注册 2004-5-16
状态 离线
『第 2 楼』:  

1M=FFFFF(8086的20条地址线全用上了)
FFFF:FFFF=1M+FFFF-F
286开始地址线不止20条(286/24/16M,386/32/4G), 有了A20Gate
A20Gate是disable时,1M以上空间会绕回去从头开始(和8086表现一样)
A20Gate是enable时,这64K-16bytes可以访问(对这个大小很熟悉?叫HMA)

[ Last edited by darkradx on 2006-1-6 at 12:49 ]



平生进退如飙风
2006-1-6 12:14
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: