关于IA 32 intel的segment的问题

fig_o 2009-04-17 10:31:22
我们知道在一个segment selector的大小为16bits
如下图:
index TI RPL
0000000000000 0 00
也就是如果TI = 0的话,就是一个GDT segment。
如果TI = 1的话,就是一个LDT segment。
也就是说有2^13个GDT,2^13个LDT啊。
但是问题是一个GDT就占用了64bits啊,所以index最后三位肯定为0嘛!
那就不可能有这么多的segment啦?
可能是我比较糊涂,有看懂的大虾给解释一下。
...全文
119 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
hjjdebug 2009-04-20
  • 打赏
  • 举报
回复
你可以这样看。
gdt 是一张大表,这张表中的每项是8Bytes(64bits)
那个selector 把后3bits 都填充0, 就是这张表的索引。s
那多余的3bit 另有用途,就是你上面描述的Ti, RPL

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧