微机原理2.

上传人:我** 文档编号:116986306 上传时间:2019-11-18 格式:PPT 页数:73 大小:2.65MB
返回 下载 相关 举报
微机原理2._第1页
第1页 / 共73页
微机原理2._第2页
第2页 / 共73页
微机原理2._第3页
第3页 / 共73页
微机原理2._第4页
第4页 / 共73页
微机原理2._第5页
第5页 / 共73页
点击查看更多>>
资源描述

《微机原理2.》由会员分享,可在线阅读,更多相关《微机原理2.(73页珍藏版)》请在金锄头文库上搜索。

1、电子与信息工程学院 第2章 微处理器 2.1 8086微处理器的结构 2.1.1 8086的功能结构 2.1.2 8086的寄存器结构 2.1.3 8086的工作模式和引脚特性 2.2 8086的系统组成和总线时序 2.2.1 8086的系统组成 2.2.2 8086的总线时序 电子与信息工程学院 第2章 微处理器 l 微处理器,中央处理单元(Central Processing Unit, CPU),采用大规模(LSI)或超大规模集成电路(VLSI) 技术制成的半导体芯片。 l CPU将控制单元,寄存器组,算术逻辑单元(ALU)及内 部总线集成在芯片上,组成具有运算器和控制器功能的部 件。

2、电子与信息工程学院 2.1 8086微处理器的结构 1.8086是Intel系列的第三代16位微处理器 2.每片集成4万多只晶体管 3.单一 +5v 电源 4.主频为5MHz/10MHz 5.数据总线宽度是16位(8088的是8位数据总线),地址总线 宽度20位,可导址空间达220,即1MB。 电子与信息工程学院 2.1.1 8086的功能结构 8086微处理器由以下2个部分组成; 1、执行部件EU(Execution Unit) 由运算器、寄存器组、控制器等组成,负责指令的执行 2、总线接口部件BIU(Bus Interface Unit) 由指令队列、地址加法器、总线控制逻辑等组成,负责

3、与系统总线交换数据。 电子与信息工程学院 数据寄存器 指针 和变 址寄 存器 AH AL BH BL CH CL DH DL SP BP SI DI AX BX CX DX 暂存寄存器 ALU 标志寄存器FR EU 控制器 ALU数据总线 (16位) 指令队列缓冲器 1 2 3 4 5 6 总线 控制 逻辑 8086 总线 地址加法器 CS DS SS ES IP 内部暂存器 AB(20位) 执行部件(EU)总线接口部件(BIU) DB(16位) (8位) 队列总线 8086CPU的内部功能结构框图 电子与信息工程学院 1.执行部件EU (1)EU的功能: A. 从BIU的指令队列缓冲器中取出

4、指令,由EU控制器的 指令译码器译码产生相应的操作控制信号给各部件 B. 对操作数进行算术运算和逻辑运算,并将运算结果的 状态特征保存到标志寄存器(FR)中 C. EU不直接与CPU外部系统相连,当需要与主存储器或 I/O设备交换数据时,EU向BIU发出命令,并提供给 BIU16位的有效(偏移)地址及所需传送的数据。 电子与信息工程学院 (2)执行部件EU的组成 EU由算术逻辑单元(ALU )、通用数据寄存器组 地址指针、变址寄存器、标志寄存器(FR)、 暂存寄存器、EU控制器组成 。 1.执行部件EU 电子与信息工程学院 (3)EU的特点: A.通用数据寄存器AX,BX,CX,DX,既可以作

5、16位寄存器使用,也 可以分成高、低8位分别作两个8位寄存器使用。地址指针BP,SP 和变址寄存器SI,DI都是16位寄存器。 B. ALU的核心是16位二进制加法器 C. 16位标志寄存器FR(7位未用)存放操作后的状态特征和设置的 控制标志。 D.EU控制器是执行指令的控制电路,实现从队列中取指令、译码、 产生控制信号等。 1.执行部件EU 电子与信息工程学院 2.总线接口部件BIU (1) BIU的功能: 1) BIU从主存取指令送到指令队列缓冲器 2) CPU执行指令时,总线接口单元要配合EU从指定的主 存单元或外设端口中取数据,将数据传送给EU或把EU 的操作结果传送到指定的主存单元

6、或外设端口中 3) 计算并形成访问存储器的20位物理地址 电子与信息工程学院 2.总线接口部件BIU (2)BIU的组成: 1) 4个16位段寄存器(CS、DS、SS、ES) 2) 16位指令指针寄存器(IP) 3) 20位的物理地址加法器 4) 6字节的指令队列缓冲器 5)总线控制逻辑 电子与信息工程学院 2.总线接口部件BIU (3)BIU的特点: 1) 指令队列是由6个字节的寄存器组成(8088指令队列 由4个字节组成),采用“先进先出”原则。 2) 地址加法器是用来产生20位存储器物理地址的。物理 地址的计算公式为: 物理地址(20位)= 段基址(16位)10H+ 偏移地址(16位)

7、3) 8086分配20条引脚线分时传送20位地址,16位数据和 4位状态信息。 电子与信息工程学院 2.1.2 8086的寄存器结构 三组信息寄存器 l通用数据寄存器组 l地址指针和变址寄存器 l段寄存器组 一个标志寄存器(FR) 一个指令指针寄存器(IP) 电子与信息工程学院 1.通用数据寄存器 l 四个16位通用寄存器AX,BX,CX和DX l 可以拆成两个独立的8位寄存器使用,即: AX=AHAL BX=BHBL CX=CHCL DX=DHDL l 它们能参与算术和逻辑运算,但它们还有各自特殊的用途 。 见下表所示: 寄存器一般用法 隐含用法 AX16位累加(Accumulator) 字

8、乘时提供一个操作数并存放积的低字;字除时提供被除 数的低字并存放商 ALAX的低8位 字节乘时提供一个操作数并存放积的低字节;字节除时 提供被除数的低字节并存放商;BCD码运算指令和XLAT指 令中作累加器;字节I/O操作中存放8位输入/输出数据 AHAX的高8位 字节乘时提供一个操作数并存放积的高字节;字节除时 提供被除数的高字节并存放余数;LAHF指令中充当目的 操作数 BX 基址(Base)寄存器,支持 多种寻址,常用作地址寄 存器 XLAT指令中提供被查表格中源操作数的间接地址 CX16位计数器(Counter) 串操作时用作串长计数器;循环操作中用作循环次数计 数器 CL8位计数器

9、移位或循环移位时用作移位次数计数器 DX16位数据(Data)寄存器 在间接寻址的I/O指令中提供端口地址;字乘时存放积的 高字,字除时提供被除数高字并存放余数 表2-1 8086中通用寄存器的一般用法和隐含用法 电子与信息工程学院 2.地址指针及变址寄存器 EU中有两个地址指针寄存器和两个变址寄存器,它们(都是 16位的寄存器)分别为: l SP(Stack Pointer),堆栈指针寄存器 l BP(Base Pointer), 基址指针寄存器 l SI (Source Index), 源变址寄存器 l DI (Destination Index),目的变址寄存器 它们的应用如下表所示:

10、寄存器一般用法隐含用法 SP 堆栈指针(Stack Pointer),与SS 配合指示堆栈栈顶的位置压栈、出栈操作中指示栈顶 BP 基址指针(Base Pointer),它支 持间接寻址、基址寻址、基址加变 址等多种寻址手段。在子程序调用 时,常用它来取压栈的参数 子程序调用时指示栈内 的偏移地址 SI 源变址(Source Index)寄存器。 它支持间接寻址、变址寻址、基址 加变址寻址等多种寻址 串操作时用作源变址寄存器,指 示数据段(段默认)或其他段( 段超越)中源操作数的偏移地址 DI 目的变址(Destination Index)寄 存器。它支持间接寻址、变址寻址 、基址加变址寻址等

11、多种寻址 串操作时用作目的变址寄存器, 指示附加段(段默认)中目的操 作数的偏移地址 表2-2 8086中地址寄存器的一般用法和隐含用法 电子与信息工程学院 8086寄存器的特别说明 (1)8086的堆栈及堆栈操作有以下特点: 双字节操作。即每次进、出栈的数据均为两字节。且高位字节对 应高地址,低位字节对应低地址。无论是源操作数还是目的操作 数,也无论是存储器操作数还是寄存器操作数,都必须按这个原 则执行。 堆栈向低地址方向生成。数据每次进栈时堆栈指针SP向低地址方 向移动(减2);反之,数据出栈时,SP向高地址方向移动(加2) (2)BP、BX都是基址寄存器,但两者用法不同。BP只能寻址堆栈

12、段(段 缺省),不允许段跨越;BX可既能寻址数据段(段缺省),也可以寻址 附加段(段跨越)。 (3)由于大多数算术和逻辑运算中又可以使用BP、SP和变址寄存器SI、 DI,因而也将这4个寄存器归入通用寄存器组。使用中应该注意这4个 寄存器只能用于16位的存取操作。 电子与信息工程学院 3.段寄存器 8086CPU中有4个段寄存器,用于存放当前程序所用的各段的起始地址 ,也称为段的基地址。 1.代码段寄存器CS(Code Segment) 其内容左移4位再加上指令指针IP的内容,就形成下一条要执行的指令存放 的实际物理地址。 PA=CS* 10H+IP 2.数据段寄存器DS(Data Segme

13、nt) DS中的内容左移4位再加上按指令中存储器寻址方式计算出来的偏移地 址,即为数据段指定的单元进行读写的地址。 3.堆栈段寄存器SS(Stack Segment) 堆栈是按“后进先出”原则组织的一个特别存储区。操作数的存放地址是由 SS的内容左移4位再加上SP的内容而形成的。 PA=SS*10H+SP 4.附加段寄存器ES(Extended Segment) 附加段是在进行字符串操作时作为目的区地址使用的一个附加数据段。在字 符串操作指令中SI作为源变址寄存器,DI作为目的变址寄存器,其内容都是偏移 地址。 电子与信息工程学院 SP,BP,SI,DI与段寄存器联用说明 (1)SP,BP与S

14、S联用确定堆栈段中某一存储器单元的地址,SP用来 表示栈顶的偏移地址,BP作为栈内的一个偏移地址以便访问堆栈中 的其他信息。 (2)SI,DI与DS联用确定数据段中某一存储器单元的地址,SI和DI有 自动增量和自动减量的功能。在串处理指令中,SI和DI作为隐含的源 变址和目的变址寄存器,SI和DS联用,DI和ES联用,分别达到在数 据段和附加段中寻址的目的。 (3)FR的DF=1,SI、DI减量,由高地址向低地址处理;DF=0,SI、 DI增量,由低地址向高地址处理 电子与信息工程学院 4.指令指针寄存器和标志寄存器 (1)指令指针寄存器IP 指令指针寄存器IP是一个16位的表示地址指针的寄存

15、器 (2)标志寄存器FR(Flag Register) 标志寄存器FR也称为程序状态字PSW(Program Status Word)寄存 器,它是一个16位的标志寄存器,但仅使用其中的9位。其中 CF,OF,AF,ZF,SF,PF为6个状态标志位;DF,IF和TF为3个控制标志 位。如下图所示: D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 CFPFAFZFSFTFIFDFOF PSW 图2-2 8086CPU标志寄存器 电子与信息工程学院 状态信息由中央处理机根据计算机的结果自动设置,6位状 态位的意义如下: lOF(OverF

16、lag)溢出标志:OF =1,溢出 lSF(SignFlag)符号标志:SF=1,负数 lZF(ZeroFlag)零标志:ZF=1 ,结果是0 lCF(CarryFlag)进位标志:CF=1,有进(借)位 lAF辅助进位标志:AF=1,第4位右进位置1(半字节) lPF 奇偶进位标志:PF=1,结果中1的个数位为偶数 4.指令指针寄存器和标志寄存器 电子与信息工程学院 控制标志位(3个): l DF(Direction Flag)方向标志:DF=1(STD指令),SI、DI减量 ,由高地址 向低地址处理;DF=0(CLD指令),SI、DI增量,由低 地址向高地址处理 l IF(Interupt Flag )中断标志: IF=1(STI指令)时,允许中断, IF=0 (CLI指令) ,禁止可屏蔽中断。 l TF(Trap Flag)陷阱标志( 又叫跟踪标志):每执行一条指令就引 起一个内部中断,用于单步方式操作,TF=1,指令

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号