| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1180 人关注过本帖
标题:关于内存分段
取消只看楼主 加入收藏
heamer_c
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-7-18
收藏
 问题点数:0 回复次数:2 
关于内存分段
8086CPU有20为地址线,而8086CPU寄存器都是16 位的,为了使没一个内存单元都能被访问到,CPU在确定一个内存地址是采用逻辑嗲制来描述,即内存分段,可以把1MB内存地址分成若干段,最多64kb段每段16字节,最少16段每段64kb,那么分段是在CPU运行时机器电路自动进行,还是由程序代码的设置决定,?然后如果分了16段一段64kb那,现在用8086芯的机子编一16位程序,代码加上数据加上堆栈总的不到64kb,代码数据会不会想现代32为机那样处于同一个段呢,如果不能,为什么,如果能怎么实现?
搜索更多相关主题的帖子: 内存 堆栈 寄存器 分段 CPU 
2006-08-21 13:18
heamer_c
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-7-18
收藏
得分:0 

那,64不是小于256吗?怎么能把256字节放在64里呢??如果能重叠那数据不就乱加覆盖了吗?就64个地儿怎么够256个人站呢?!


我就是程序,程序就是我,我还能退出程序吗?!
2006-08-22 14:50
heamer_c
Rank: 1
等 级:新手上路
帖 子:92
专家分:0
注 册:2006-7-18
收藏
得分:0 

第一:首先在通常情况下,各段在存储器中的分配是由操作系统负责的.每个段可以独立占用64KB的存储区.....

那么既然由存储器负责我们不求控制不住它了吗,如果我现在先让它一段16字节我如果不负责设置以下机器又怎么回知道呢??!


我就是程序,程序就是我,我还能退出程序吗?!
2006-08-22 14:53
快速回复:关于内存分段
数据加载中...
 
   



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

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