微型计算机接口技术 教学课件 ppt 作者 古辉 主编 12章-32位微机原理与接口技术

上传人:E**** 文档编号:89245161 上传时间:2019-05-22 格式:PPT 页数:53 大小:231.51KB
返回 下载 相关 举报
微型计算机接口技术 教学课件 ppt 作者 古辉 主编 12章-32位微机原理与接口技术_第1页
第1页 / 共53页
微型计算机接口技术 教学课件 ppt 作者 古辉 主编 12章-32位微机原理与接口技术_第2页
第2页 / 共53页
微型计算机接口技术 教学课件 ppt 作者 古辉 主编 12章-32位微机原理与接口技术_第3页
第3页 / 共53页
微型计算机接口技术 教学课件 ppt 作者 古辉 主编 12章-32位微机原理与接口技术_第4页
第4页 / 共53页
微型计算机接口技术 教学课件 ppt 作者 古辉 主编 12章-32位微机原理与接口技术_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《微型计算机接口技术 教学课件 ppt 作者 古辉 主编 12章-32位微机原理与接口技术》由会员分享,可在线阅读,更多相关《微型计算机接口技术 教学课件 ppt 作者 古辉 主编 12章-32位微机原理与接口技术(53页珍藏版)》请在金锄头文库上搜索。

1、1,第十二章 32位微机原理与接口技术,2,本章要点,通用寄存器,段寄存器,专用寄存器,系统地址寄存器,系统段寄存器,控制寄存器,调试寄存器,测试寄存器 实地址模式,虚地址保护模式,虚拟8086模式,系统管理模式SMM 处理器选择伪指令 虚拟设备驱动程序(VxD),WINDOWS驱动程序模型(WDM) VxD设备描述符块DDB,3,本章学习目标,掌握32位微处理器中新增的寄存器组。 了解32位微处理器的三种工作模式:实模式、虚拟地址保护模式、虚拟8086模式、系统管理模式SMM。 了解32位微机中新增指令集 了解虚拟设备驱动程序(VxD)基础知识和WINDOWS驱动程序模型(WDM)基础知识。

2、,4,12.1 32位微处理器,Intel 80x86主流CPU系列不断创新和改进,从80386开始,到80486、Pentium、 Pentium II/ III、 Pentium 4等都是32位的微处理器,支持32位数据类型,32位操作系统和32位的物理地址。 从80386开始就具备了3种工作模式,即实地址模式、虚地址保护模式、虚拟8086模式。到80486DX又增加了 1种工作模式,即系统管理模式(SMM)。,5,12.1.1 32位微处理器的寄存器组,32位微处理器中除了包含8位和16位寄存器外,还引入了若干32位寄存器。80386及其后继机型的可见寄存器组如图12.1所示。 通用寄存

3、器 32位x86CPU的32位通用寄存器有8个,分别是EAX、 EBX、 ECX 、EDX、 ESI、 EDI、 EBP 、ESP.,它们是8086/8088CPU中16位寄存器AX 、BX 、CX 、DX、 SI 、DI、 BP、 SP的扩展 这些32位的寄存器可以用来保存数据、传送数据、保存算术运算和逻辑运算的结果,并且所有32位的通用寄存器都可以用于存放地址,在基址、变址寻址方式中使用。另外在专用特性上,和原16位寄存器的专用特性上是一致的,如EAX专用于乘除法和I/O指令。ECX具有循环计数特性,ESI 和EDI作为串处理指令专用的地址寄存器等。,6,12.1 32位微处理器中可见寄存

4、器组,7,12.1.1 32位微处理器的寄存器组,段寄存器 除了原有的CS 、DS、 ES 、SS外,32位微处理器中还增加了2个段寄存器FS 和 GS,也属于附加的数据段。程序在不重新设置段寄存器值的情况下,能访问6个不同的段。内存单元的逻辑地址仍采用段地址:偏移地址的形式。但是在保护模式下,段寄存器的内容不再是段值,而是在系统中能够查找到段的一个选择符。 专用寄存器 32位微处理器中的EIP和EFLAGS是16位指令指针寄存器IP和标志寄存器FLAGS的扩展。EFLAGS是在16位FLAGS的基础上扩展了8个控制标志位和4个状态标志位,其他标志位的位置和意义与16位中的相同。见图12.2。

5、,8,12.1.1 32位微处理器的寄存器组,专用寄存器中扩展的控制标志位的含义为: I/O特权标志位IOPL(I/O Privilege Level):占2位,用来表示I/O操作处于03级特权中的哪一级,只有当前特权级CPL在数值上小于或等于IOPL,I/O指令才可以执行。IOPL仅用于保护虚地址方式。,图12.2 32位EFLAGS标志寄存器,9,12.1.1 32位微处理器的寄存器组,专用寄存器中扩展的控制标志位的含义为: 嵌套任务标志NT(Nested Task):当该位被置1的时候,表示当前执行的任务正嵌套在另一任务中,否则该位清0。置1和清0都是通过向其他任务的控制转移来实现的,N

6、T 也仅用于虚地址方式。在保护模式下中断和CALL指令可以引起任务切换,任务切换时,NT置1 ,否则清0。在中断返回指令IRET执行时,如果NT=1,则中断返回引起任务切换前的程序段,否则只产生任务内的控制转移。 重启动标志RF(Restart Flag):配合调试寄存器的断点或单步操作一起使用,在处理断点之前,在两条指令之间检查到RF为1,则下一条指令执行时的调试故障被忽略。在一条指令完整执行完后,将RF清0。当接收到一个非调试故障的故障信号时,RF置1。,10,12.1.1 32位微处理器的寄存器组,专用寄存器中扩展的控制标志位的含义为: 虚拟8086方式标志VM(Virtual 8086

7、 Mode):VM位置1,表示80386工作在虚拟8086模式。 对齐检查标志AC(Alignment Check):当AC=1时,表示有对齐故障,即一个字访问操作时的访问地址是奇地址,或者一个双字访问操作的访问地址是一个不在双字边界上的地址等。对齐故障只由特权级3的运行产生,在特权级02上可以忽略AC中位的设置。 虚拟中断允许标志位VIF(Virtual IF):VIF=1表示允许虚拟8086模式或允许保护模式虚拟中断。虚拟中断标志是所有中断标志的虚拟映像。,11,12.1.1 32位微处理器的寄存器组,专用寄存器中扩展的控制标志位的含义为: 虚拟中断挂起标志VIP(Virtual IP):

8、当允许虚拟8086方式扩充或允许保护模式虚拟中断时,该位指示虚拟中断是否挂起。当VIF=0时,VIP强制为0,否则为1。 标识标志ID:其功能是测试微处理器是否支持CPU标识指令CPUID。CPUID的作用是给软件提供提供Intel系列机型号、软件在微处理器上的执行步骤等信息。,12,12.1.1 32位微处理器的寄存器组,从80386开始,在CPU中设置了4个系统级寄存器,它们分别是全局描述符表寄存器GDTR、中断描述符表寄存器IDTR、局部描述符表寄存器LDTR和任务寄存器TR。其中GDTR和IDTR称为系统地址寄存器,LDTR和TR称为系统段寄存器。这些寄存器只在保护模式下使用。 GDT

9、R和IDTR必须在转入保护模式之前进行初始值设定,这两个寄存器在实地址模式下可以访问。LDTR和TR只能在保护模式下使用,程序只可以访问段选择寄存器,其他的缓冲部分是在任务切换时由LDT描述符和TSS描述符中自动装入的。,13,12.1.1 32位微处理器的寄存器组,系统地址寄存器和系统段寄存器 全局描述符表寄存器GDTR:是一个48位的寄存器,用来存放全局描述符表(GDT)的32位线性基地址和16位界限值。 中断描述符表寄存器IDTR:是一个48位的寄存器,用来存放中断描述符表(IDT)的32位线性基地址和16位界限值。 局部描述符表寄存器LDTR:是一个16位的寄存器,用来存放局部描述符表

10、(LDT)的段选择字。 任务寄存器TR:是一个16位的寄存器,用来存放任务状态段表(TSS)的段选择字。,14,12.1.1 32位微处理器的寄存器组,32位微处理器为了控制管理的需要,配备了控制寄存器。在80386中配备了3个32位的控制寄存器(CR0,CR2,CR3),发展到Pentium微处理器时,就有5个控制寄存器(CR0CR4),不过,控制寄存器中的一些位被重新定义了。这些控制寄存器中保存着全局性的和任务无关的机器状态,供应用程序读取,而写这些控制寄存器的操作被大多数系统禁止。 5个控制寄存器,示意如图12.3。,15,图12.3 32位微处理器中控制寄存器,16,12.1.1 32

11、位微处理器的寄存器组,控制寄存器 CR0:机器状态字 PE:保护模式允许位,当PE=1时表示启动系统后进入保护模式;PE=0表示实地址模式。 MP:浮点协处理器监控位。MP=1,表示有协处理器在工作,MP=0表示协处理器未工作。 EM:模拟浮点协处理器位。EM=1,表示用软件仿真协处理器,即没有配备浮点部件。 TS:任务切换位。每次任务切换的时候,微处理器都将该位置1。CLTS指令将该位置0。在解释浮点算术运算指令时要测试该位。,17,12.1.1 32位微处理器的寄存器组,控制寄存器 CR0:机器状态字 ET:处理器扩展类型位。ET=1表示系统中配置了80387数值协处理器,使用32位协处理

12、器协议,ET=0,表示系统中配置80287数值协处理器,使用16位协处理器协议。在Pentium中这位保留。EM=1时ET位失效。 NE:数据异常中断控制位。NE=1表示执行浮点运算指令时发生故障,产生异常中断16。NE=0同MS DOS系统中以前所用的所有协处理器的控制之间保持兼容。 WP:写保护控制位。WP=1表示表示禁止来自管理程序级的写操作写到用户级的页面上。WP=0通过管理进程可以对用户级的只读页面进行写操作。,18,12.1.1 32位微处理器的寄存器组,控制寄存器 CR0:机器状态字 AM:定位屏蔽控制位。AM=1时,EFLAGS中的AC位有效,要进行定位检查。AM=0时,AC位

13、无效,禁止对准校验。 NW:不写贯穿位。NW=1禁止通写CACHE。NW=0允许CACHE变成通写方式。 CD:高速缓存禁止位。CD=1表示禁止填充高速缓存,错误命中发生也不取指令或数据。CD=0表示允许填充高速缓存。 PG:页式管理使能位。PG=1表示允许存储分页,否则禁止存储分页。 CR0的值在系统复位的时候,初始值为60000010H。,19,12.1.1 32位微处理器的寄存器组,控制寄存器 CR1:保留控制寄存器,没有定义。 CR2:页故 障线性地址寄存器。 其中存放的是一个32位的线性地址,在分页操作期间,如果出现异常,则产生引起这次异常事故的全32位线性地址保存在CR2中。只有C

14、R0的PG=1时,CR2才有效。 CR3:页目录基址寄存器。 20位保存页目录表的物理基地址,因为Pentium的页目录表是按页排列的。 PWT:页面写贯通。PWT=1表示对当前所访问的页实现通写。PWT=0则实现写返回。 PCD:禁止CACHE。PCD=1表示不能对页面目录进行高速缓冲操作。PCD=0则允许进行高速缓冲操作。,20,12.1.1 32位微处理器的寄存器组,控制寄存器 CR4:CPU结构扩展位。其中各位名称和作用如下: VME:虚拟8086方式扩充。VME=1允许虚拟8086方式扩充,VME=0禁止虚拟8086方式扩充。 PVI:保护模式虚拟中断。PVI=1允许保护模式虚拟中断

15、,PVI=0禁止保护模式虚拟中断。 TSD:禁止定时标志。TSD=1且当前特权级不为0时,禁止RDTSC指令(读时间标志计数器指令)且执行这一指令时将产生故障。TSD=0表示在任何特权级上都允许RDTSC指令执行。 DE:调试扩充位。DE=1表示允许调试扩充。DE=0禁止调试扩充。实际上该位控制是否支持I/O断点。,21,12.1.1 32位微处理器的寄存器组,控制寄存器 CR4:CPU结构扩展位。 PSE:页大小扩展位。PSE=1允许使用4MB的页面。PSE=0禁止使用4MB的页面。 MCE:允许机器检查。MCE=1允许机器检查异常。MCE=0禁止机器检查异常。 复位后CR4的内容为0。 调

16、试寄存器和测试寄存器 32位微处理器中共支持8个32位的可编程调试寄存器,命名为DR0DR7。其中DR0DR3为断点地址寄存器。DR4,DR5保留。DR6为调试状态寄存器,保存断点状态;DR7为调试控制寄存器,用于控制设置断点。,22,12.1.1 32位微处理器的寄存器组,调试寄存器和测试寄存器 32位微处理器中设置了8个测试寄存器,命名TR0TR7。0未定义。TR1、TR2在Pentium中使用。TR3、TR4、TR5用于测试片上高速缓存。TR6、TR7用于支持转换旁视缓冲器TLB的测试。,23,12.1.2 32位微处理器的工作模式,32位微处理器的工作模式从3种发展到4种,这4种工作模式分别是实地址模式、虚地址保护模式、虚拟8086模式和系统管理模式SMM。 实地址模式 当系统复位或上电时,系统自动进入实地址模式。在此模式下,采用类似于8086的体系结构,操作数默认长度是16位,存储器的物理地址形成和8086相同,可寻址的空间为1MB,所有段的最大容量为64KB。中断向量表在00000H003FFH的1KB存储区,系统初始化区在0FFFFFFF00FFFFF

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号