当前位置:
文档之家› 微机原理第二章课件-8086_8088微处理器的内部结构分解
微机原理第二章课件-8086_8088微处理器的内部结构分解
执行部件负责执行指令。通常,从指令队列中 取得等待执行的指令。组成如下: (1) 算术逻辑单元ALU:完成各种运算。 (2) 标志寄存器FR:用来保存ALU运算结果的一 些特征信息,如运算是否进位。 (3) 通用寄存器组:数据寄存器AX,BX,CX,DX和 寄存器BP,SP,SI及DI,均16位。 (4) 执行部件控制电路
3、BIU和EU的管理
BIU和EU可以并行工作,提高CPU效率。 (1) BIU监视着指令队列。当指令队列中有2个空字 节时,就自动把指令取到队列中。 (2) EU执行指令时,从指令队列头部取指令,然后 执行。如需访问存储器,则EU向BIU发出请求, 由BIU访问存储器。 (3) 在执行转移、调用、返回指令时,需改变队列 中的指令,要等新指令装入队列中后,EU才继 续执行指令。
4、寄存器结构
(1) 通用寄存器组 8086CPU有8个16位的通用寄存器,分2组。 ① 通用数据寄存器:AX,BX,CX,DX,用来存放数 据或地址,一个16位寄存器也可以当作两个8位寄存 器用,此时表示为AH,AL;BH,BL;CH,CL;DH,DL。
② 基地址寄存器BP,堆栈指针寄存器SP,源变址 寄存器SI和目的变址寄存器DI主要存放地址,也可 以存放数据。
表示的范围。 ② 控制标志: DF:方向标志,用来控制串操作指令的执行。 DF=0则 串操作指令的地址自动增量;若DF=1,则自动减量。 IF:中断标志,用来控制对可屏蔽中断的响应。若IF=1 则允许CPU响应可屏蔽中断; IF=0,则CPU不能响应可 屏蔽中断。 TF:单步标志。若TF=1,则CPU进入单步工作方式, 即CPU每执行一条指令就自动产生一次内部中断;TF=0 则CPU正常执行。
(4) 标志寄存器FR
FR主要用来标志运算结果的状态,以及控制CPU的 操作。各标志位定义如图2. 2所示(共有9个志):
下图是80x86微处理器的标志寄存器,从 图中可知,他们是向下兼容的。
标志位共有9个,6个是状态标志,用来表示运算结果的 特征,包括CF、PF、AF、ZF、SF和OF;3个是控制标志, 用来控制CPU的操作,包括IF、DF和TF。 ① 状态标志: CF:进位标志,表示本次运算中最高位(第7位或第15 位)有进位或有借位。 PF:奇偶标志。 PF=1表示本次运算中低8位有偶数个 “1”; PF=0表示有奇数个“1”。 AF:辅助进位标志。 AF=1表示本次运算第3位向第4位有 进位或有借位。在十进制运算中作为是否进行十进制调整 的依据。 ZF:零标志。ZF=1表示本次运算结果为零,否则ZF=0 SF:符号标志。 SF=0为正数; SF=1为负数。 OF:溢出标志。 OF=1表示本次运算结果产生溢出,否则 OF=0。所谓溢出就是指运算结果超出了相应类型数据所能
(2) 段寄存器 8086的寻址空间是1M字节,物理地址需要20 位的地址码。但CPU中的寄存器都是16位的。为 解决该问题采用了存储器分段技术。把1MB地址 分段,每段64KB,其起始地址的高16位装入一 个段寄存器中,称作段基地址,这四个段寄存器 的名称为: CS (代码段寄存器) DS (数据段寄存器) ES (附加段寄存器) SS (堆栈段寄存器)
(3) 6字节的指令队列:总线接口部件从内 存中取来的指令放在一个缓冲区中,这个 缓冲区叫指令队列。执行部件在执行指令 过程中从指令队列取来指令执行。 (4) 输入/输出控制电路:该控制电路将 8086CPU的片内总线与系统总线相连,是 8086CPU与外部交换数据的必经之路。
2、执行部件EU(Execution Unit)
EU
BIU
图2. 1 8086 CPU内部逻辑结构
1、总线接口部件BIU
总线接口部件负责与存储器、输入/输出 端口传送数据。 总线接口部件组成: (1) 专用寄存器组:段地址寄存器CS、DS、 ES、SS和指令指针寄存器IP,均为16位。 (2) 地址加法器:8086在寻址1M字节地址 空间时需用20位地址,这个地址就是由地址 加法器产生的。
具体的说,地址加法器将段寄存器(16位) 的内容左移4位,然后与指令指针寄存器IP 的内容相加得到20位的物理地址。 例如:从内存取指令时, (CS)=5760H,(IP)=1234H,则物理地址 为: 57600H+ 1234H =57934H。 这里,先将段寄存器CS左移4位(16进 制数只需后面加一个零)。
第二章 微型计算机系统结构
第一节 CPU的内部逻辑结构
一、CPU的组成和功能
1、CPU的组成 CPU主要由运算器、控制器、寄存器组和片内总线等 组成 2、CPU的功能
(1) 指令控制
(3) 时序控制
(2) 操作控制
(4) 执行指令
(5) 数据加工(运算)
二、8086/8088微处理器的内部结构
8086是16位的微处理器,有16位数据线 和20位地址线,可寻址220个字节,即 220 =1MB=1048576B 8088是准16位微处理器,内部为16位,外 部数据线为8位。 8086是本课的重点,它主要分为两个独立 的功能模块,总线接口模块BIU和执行部件 EU,它们可以并行工作。如图2.1所示。
8086设置了这4个16位段寄存器,通过这四个段 寄存器,CPU可以定位4个逻辑段,分别为:当前代 码段、当前数据段、当前附加段和当前堆栈段。 注意,每个逻辑段在实际存储器中的位置是可以 浮动的,其起始地址的高16位装在段寄存器中,称 作段基地址。当程序很大,超过64KB时,则可以定 义多个代码段、数据段和附加段。 不同的逻辑段可以相交,甚至可以完全重叠。参 见书上图2. 8。 (3)指令指针寄存器IP 该寄存器的内容用来指明将要执行的下一条指令在 代码段中的位置。总线接口部件BIU负责修改IP寄存 器的值,使它始终指向将要执行的下一条指令。
8086以上的CPU其寄存器阵列如下图所示,阴 影部分是80386以上的32位微处理器的寄存器。
5、8088与8086的区别