本文将针对保护模式与实模式相关内容进行总结。
实模式
特点
对于8088的实模式,包含如下特性:
8个16bit通用寄存器
处理器向内存发送20位地址,其中4位地址由%cs/%ds/%es/%ss提供,指令段使用%cs、数据读写使用%ds、栈读写使用%ss。例如,一条指令位于[cs:ip],其寻址方式为:
寻址范围很小($2^{16}=65536$bytes)
保护模式
基本原理
在保护模式下,由一个段选择符和一个指定段内相对地址的偏移量构成逻辑地址,其结构如下:
其中:
- Selector叫段选择符,高13位为描述表的入口;而第2位表示使用GDT或LDT,最低两位表示优先级,0-3分别代表最高优先级和最低优先级,段选择符保存在段寄存器(cs/ss/es/fs/ds)中
- GDT/LDT位全局/局部描述符表,保存段描述符,其中Base包含段首字节线性地址,Limit存放段中最后一个内存单元偏移量(就是某个段的长度),Flags决定段的一些特征。
特点
- 寻址范围大
- 仅能访问虚拟地址
参考文献
- 1. ↩