本文主要是介绍80386内存寻址机制(个人见解),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
看我的见解之前,不懂的请在看一遍原文pdf
无论如何GDTR都要先去寻找GDT,而且GDT只有一个。( LDT的描述符也就是 指向LDT的地址 在GDT里面)
1.当TI位为0时,用段选择器(索引值X)去找GDT里面的描述符x(段基地址)(然后前面原文pdf不是有xxxx:yyyyyyyy吗?有滴,那8位y+上段基地址就是对应的内存线性地址)
2.当TI位为1时,先用LDT(索引值n)去找指向 存放 段描述符的LDT表的地址(就是LDT1描述符),找到表后在用索引值x去LDT找段描述符,然后8位y+上基地址就是对应线性地址
从LDT开始找段描述符的步骤 就像 开始从GDTR 到 段选择器 到 GDT 一样 ,就像嵌套一样
然后有更详细的请参见:这里
这篇关于80386内存寻址机制(个人见解)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!