网站大量收购闲置独家精品文档,联系QQ:2885784924

(微型计算机原理)第2章微处理器结构及微型计算机工作原理.ppt

(微型计算机原理)第2章微处理器结构及微型计算机工作原理.ppt

  1. 1、本文档共86页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6. 分页部件 分页部件由加法器、页高速缓冲存储器及控制和属性PLA组成。它的任务是将分段部件或代码预取部件产生的线性地址转换成物理地址。 在操作系统软件控制下,若分页部件处于允许状态, 便执行线性地址向物理地址的转换,同时还需检验标准存储器访问与页属性是否一致。若分页部件处于禁止状态,则线性地址即为物理地址。 从线性地址到物理地址的转换实际上是将线性地址表示的存储空间再进行分页。页高速缓冲存储器也称转换旁视缓冲存储器TLB(Translation Lookaside Buffer),它用来加速线性地址到物理地址的转换。页是一个大小固定的存储块,每页存储空间有 4 KB。 物理地址一旦由分页部件形成,立即送BIU以便进行存储器访问操作。 2.3.2 80386 CPU的寄存器 图 2.7 80386 CPU的基本寄存器集 1. 通用寄存器 4 个通用寄存器是EAX、 EBX、 ECX、 EDX。 它们均是 32 位,且低 16 位被独立命名为 AX、 BX、 CX、 DX。 这样,80386 CPU便可与 8086 CPU、 80286 CPU的寄存器集兼容,再加上它们指令系统的兼容性, 使得在8086 CPU、 80286 CPU上编写的程序可以不加修改地在 80386 CPU上运行。EAX、EBX、 ECX、 EDX是在原 16 位通用寄存器集上扩充为 32 位时,加入代表扩充前缀的“E”形成的, 并且它们的高 16 位没有独立命名,也不能独立访问。 16 位通用寄存器AX、 BX、CX、 DX的每一个既可当作一个 16 位寄存器,又可当作两个独立的 8 位寄存器进行访问。这 4 个 16 位通用寄存器的高 8 位被分别命名为AH、 BH、 CH、 DH; 低 8 位分别被命名为AL、BL、CL、DL。这样,80386 CPU中 4 个通用寄存器EAX、 EBX、 ECX、 EDX的每一个既可当作 32 位寄存器, 又可将低 16 位当作一个 16 位寄存器或两个独立的 8 位寄存器被访问。 而且, 对 16 位寄存器、 32 位寄存器低位上的操作不影响高 8 位或高 16 位的内容。 4 个 32 位通用寄存器既可用来存放操作数,也可用来存放操作数地址,而且在形成地址的过程中还可进行加减运算。 然而,4 个 16 位通用寄存器在 8086 方式运行时,主要用来存放操作数,只有BX寄存器可用来存放操作数地址。 在串操作及乘除法操作中,常采用隐含(即不用显式指定寄存器名存放操作数)的方法,从固定的寄存器中取一个或多个操作数。 例如,32 位乘法指令便隐含地规定用EAX存放被乘数,而EDX:EAX存放乘积。 80386 CPU中通用寄存器的设计虽然对它们的使用没有什么限制,但是EAX(或AX或AL)通常还是用作累加器(Accumulator), 存放参加运算的一个操作数及其运算结果。同时, 大多数I/O指令和一些串操作需要EAX(或AX或AL)寄存器来存放操作数。EBX(或BX)通常用作基址寄存器(Base Register), 存放偏移地址。ECX(或CX)通常用来计数(Count), 在循环指令及重复串操作指令中它用来对循环次数计数。EDX(或DX)通常用来存放数据,并可用来存放I/O指令中的端口地址。 2. 变址寄存器 变址寄存器包括源地址(Source Index)寄存器ESI和目的地址(Destination Index)寄存器EDI。 它们都是 32 位寄存器, 并且其低 16 位分别被命名为 SI和DI,以便和 8086, 80286 相兼容。在串操作指令(如MOVS)中,ESI(或SI)常用来存放源操作数的偏移地址,而EDI(或DI)常用来存放目标操作数的地址。 在变址寻址方式中,ESI(或SI)及EDI(或DI)用作地址计算, 称为变址寄存器,存放存储器操作数的偏移地址。 ESI、 EDI、 SI、 DI也可与通用寄存器一样,用来存放 32 位或 16 位操作数。 3. 指针寄存器 80386 CPU的指针寄存器包括基地址指针(Base Pointer)寄存器EBP、 堆栈指针(Stack Pointer)寄存器ESP和指令指针寄存器EIP。 EBP及 ESP 的低 16 位也分别被独立命名为BP和SP。这两个指针寄存器都是为堆栈区的数据操作而设置的,用来存放堆栈区的偏移地址。 堆栈是一组寄存

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档