专升本微机原理清华版第四章

上传人:宝路 文档编号:48466591 上传时间:2018-07-15 格式:PPT 页数:86 大小:1.31MB
返回 下载 相关 举报
专升本微机原理清华版第四章_第1页
第1页 / 共86页
专升本微机原理清华版第四章_第2页
第2页 / 共86页
专升本微机原理清华版第四章_第3页
第3页 / 共86页
专升本微机原理清华版第四章_第4页
第4页 / 共86页
专升本微机原理清华版第四章_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《专升本微机原理清华版第四章》由会员分享,可在线阅读,更多相关《专升本微机原理清华版第四章(86页珍藏版)》请在金锄头文库上搜索。

1、 第四章 16位微处理器4-1 微处理器概述 4-2 8086/8088 CPU 的结构4-3 8086/8088 CPU 的引脚信号和工作模式4-4 8086/8088的主要操作功能 v系统的复位和启动操作 v总线操作 v中断操作 v最小工作模式下的总线保持v8282锁存器 v8286收发器v 执行部件EU、总线接口部件BIU、v 存储器的结构、总线工作周期微微 机机 原原 理理 及及 应应 用用微处理器概述微微 机机 原原 理理 及及 应应 用用微处理器(Microprocessor)是微型计算机的运算及控制部件, 也称为中央处理单元(CPU)。它本身不构成独立的工作系统, 因而它也不能独

2、立地执行程序。通常,CPU从功能上分为执行部 件(EU)和总线接口部件(BIU)一一 什么是微处理器?什么是微处理器?二 微处理器的发展第一代微处理器 第二代微处理器 第三代微处理器 第四代微处理器 现代微处理器1. 第一代微处理器是1971年Intel公司推出的 4040和8008。它们是采用PMOS工艺的4位及 8位微处理器 2. 第二代微处理器是1974年推出的8080, M6800及Z-80等。它们是采用NMOS工艺的8 位微处理器.16位微处理器概述3. 20世纪70年代后期,超大规模集成电路 (VLSI)投入使用,出现了第三代微处理器 。Intel公司的80868088,Motor

3、ola公司 的M68000和Zilog公司的Z8000等16位微处 理器相继问世,它们的运算速度比8位微处 理器快25倍。 4. 20世纪80年代以来,Intel公司又推出了 高性能的16位微处理器80186及80286。它 们与80868088向上兼容。80286是为满足 多用户和多任务系统的微处理器,速度比 8086快56倍。5. 1985年,第四代微处理器80386及M68020 推出市场,集成度达45万个晶体管片。它们 是32位微处理器,时钟频率达40MHz,速度 之快、性能之高,足以同高档小型机相匹敌。 6.如1989年推出了80486,1993年推出了 Pentium及80586等

4、更高性能的32位及64位微 处理器,它也促进了其他技术的进步。本章以讲解16位80868088微处理器为中心 。 8086和8088 CPU的内部基本相同,但它们 的外部性能是有区别的。 8086是16位数据总线,而8088是8位数据 总线,在处理一个16位数据字时,8088需 要两步操作而8086只需要一步。微微 机机 原原 理理 及及 应应 用用一 执行部件二 总线接口部件三 存储器的结构8086/8088 CPU 的结构四 8086总线的工作周期ALU执行部分 控制电路输入/输出 控制电路地址加法器20位16位指令队列缓冲器8位执行部件(EU)总线接口部件(BIU)外部 总线16位运算寄

5、存器标志寄存器通用 寄存器8086CPU结构图段寄存器DLCLBLALSIDIBPSPDHCHBHAH内部暂存器IPESSSDSCS微微 机机 原原 理理 及及 应应 用用专用 寄存器返回BIUBIU (bus interface unit):负责与存储器、I/O端口 ,即8086/8088CPU与存储器之间的信息传送。EU(execution unit):负责指令的执行。通用寄存器,专用寄存器,标志寄存器(FR), 算术逻辑单元(ALU)BIU从内存的指定部分取出指令,送到指令流队列中排 队; 操作数也由BIU从内存的指定区域取出,传送给EU执行 。寄存器(一)AHAHALAL BHBHBL

6、BL CHCHCLCL DHDHDLDL通用寄存器通用寄存器AX AX 累加器累加器BX BX 基基 数数CX CX 计计 数数DX DX 数数 据据微微 机机 原原 理理 及及 应应 用用AX: AX: 有些指令约定有些指令约定AX(AX(或或AL)AL)为累加器,如乘、除、输入为累加器,如乘、除、输入/ /输出等输出等BX: BX: 基址寄存器,可用作间接寻址的地址寄存器和基地址寄存器。基址寄存器,可用作间接寻址的地址寄存器和基地址寄存器。CX: CX: 计数寄存器,在循环和串操作中充当计数器。指令执行后计数寄存器,在循环和串操作中充当计数器。指令执行后CXCX 寄存器中内容自动变化。寄存

7、器中内容自动变化。DX: DX: 数据寄存器,除用作通用寄存器外,在数据寄存器,除用作通用寄存器外,在I/OI/O指令中用作口地址指令中用作口地址 寄存器,乘除指令中用作辅助寄存器。寄存器,乘除指令中用作辅助寄存器。SPSP BPBP SISI DIDI专用寄存器专用寄存器堆栈指针,堆栈指针,Stack Pointer RegisterStack Pointer Register基数指针,基数指针,Base Pointer RegisterBase Pointer Register目的变址,目的变址, Destination Index Register Destination Index R

8、egister 源源 变变 址,址,Source Index RegisterSource Index RegisterBP,SP常用来指示相对于段起始地址的偏移量。SI,DI可用作寄存器间接寻址、相对寻址、基址变址寻址、相对基址变址寻址寄存器,访问数据段任意单元。变址寻址通常用于对数组元素进行操作。标志寄存器(FR)15 14 13 12 11 109876543210OF DF IF TF SF ZFAFPFCFOF (Overflow Flag):溢出 DF (Direction Flag): 方向 IF (Interrupt Flag): 中断 TF (Trap Flag): 跟踪 S

9、F (Sign Flag) :符号 ZF (Zero Flag) :零 AF (Auxiliary Carry Flag) :半进位 PF (Parity Flag) :奇偶 CF (Carry Flag) :进位结构图标志寄存器(1)状态标志(6个): SF(符号标志):当执行算术或逻辑运算指令时,符号标志位 接受运算结果最高位的值。当最高位为1时,SF=1( NG),最 高位为0:SF=0(PL )15 14 13 12 11 109876543210OF DF IF TF SF ZFAFPFCF4. CF(进位标志)加法运算时最高位产生进位或减法运算时最高 位产生借位时CF=1(CR),

10、反之CF=0(NC);3. PF(奇偶标志)运算结果的低8位中含1的个数为偶数时PF=1(PE),反之PF=0(PO);2. ZF(零标志):运算结果为零时,ZF=1(ZR),反之ZF=0(NZ)6、OF (溢出标志)有符号 (signed)数加减时超出数据范围称为溢出, 溢出时OF=1(OV,字节运算结果超出 -128 +127, 或 者字运算结果超出 -32768 +32767),反之OF=0(NV )状态标志:5、AF(辅助进位标志)加法运算时第3位往第4位有进 位或减法运算时第3位往第4位有借位AF=1(AC),反 之AF=0(NA);标志寄存器(2)3. TF(跟踪标志)TF=1时,

11、CPU按跟踪方式运行。控制标志(3个):1. DF(方向标志):控制执行串操作指令时被操作数 地址的变化方向,DF=0(UP)时地址递增, DF=1(DN)时地址递减;(用于某些串操作指令)2. IF(可屏蔽中断响应标志):IF=1(EI)允许可屏蔽 中断,IF=0(DI)禁止可屏蔽中断。该标志可由中断 2. 控制指令设置或清除。超出数据范围称为溢出(OF=1,OV)。 1. 两个字节的signed 数相加结果超出了-128 +127 的范围时 , OF=1,也表示运算出错。 2. CPU运算时规定两个字节的无符号(unsigned) 数相加,结果为9个bits(加上CF位), 因而其结果 不

12、可能超出范围,所以 不考虑溢出问题,只考 虑是否有进位,即CF是0还是1。 3. 多字节有符号(signed) 数运算时(如果以字节 进行运算), 除最高字节按有符号数处理外, 其余 按无符号数进行处理。 现以两个unsigned 数相加和两个signed 数相加来对比,有 符号数的范围为 -128 +127, 结果超出范围时, OF=101111111 127 (+127)+ 00000001 + 1 +(+ 1)10000000 128 (+128)(SF= 1 、 ZF=0、PF=0、CF=0、AF=1、OF=1) (D6进位到D7,D7无进位到CF,所以OF=1)10000001 12

13、9 (-127) +111111110 + 254 +(- 2 )01111111 383 - 129 为signed 数时, 结果影响了符号位, 出现错误 OF=1( SF=、 ZF= 、PF= 、CF= 、AF= 、OF= ) (D6无进位到D7,D7进位到CF,CF=1,OF=1) CPU用标志位来表明运算的状态结果当有D6进位到D7, D7又进位到CF时, 即双进位时 或者无 进位时OF=0,反之OF=1,OF=1表示有溢出发生,例01111111 127 (+127)+110000010 +130 + (-126 )00000001 257 (+ 1)(SF=0、ZF=0、PF=0、

14、CF=1、AF=1、OF=0) 11111111 255 (- 1) +111111111 + 255 +(- 1)11111110 510 - 2 双进位 OF=0,没发生溢出( SF= 、 ZF= 、PF= 、CF= 、AF= 、OF= ) CPU用标志位来表明运算的状态结果寄存器(二)IPIPCSCS DSDS SSSS ESES指令指针寄存器,又称指令计数器指令指针寄存器,又称指令计数器1616位代码段寄存器位代码段寄存器, ,Code Segment registerCode Segment register 1616位数据段寄存器位数据段寄存器, ,Data Segment registerData Segment register 1616位堆栈段寄存器位堆栈段寄存器, ,Stack Segment registerStack Segment register 1616位附加段寄存器位附加段寄存器, ,Extra Segment registerExtra Segment register微微 机机 原原 理理 及及 应应 用用BIU(Bus Interface Unit)结构图返回d6字节的指令队列8086在执行指令的同时,从内存中取下一条指令或下几条指令放在指令队列中。一条指令执行完后,可立即译 码执行下一条指令,从而解决了以往CPU取指令期间,运 算器等待

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

当前位置:首页 > 中学教育 > 教学课件

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