- 1、本文档共125页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
80x86CPU的体系结构
NMI RESET ③ 机器状态字寄存器MSW 机器状态字寄存器用来表示当前处理器所处的状态。 如下图所示,MSW寄存器是一个80286中新设计的16位寄存器,仅用了其中的四位。 图 机器状态寄存器 保护方式允许PE:PE=1,保护方式允许;PE=0,表示80286被置于实地址方式。不能被清除,只有通过硬件复位(RESET)才能从保护方式返回实地址方式。 监督协处理器MP:协处理器工作时,MP=1,否则。 协处理器仿真状态位EM:当MP=0时,协处理器未工作,若EM=1,表示系统可用软件仿真协处理器80287的功能,若EM=0,表示将允许协处理器操作码在80287上执行。 任务切换位TS:当两个任务正在切换时,TS=1,此时,不允许协处理器工作;当两个任务切换完成时,TS=0。80286复位时,TS被清“0”。 对于机器状态字寄存器中的有效标志位,其中的PE位用来使CPU进入虚地址保护方式,其余3位则具有控制协处理器接口的作用。 (3)段寄存器 80286的段寄存器包括:代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS、附加段寄存器ES,在程序中四个段寄存器分别用来指示不同段的起始地址。 每个段寄存器都是16位的,但实际上每个段寄存器都是由一个16位的段选择器和一个48位的段高速缓冲寄存器组成,如下图所示。 只有16位的段选择器可直接进行访问,而高速缓冲寄存器不能被程序直接访问,其作用是在寻址方式的控制下,参与实际物理地址的形成。它是80286在实现存储器管理功能时内部使用的寄存器。 图 80286的段高速缓冲寄存器 (4)描述符寄存器和任务寄存器 80286中的描述符寄存器分为GDTR(全局描述符寄存器)、LDTR(局部描述符寄存器)和IDTR(中断描述符寄存器),分别用来在虚地址保护方式下管理相应描述符表,这些描述符表为GDT(全局描述符表)、LDT(局部描述符表)、IDT(中断描述符表)。 TR(任务寄存器):存放正在执行任务的状态,用来对TSS(任务状态段)进行寻址。任务状态段用来存放任务环境。对TR寄存器的访问是由指令LTR、STR来实现的。 GDTR、IDTR既可以在实地址方式下使用,也可以在虚地址保护方式下使用,LDTR、TR只能在虚地址保护方式下使用。 二、80386微处理器基本结构 1. 80386微处理器结构 80386微处理器是Intel公司于1985年10月推出的一种高性能的32位CPU,其内部操作和寄存器都是32位的,采用132个引脚封装,数据线32条,地址线32条,最初的时钟频率为16Mhz,其运算速度可达3-4MIPs(每秒百万条指令),其内部结构如下图所示。 图 80386微处理器内部结构示意图 80386由中央处理器(CPU)、存储器管理部件(MMU)和总线接口部件(BIU)三大模块组成。 CPU包括指令预取、指令译码、指令执行部件;MMU包括分段部件(SU)和分页部件(PU);加上BIU部件,这样80386共有六个功能部件,六个功能部件可并行工作,构成六级流水线结构。 存储器管理部件中的分段部件可通过附加寻址部件对逻辑地址空间进行管理,可以实现任务之间的隔离,也可实现指令和数据区的再定位。分页部件的功能是管理物理地址空间,把分段部件和指令预取部件产生的线性地址送到分页部件中,并转换为物理地址。每个段可划分为1--4KB的页,为了实现虚拟存储系统,80386对于页面故障和段故障有完整的再启动功能。 2. 80386的工作方式 80386有三种工作方式:实地址方式、保护虚拟地址方式和虚拟8086方式(VM86方式)。在实地址方式下,80386就是一个工作速度极快的8086。实地址方式主要用于建立处理机状态,以便进入保护工作方式。在保护工作方式下, 用户可使用处理器的复杂存储管理、分页及特权功能。在保护方式下,通过软件可以实现任务切换,进入虚拟8086方式。虚拟8086任务可以被隔离和保护。 3. 80386的寄存器结构 80386含有通用寄存器、段寄存器、指令指针、标志寄存器、控制寄存器、系统地址寄存器、排错寄存器、测试寄存器等8类32个寄存器,它们包括了16位8086和80286的全部寄存器。 ①通用寄存器、段寄存器、指令指针和标志寄存器 图 通用寄存器组 80386中的标志寄存器是名为EFLAGS的32位寄存器。 虚拟8086方式标志位 恢复标志位 80386扩展的标志位是VM和RF,它们的功能是: 虚拟8086方式位VM(Virtual 8086 Mod
文档评论(0)