主题:问些乱78糟的小问题
装高手
[专家分:30] 发布于 2006-06-23 19:04:00
存储器是内存么?
8086的1MB存储空间分成了两个512KB的存储体,
那他怎么分成4个段的?
是在偶数存储体上分4段又在奇数存储体上分4段?
他不是一分成两个512KB的存储体了么?
物理地址怎么要在段基址上*10H的,不明白了
而且他怎么也有代码段,数据段,堆栈段,附加段。CPU编程结构里面也有这4个段的吧?为什么有的段要重叠?
回复列表 (共2个回复)
沙发
wbsun111 [专家分:320] 发布于 2006-06-24 20:41:00
存储器是内存
在教科书上,你可以这么认为
8086的1MB存储空间分成了两个512KB的存储体,
那他怎么分成4个段的?
8086把存储器分为多个段,每个段最大64KB
注意:是四个段寄存器,不是四个段
两者不一样
物理地址怎么要在段基址上*10H的,不明白了
你再次仔细看一看教科书
段地址乘以10H,意思是:比如段地址:0100H,乘以10H后,变为01000H
为什么要这么做?
教科书上有一条:8086物理地址为20bit,是由前16位的段地址和后十六位的偏移地址相加而成
比如:段地址(16位):0100,偏移地址(16位) 0200,则物理地址(20位):01000+0200=01200
板凳
wbsun111 [专家分:320] 发布于 2006-06-24 20:44:00
而且他怎么也有代码段,数据段,堆栈段,附加段。CPU编程结构里面也有这4个段的吧?为什么有的段要重叠?
兄弟,不是段,是段寄存器,两者不一样
对,8086有四个段寄存器,80286及其后继机型有6个段寄存器
这个你以后就明白了
你必须学到寻址方式+伪操作知识才能彻底明白
我来回复