IntelX86CPU系列的寄存器
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据寄存器
CX
DX
SP
堆栈指针
通用寄存器
指针寄存器
BP
基址指针
SI
源地址
变址寄存器
DI
目的地址
如果前面带由大写字母E, 代表32位寄存器
整理ppt
6
寄存器分类介绍(2)
标志寄存器(EFLAGS register) ----only one
作用: 控制任务状态和模式切换、中断处理、指令追踪和访问权限 控制.寄存器中的标志位需要特权指令代码才可以修改(特权指令:运 行在内核态下的代码)
DR0---DR3:调试地址寄存器 DR4—DR5:保留.还没有定义 DR6: 调试状态寄存器 DR7: 调试控制寄存器
在开发底层系统时,会用到这些寄存器.
整理ppt
12
寄存器分类介绍(8)
调试寄存器
设置标志位 集中在DR7
整理ppt
13
寄存器分类介绍(9)
调试寄存器
DR0-DR3:保留32位断点的线性地址.
掌握系统软件设计
汇编嵌入在C语言中的编写 Boot loader的设计(BSP)
理解Intel CPU的发展趋势 深刻理解平台的体系结构 编写更高质量的代码 编译器底层的优化
整理ppt
3
32位CPU系统级寄存器和数据结Biblioteka Baidu(1)
1
3
4
2
2 3
大家在这张图中,注意寄
存器类别之间的关系.
整理ppt
整理ppt
8
寄存器分类介绍(4)
控制寄存器(CR0, CR1, CR2, CR3, and CR4)
在这些寄存器中, 设置标志位的主要 集中在CR0与CR4.
整理ppt
9
寄存器分类介绍(5)
控制寄存器(CR0, CR1, CR2, CR3, and CR4)
CR0
PG:分页有效时,置位为1,清空时为0.与PE一同使用.该指令表明是否 使用页表将线性地址转换成物理地址
4
32位CPU系统级寄存器和数据结构(2)
15
0
31
0
逻辑地址
选择符
偏移量
线性地址
描述符表
基地址 段描述符
+
31
22 21
12 11
0
页目录
页表项
页内偏移值
页目录表
页表
页框
CR3
页目录项
页表项
物理地址
逻辑地址 线性地址物理地址转换图
整理ppt
5
寄存器分类介绍(1) -------通用寄存器
AX
BX
种类:
CR0: 控制系统的工作模式和处理器的状态 CR1: 保留 CR2 :保留出错的线性地址 CR3:页目录基址的物理地址和PCD和PWT标志位(和CACHE有关) CR4:一些结构的扩展.表明对于特定的处理器和操作系统执行支持.
由实模式转换到保护模式、二级页面映射机制的建立、中断处理等等,会用到这 些寄存器,.
DR6
B0—B3:断点状态的监测
BD:调试寄存器访问监测.置位,表明在指令流中,下一条指令将访问其中
的一个调试寄存器
BS:单步执行标志位
BT:任务转换标志位
DR7:
L0—L3:局部断点使能标志位
G0--G3: 全局断点使能标志位
LE AND GE:置位,表明处理器可以监测导致数据断点的指令.推荐 置位为1.
GD:通用监测使能标志位.表明是否开启调试寄存器保护.
LEN0 through LEN3 : 用来表明相应断点地址寄存器内存位置的大 小.
R/W0 through R/W3: 相应断点的状态
整理ppt
14
寄存器分类介绍(10) ---中断和异常管理寄存器
中断描述符表(IDT)
该位
EM;该位表明是否需要仿真协处理器的功能
MP:协处理器监视标志位
PE: 保护模式使能,当设置有效位,CPU工作在保护模式.反之,实模式.
整理ppt
10
寄存器分类介绍(6)
控制寄存器(CR0, CR1, CR2, CR3, and CR4)
CR3: PCD:控制当前页目录表的缓冲,当设置清空时,缓冲.置位时,缓冲无效.与 CR0中的CD或PG一同使用
CD: cache 缺失设置位 NW:直写无效(直写:高速缓存中的数据始终保持与主存储器中数据匹配 ) AM: 对齐功能屏蔽(与EFLAGS寄存器中 AC标志位一同使用) WP:写保护 NE: 数字错误标志位(与浮点协处理器共同使用) ET: 扩展类型.设置有效位时,支持 ntel 387 DX 数学协处理器指令. TS: 每当任务切换时就设置该位,并且在解释协处理器指令之前测试
置标志位的有效位 看你具体要做什么, 对应的位置置有效的
标志位
Figure : System Flags in the EFLAGS Register
整理ppt
7
寄存器分类介绍(3)
控制寄存器((CR0, CR1, CR2, CR3, and CR4)
作用:控制寄存器决定处理器的操作模式和当前执行任务的一些特 征
OSFXSR:置位.表明操作系统支持FXSAVE and FXRSTOR指令 OSXMMEXCPT:置位.表明操作系统支持不可屏蔽的SIMD浮点异常.
整理ppt
11
寄存器分类介绍(7)
调试寄存器
作用:调试寄存器主要作用是调试应用代码、系统代码、 开发多任务操作系统.来监视代码的运行和处理器的性 能.
PWT:控制cache采取直写还是回写的策略.当设置清空时,回写有效.当置位时,直写有 效.
CR4:
VME:虚地址模式.当清空时,无效. PVI:保护模式虚中断,当清空时,无效 TSD:时间戳允许标志位.当清空时,允许RDTSC指令执行在任务特权级上.当置位时,
只允许工作在特权级0. DE:调试扩展.置位,表明DR4与DR5将产生没有定义的异常 PSE:当置位,使用4M的页面;清空,使用4K的页面 PAE:置位,使用36物理内存的分页机制.清空时,使用32位分页机制 MCE:置位,使用机器检查异常机制. PGE:置位,启动全局页面.当写CR3时,也不会被替换. PCE:置位,表明使RDPMC指令工作在任何保护级别.
系统软件开发指南系列
---Intel X86 CPU系列的寄存器
整理ppt
1
主要内容
学习寄存器知识的意义 32位CPU系统寄存器和数据结构 寄存器分类介绍
通用寄存器 标志寄存器 控制寄存器 调试寄存器 中断和异常管理寄存器 内存管理寄存器
在操作系统上用到的寄存器
整理ppt
2
学习寄存器知识的意义
CX
DX
SP
堆栈指针
通用寄存器
指针寄存器
BP
基址指针
SI
源地址
变址寄存器
DI
目的地址
如果前面带由大写字母E, 代表32位寄存器
整理ppt
6
寄存器分类介绍(2)
标志寄存器(EFLAGS register) ----only one
作用: 控制任务状态和模式切换、中断处理、指令追踪和访问权限 控制.寄存器中的标志位需要特权指令代码才可以修改(特权指令:运 行在内核态下的代码)
DR0---DR3:调试地址寄存器 DR4—DR5:保留.还没有定义 DR6: 调试状态寄存器 DR7: 调试控制寄存器
在开发底层系统时,会用到这些寄存器.
整理ppt
12
寄存器分类介绍(8)
调试寄存器
设置标志位 集中在DR7
整理ppt
13
寄存器分类介绍(9)
调试寄存器
DR0-DR3:保留32位断点的线性地址.
掌握系统软件设计
汇编嵌入在C语言中的编写 Boot loader的设计(BSP)
理解Intel CPU的发展趋势 深刻理解平台的体系结构 编写更高质量的代码 编译器底层的优化
整理ppt
3
32位CPU系统级寄存器和数据结Biblioteka Baidu(1)
1
3
4
2
2 3
大家在这张图中,注意寄
存器类别之间的关系.
整理ppt
整理ppt
8
寄存器分类介绍(4)
控制寄存器(CR0, CR1, CR2, CR3, and CR4)
在这些寄存器中, 设置标志位的主要 集中在CR0与CR4.
整理ppt
9
寄存器分类介绍(5)
控制寄存器(CR0, CR1, CR2, CR3, and CR4)
CR0
PG:分页有效时,置位为1,清空时为0.与PE一同使用.该指令表明是否 使用页表将线性地址转换成物理地址
4
32位CPU系统级寄存器和数据结构(2)
15
0
31
0
逻辑地址
选择符
偏移量
线性地址
描述符表
基地址 段描述符
+
31
22 21
12 11
0
页目录
页表项
页内偏移值
页目录表
页表
页框
CR3
页目录项
页表项
物理地址
逻辑地址 线性地址物理地址转换图
整理ppt
5
寄存器分类介绍(1) -------通用寄存器
AX
BX
种类:
CR0: 控制系统的工作模式和处理器的状态 CR1: 保留 CR2 :保留出错的线性地址 CR3:页目录基址的物理地址和PCD和PWT标志位(和CACHE有关) CR4:一些结构的扩展.表明对于特定的处理器和操作系统执行支持.
由实模式转换到保护模式、二级页面映射机制的建立、中断处理等等,会用到这 些寄存器,.
DR6
B0—B3:断点状态的监测
BD:调试寄存器访问监测.置位,表明在指令流中,下一条指令将访问其中
的一个调试寄存器
BS:单步执行标志位
BT:任务转换标志位
DR7:
L0—L3:局部断点使能标志位
G0--G3: 全局断点使能标志位
LE AND GE:置位,表明处理器可以监测导致数据断点的指令.推荐 置位为1.
GD:通用监测使能标志位.表明是否开启调试寄存器保护.
LEN0 through LEN3 : 用来表明相应断点地址寄存器内存位置的大 小.
R/W0 through R/W3: 相应断点的状态
整理ppt
14
寄存器分类介绍(10) ---中断和异常管理寄存器
中断描述符表(IDT)
该位
EM;该位表明是否需要仿真协处理器的功能
MP:协处理器监视标志位
PE: 保护模式使能,当设置有效位,CPU工作在保护模式.反之,实模式.
整理ppt
10
寄存器分类介绍(6)
控制寄存器(CR0, CR1, CR2, CR3, and CR4)
CR3: PCD:控制当前页目录表的缓冲,当设置清空时,缓冲.置位时,缓冲无效.与 CR0中的CD或PG一同使用
CD: cache 缺失设置位 NW:直写无效(直写:高速缓存中的数据始终保持与主存储器中数据匹配 ) AM: 对齐功能屏蔽(与EFLAGS寄存器中 AC标志位一同使用) WP:写保护 NE: 数字错误标志位(与浮点协处理器共同使用) ET: 扩展类型.设置有效位时,支持 ntel 387 DX 数学协处理器指令. TS: 每当任务切换时就设置该位,并且在解释协处理器指令之前测试
置标志位的有效位 看你具体要做什么, 对应的位置置有效的
标志位
Figure : System Flags in the EFLAGS Register
整理ppt
7
寄存器分类介绍(3)
控制寄存器((CR0, CR1, CR2, CR3, and CR4)
作用:控制寄存器决定处理器的操作模式和当前执行任务的一些特 征
OSFXSR:置位.表明操作系统支持FXSAVE and FXRSTOR指令 OSXMMEXCPT:置位.表明操作系统支持不可屏蔽的SIMD浮点异常.
整理ppt
11
寄存器分类介绍(7)
调试寄存器
作用:调试寄存器主要作用是调试应用代码、系统代码、 开发多任务操作系统.来监视代码的运行和处理器的性 能.
PWT:控制cache采取直写还是回写的策略.当设置清空时,回写有效.当置位时,直写有 效.
CR4:
VME:虚地址模式.当清空时,无效. PVI:保护模式虚中断,当清空时,无效 TSD:时间戳允许标志位.当清空时,允许RDTSC指令执行在任务特权级上.当置位时,
只允许工作在特权级0. DE:调试扩展.置位,表明DR4与DR5将产生没有定义的异常 PSE:当置位,使用4M的页面;清空,使用4K的页面 PAE:置位,使用36物理内存的分页机制.清空时,使用32位分页机制 MCE:置位,使用机器检查异常机制. PGE:置位,启动全局页面.当写CR3时,也不会被替换. PCE:置位,表明使RDPMC指令工作在任何保护级别.
系统软件开发指南系列
---Intel X86 CPU系列的寄存器
整理ppt
1
主要内容
学习寄存器知识的意义 32位CPU系统寄存器和数据结构 寄存器分类介绍
通用寄存器 标志寄存器 控制寄存器 调试寄存器 中断和异常管理寄存器 内存管理寄存器
在操作系统上用到的寄存器
整理ppt
2
学习寄存器知识的意义