版块
论坛
喜欢
话题
应用
搜索
登录
注册
pingjingde的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=51052
给讲一下吧,困扰我很长时间了
在过去的程序设计中,分为代码段,数据段和附加段。 代码段是不是在内存中一个连续的空间,而数据段在内存的另外一个连续空间。那么是不是每条指令在需要访问数据的时候必须改变段寄存器的值,这样是不是很慢??为什么这样设计? 是不是和intel处理器的 机器码怎么访问内存的 访问代码...
全文
回复
(
3
)
2004-05-10 16:17
来自版块 -
内核编程
◆
◆
表情
告诉我的粉丝
提 交
wowocock
:
CPU中有对程序员不可见的段描述符影射寄存器,所有的描述符都存放在影射寄存器中,根本不用访问内存段,而直接由EIP访问代码段,即可,在保护模式下,所有段都是0~4G的FLAT模式,所以更无所谓了,以前所谓的DOS下访问4GB空间,就是利用缓冲积存器的原理,进入保护模式,设置4GB...
(2004-05-10 17:42)
回复
pingjingde
:
我是问以前的计算机结构 在看汇编语言的时候对这一点很迷惑
(2004-05-10 16:48)
回复
virmin
:
==引用== 80x86(80386及其以后的各代CPU)可以在三种模式下运转:实模式,保护模式,V86模式。实模式就是古老的MS-DOS的运行环境。Win95只利用了两种模式:保护模式和V86模式。 ==end== 你说的要分段的应该是实模式下的intel cpu寻址...
(2004-05-10 16:47)
回复
pingjingde
加关注
写私信
0
关注
0
粉丝
8
帖子
返回顶部