操作系统研讨1-80386架构主要寄存器组_第1页
操作系统研讨1-80386架构主要寄存器组_第2页
操作系统研讨1-80386架构主要寄存器组_第3页
操作系统研讨1-80386架构主要寄存器组_第4页
操作系统研讨1-80386架构主要寄存器组_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、80386架构的主要寄存器组研讨第研讨第1 1组组简介-Intel CPU的发展史早期:4 4位微处理器位微处理器:40044004,8 8位微处理器位微处理器:80088008,80808080 x86时代:1616位微处理器位微处理器(2020地址总线):地址总线):80868086,80888088(8 8位),位),8018680186(220220即:即:寻址能力为寻址能力为1MB1MB)1616位微处理器位微处理器(2424地址总线):地址总线):8028680286(224224即寻址能力为即寻址能力为16MB16MB,多任,多任务,多系统)务,多系统)3232位微处理器位微处理

2、器(3232地址总线)地址总线):80386:80386(232232即寻址能力为即寻址能力为4GB4GB,全面支,全面支持持3232位数据类型和位数据类型和3232位操作),位操作),8048680486第五代微处理器:第五代微处理器:Pentium Pentium 和和Pentium ProPentium Pro等(等(3232位微处理器,区别在位微处理器,区别在于数据总线和地址总线有所拓展,比如于数据总线和地址总线有所拓展,比如 Pentium Pentium 的数据总线达到的数据总线达到64 64 位,而位,而 Pentium Pro Pentium Pro 的地址总线位数达到了的地址

3、总线位数达到了3636位。)位。)寄存器简介寄存器就是个存储信息的单元或者说是器件又或者寄存器就是个存储信息的单元或者说是器件又或者说是容器而已,就比如内存也是一个存储介质或者说是容器而已,就比如内存也是一个存储介质或者说是存储单元而已,其实寄存器从理解上来说和内说是存储单元而已,其实寄存器从理解上来说和内存差不多,只不过寄存器(这里讨论的寄存器都是存差不多,只不过寄存器(这里讨论的寄存器都是 CPU CPU 中的寄存器,不包括外设上的寄存器)位于中的寄存器,不包括外设上的寄存器)位于CPUCPU内部,而内存位于内部,而内存位于 CPU CPU 外部外部。而且,寄存器比内存珍贵得多而且,寄存器

4、比内存珍贵得多,就拿内存和硬盘来就拿内存和硬盘来比,内存在使用上珍贵得多,是比,内存在使用上珍贵得多,是PCPC中的稀有资源,中的稀有资源,而寄存器是而寄存器是 CPU CPU 中的稀有资源,内存和寄存器相中的稀有资源,内存和寄存器相比就像硬盘和内存相比一样比就像硬盘和内存相比一样 。寄存器简介不同的不同的 CPU CPU ,寄存器的个数和结构都是不一样的。,寄存器的个数和结构都是不一样的。比如比如 8086 CPU 8086 CPU 中,寄存器的个数也就中,寄存器的个数也就 14 14 个而已,个而已,并且并且 8086 CPU 8086 CPU 中所有的寄存器的结构为中所有的寄存器的结构为

5、 16 16 位,即位,即一个寄存器中可以存放下一个寄存器中可以存放下 2 B 2 B 即即 2 2 个字节。个字节。而到了而到了 80386 CPU 80386 CPU 中,寄存器的个数也比中,寄存器的个数也比 8086 8086 增增多了,比如在多了,比如在 80386 80386 中添加了系统地址寄存器等寄中添加了系统地址寄存器等寄存器,同时寄存器的结构也变了,比如在存器,同时寄存器的结构也变了,比如在 80386 80386 中中绝大多数的寄存器为绝大多数的寄存器为 32 32 位,而有些寄存器则是位,而有些寄存器则是 16 16 位位 。80386架构的主要寄存器组803868038

6、6共提供共提供7 7种类型的种类型的3232位寄存器,如下:位寄存器,如下:通用寄存器通用寄存器(EAX(EAX、EBXEBX、ECXECX、EDXEDX、ESPESP、EBPEBP、ESIESI、EDI)EDI)段寄存器段寄存器(CS(CS、SSSS、DSDS、ESES、FSFS、GS)GS)指令指针寄存器和标志寄存器指令指针寄存器和标志寄存器(EIP(EIP、EFLAGS)EFLAGS)系统表寄存器系统表寄存器(GDTR(GDTR、IDTRIDTR、LDTRLDTR、TR)TR)控制寄存器控制寄存器(CR0(CR0、CR1CR1、CR2CR2、CR3CR3、CR4)CR4)调试寄存器调试寄

7、存器(DR0(DR0、DR1DR1、DR2DR2、DR3DR3、DR4DR4、DR5DR5、DR6DR6、DR7)DR7)1.1. 测试寄存器测试寄存器(TR6(TR6、TR7)TR7)前四类寄存器大致示意图通用寄存器通用寄存器(EAX(EAX、EBXEBX、ECXECX、EDXEDX、ESPESP、EBPEBP、ESIESI、EDI)EDI)-段寄存器段寄存器(CS(CS、SSSS、DSDS、ESES、FSFS、GS)GS)-指令指针寄存器和指令指针寄存器和标志寄存器标志寄存器(EIP(EIP、EFLAGS)EFLAGS)-系统表寄存器系统表寄存器(GDTR(GDTR、IDTRIDTR、LD

8、TRLDTR、TR)TR)详细介绍通用寄存器一组八个通用寄存器是对一组八个通用寄存器是对8086/802868086/80286通用寄存通用寄存器的器的3232位扩展,其用法与在位扩展,其用法与在8086/802868086/80286中相似,中相似,支持支持8 8位、位、1616位、位、3232位操作,进行位操作,进行3232位操作是,位操作是,寄存器名称前面冠以寄存器名称前面冠以“E”E”。这八个寄存器的名称如下:这八个寄存器的名称如下:EAXEAX(累加器)、(累加器)、EBXEBX(基址)、(基址)、ECXECX(计数)、(计数)、EDXEDX(数据)、(数据)、ESPESP(栈指针)

9、、(栈指针)、EBPEBP(基址指(基址指针)、针)、ESIESI(源变址)、(源变址)、EDIEDI(目的变址)。(目的变址)。详细介绍段寄存器8038680386比比8086/802868086/80286增加了两个段寄存器增加了两个段寄存器FSFS、GSGS。除除CSCS支持代码段,支持代码段,SSSS支持堆栈段外,程序员可支持堆栈段外,程序员可以利用其它的所有段寄存器支持数据段。以利用其它的所有段寄存器支持数据段。每个段寄存器对应这一个每个段寄存器对应这一个6464位高速缓存器(有位高速缓存器(有些资料中说有些资料中说有9696位,但值使用其中的位,但值使用其中的6464位),位),这

10、在这在80868086中是没有的(在中是没有的(在8028680286中为中为4848位)位)。详细介绍指令指针寄存器 指令寄存器指令寄存器EIPEIP是对是对8086/802868086/80286指令指针寄存指令指针寄存器的器的3232位扩展,它包含着待执行指令的位扩展,它包含着待执行指令的3232位偏位偏移量,该值总是相对移量,该值总是相对CSCS所代表的段基址而言的。所代表的段基址而言的。详细介绍标志寄存器标志寄存器也是对标志寄存器也是对8086/802868086/80286标志寄存器的标志寄存器的3232位扩展,其定义如下位扩展,其定义如下图:图:详细介绍标志寄存器其中其中OFOF

11、、DFDF、IFIF、TFTF、SFSF、ZFZF、AFAF、PFPF和和CFCF在在80868086中就中就已经存在已经存在。IOPLIOPL(I/O Privilege LevelI/O Privilege Level)是从)是从8028680286开始出现的,开始出现的,占占2 2个个bitbit表示表示I/OI/O特权级,如果当前特权级小于或等于特权级,如果当前特权级小于或等于IOPLIOPL,则可以执行,则可以执行I/OI/O操作,否则将出现一个保护性异操作,否则将出现一个保护性异常。常。IOPLIOPL只能由特权级为只能由特权级为0 0的程序或任务来修改。的程序或任务来修改。NTN

12、T(Nested TaskNested Task)也是从)也是从8028680286开始出现的,表示嵌套开始出现的,表示嵌套任务,用于控制中断返回指令任务,用于控制中断返回指令IRETIRET,当,当NT=0NT=0时,用堆栈时,用堆栈中保存的值恢复中保存的值恢复EFLAGSEFLAGS、CSCS和和EIPEIP,从而实现返回;若,从而实现返回;若NT=1NT=1,则通过任务切换实现中断返回。,则通过任务切换实现中断返回。详细介绍标志寄存器下面的标志位是下面的标志位是8038680386以后的以后的CPUCPU才有的标志才有的标志:VMVM(Virtual-8086 modeVirtual-8

13、086 mode)表示虚拟)表示虚拟80868086模式,如果模式,如果VMVM被置位且被置位且8038680386已已出于保护模式下,则出于保护模式下,则CPUCPU切换到虚拟切换到虚拟80868086模式,此时,对段的任何操作又模式,此时,对段的任何操作又回到了实模式,如同在回到了实模式,如同在80868086下运行一样。下运行一样。RFRF(Resume flagResume flag)表示恢复标志)表示恢复标志( (也叫重启标志也叫重启标志) ),与调试寄存器一起用,与调试寄存器一起用于断点和单步操作于断点和单步操作。ACAC(Alignment checkAlignment chec

14、k)表示对齐检查。这个标志是)表示对齐检查。这个标志是8048680486以后的以后的CPUCPU才有才有的。的。以下的三个标志是以下的三个标志是PentiumPentium以后的以后的CPUCPU才有的才有的:VIFVIF(Virtual interrupt flagVirtual interrupt flag)表示虚拟中断标志。)表示虚拟中断标志。VIPVIP(Virtual interrupt pending flagVirtual interrupt pending flag)表示虚拟中断挂起标志。)表示虚拟中断挂起标志。IDID(Identification flagIdentifi

15、cation flag)表示鉴别标志。该标志用来只是)表示鉴别标志。该标志用来只是Pentium Pentium CPUCPU是否支持是否支持CPUIDCPUID的指令。的指令。详细介绍系统表寄存器80386 80386 中有中有4 4个系统表寄存器,分别是全局描述个系统表寄存器,分别是全局描述符表寄存器符表寄存器(GDTR)(GDTR)、中断描述符表寄存器、中断描述符表寄存器(IDTR)(IDTR)、局部描述符表寄存器、局部描述符表寄存器(LDTR)(LDTR)、任务状、任务状态寄存器态寄存器(TR)(TR)。系统表寄存器用于在保护方式下,管理系统表寄存器用于在保护方式下,管理4 4个系统个

16、系统表,由于只能在保护方式下使用,因此又称为表,由于只能在保护方式下使用,因此又称为保护方式寄存器。保护方式寄存器。详细介绍控制寄存器8038680386的控制寄存器有的控制寄存器有4 4个,其中个,其中CR1CR1保留以后使用,从保留以后使用,从PentiumPentium开开始,又增加了一个始,又增加了一个CR4CR4,CR0CR0的低的低1616位包含了与位包含了与8028680286的的MSWMSW一致的一致的位定义,保持了和位定义,保持了和8028680286的兼容,同时也兼容了从的兼容,同时也兼容了从8028680286开始的两开始的两条指令条指令LMSW/SMSWLMSW/SMS

17、W,其基本定义如下:,其基本定义如下:详细介绍控制寄存器CR0CR0中各位含义如下:中各位含义如下:PEPE(Protection EnableProtection Enable)保护模式允许,)保护模式允许,PE=0PE=0表示表示CPUCPU工作在实模式,工作在实模式,PE=1PE=1表示表示CPUCPU工作在保护模式工作在保护模式MPMP(Monitor CoprocessorMonitor Coprocessor)监控协处理器,)监控协处理器,MP=1MP=1表示协处理器在工作,表示协处理器在工作,MP=0MP=0表示协处理器未工作。表示协处理器未工作。EMEM(EmulationEm

18、ulation)协处理器仿真,当)协处理器仿真,当MP=0MP=0,EM=1EM=1时,表示正在使用软件仿时,表示正在使用软件仿真协处理器工作。真协处理器工作。TSTS(Task SwitchedTask Switched)任务转换,每当进行任务转换时,)任务转换,每当进行任务转换时,TS=1TS=1,任务转换,任务转换完毕,完毕,TS=0TS=0。TS=1TS=1时不允许协处理器工作。时不允许协处理器工作。以上以上4 4个定义从个定义从8028680286开始,下面的开始,下面的2 2个定义从个定义从8038680386开始存在开始存在:ETET(Extension TypeExtension Type)处理器扩展类型,反映

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论