1. 首页
  2. 文档大全

第2章微型计算机组成及微处理器编程结构2

上传者:5****1 2022-07-08 02:14:17上传 PPT文件 1.99MB
第2章微型计算机组成及微处理器编程结构2_第1页 第2章微型计算机组成及微处理器编程结构2_第2页 第2章微型计算机组成及微处理器编程结构2_第3页

《第2章微型计算机组成及微处理器编程结构2》由会员分享,可在线阅读,更多相关《第2章微型计算机组成及微处理器编程结构2(60页珍藏版)》请在文档大全上搜索。

1、12.3 微处理器编程结构微处理器编程结构 2回顾回顾 3执行单元(执行单元(EUEU)总线接口单元(总线接口单元(BIUBIU) 总线控制逻辑总线控制逻辑 指令指针寄存器指令指针寄存器IPIP 段寄存器段寄存器 地址加法器地址加法器 指令队列缓冲器指令队列缓冲器1 1、BIUBIU1. 1. 总线接口单元( BIU BIU )1. 1. 总线接口单元( BIU BIU )功能:从内存中取指令到指令预取队列指令预取队列是并行流水线工作的基础负责与内存或输入/输出接口之间的数据传送在执行转移程序时,BIU使指令预取队列复位,从指定的新地址取指令,并立即传给执行单元执行。45执行单元(执行单元(E

2、UEU)总线接口单元(总线接口单元(BIUBIU) 算术逻辑单元(算术逻辑单元(ALUALU) EUEU控制电路控制电路 寄存器组寄存器组、U U2.2.执行单元(EUEU)2.2.执行单元(EUEU)功能指令译码指令执行暂存中间运算结果保存运算结果特征6指令的执行指令的执行在标志寄存器在标志寄存器FLAGS中中在在ALU中完成中完成在通用寄存器中在通用寄存器中7 80868086EUEUBIUBIUBUSBUS取指取指1 1忙忙取指取指2 2忙忙执指执指1 1取指取指3 3忙忙执指执指2 2取指取指4 4忙忙执指执指3 3取指取指5 5忙忙执指执指4 4t tt tt t指令的提取与执行分别

3、由指令的提取与执行分别由BIUBIU和和EUEU两部件完成,二两部件完成,二者既独立又相互配合者既独立又相互配合并行工作。并行工作。执指执指5 5忙忙3.80863.8086的内部结构特点的内部结构特点结论 指令预取队列的存在使指令预取队列的存在使EUEU和和BIUBIU两两个部分可同时进行工作,从而:个部分可同时进行工作,从而: (1)提高了CPU的效率; (2)降低了对存储器存取速度的要求88086CPU有14个寄存器 它们的名称为:AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW。101.首先讲解通用寄存器首先讲解通用寄存器AX、BX、CX、DX。2.

4、接下来讲接下来讲PSW。3.插入插入2.4 节存储器物理地址。节存储器物理地址。4.回归回归2.3节讲解段寄存器节讲解段寄存器CS、DS、ES、SS。5.专用寄存器专用寄存器SI、DI、SP、BP、IP。11寄存器寄存器寄存即暂存1. 8086CPU所有的寄存器都是16位的,可以存放两个字节。2. AX、BX、CX、DX 通常用来存放一般性数据被称为通用寄存器。一个16位寄存器可以存储一个16位的数据。下面以AX为例,我们看一下寄存器的逻辑结构。16位数据在寄存器中的存放情况1. 数据:182. 二进制表示:100103. 在寄存器AX中的存储:1. 8086上一代CPU中的寄存器都是8位的;

5、2.为保证兼容性,这四个寄存器都可以分为两个独立的8位寄存器使用。(1)AX可以分为AH和AL;(2) BX可以分为BH和BL;(3) CX可以分为CH和CL;(4) DX可以分为DH和DL。 以AX为例,8086CPU的16位寄存器分为两个8位寄存器的情况:1. AX的低8位(0位7位)构成了AL寄存器,高8位(8位15位)构成了AH寄存器。2. AH和AL寄存器是可以独立使用的8位寄存器。汇编指令初探汇编指令不区分大小写汇编指令初探CPU执行下表中的程序段的每条指令后,对寄存器中的数据进行的改变。汇编指令初探通用寄存器特有的习惯用法1. AX:累加器。所有I/O指令都通过AX与接口传送 信

6、息,中间运算结果也多放于AX中;2. BX:基址寄存器。在间接寻址中用于存放基地址;3. CX:计数寄存器。用于在循环或串操作指令 中存放计数值;4. DX:数据寄存器。在间接寻址的I/O指令中存放 I/O端口地址;在32位乘除法运算时,存放 高16位数。22236 6个个状态位状态位记录指令操作后结果的状态信息,由记录指令操作后结果的状态信息,由CPUCPU根根据结果自动设置据结果自动设置CFCF 进位标志进位标志SFSF 符号标志符号标志OFOF 溢出标志溢出标志PFPF 奇偶标志奇偶标志ZFZF 零标志零标志AFAF 辅助进位标志辅助进位标志CFCFPFPFAFAFZFZFOFOFSFS

7、FTFTFIFIFDFDF3 3 个个控制位控制位控制处理器的操作,根据需要由程序用指控制处理器的操作,根据需要由程序用指令设置令设置DFDF 方向标志方向标志IFIF 中断允许标志中断允许标志TFTF 陷阱标志陷阱标志24 d15 d11 d10 d9 d8 d7 d6 d4 d2 d0 OF DF IF TF SF ZF AF PF CF符号符号 名称名称 值为值为“1”的条件的条件 CF CF 进位标志进位标志 加加/ /减法时产生进位减法时产生进位/ /借位借位 OF OF 溢出标志溢出标志 结果超出有符号整数的范围结果超出有符号整数的范围 ZF ZF 零标志零标志 运算结果为运算结果

8、为0 0时时 SF SF 符号标志符号标志 运算结果的最高位为运算结果的最高位为“1 1”时时 AF AF 辅助进位标志辅助进位标志 运算半字节运算半字节(d d3 3)产生进位产生进位/ /借位借位 PF PF 奇偶标志奇偶标志 结果低结果低8 8位为位为“1 1”的位数为的位数为偶数偶数时时 DF DF 方向标志方向标志 串操作中地址指针为减地址串操作中地址指针为减地址 IF IF 中断允许标志中断允许标志 允许允许CPUCPU响应可屏蔽中断请求时响应可屏蔽中断请求时 TF TF 跟踪标志跟踪标志 CPUCPU处于单步执行的工作方式处于单步执行的工作方式251.1. 进位标志进位标志CFC

9、F是表示是表示是否超出范围;是否超出范围;2.2. 溢出标志表示的是溢出标志表示的是运算结果是否超出范围,超运算结果是否超出范围,超出范围则运算结果已经不正确;出范围则运算结果已经不正确;3.3. 处理器对两个操作数进行运算的时候是按照处理器对两个操作数进行运算的时候是按照求求得结果,并相应设置得结果,并相应设置CFCF,根据是否超出有符号数的范围,根据是否超出有符号数的范围设置设置OFOF;4.4. 对于程序员,如果做无符号运算,应该关心对于程序员,如果做无符号运算,应该关心CFCF,做有符,做有符号运算应该关心号运算应该关心OFOF。26状态标志位例n给出以下运算结果及运算后各状态标志位的


文档来源:https://www.renrendoc.com/paper/212691636.html

文档标签:

下载地址