第2章 8086微处理器及其体系结构.ppt
《第2章 8086微处理器及其体系结构.ppt》由会员分享,可在线阅读,更多相关《第2章 8086微处理器及其体系结构.ppt(48页珍藏版)》请在沃文网上搜索。
1、第第2章章8086微处理器及其体系结构微处理器及其体系结构本章学习重点:本章学习重点:了解了解8086CPU的编程结构及引脚功能的编程结构及引脚功能;掌握掌握8086的存储器和的存储器和I/O组织组织;掌握掌握8086的操作及时序的操作及时序;熟悉熟悉8086最小方式下的系统结构最小方式下的系统结构本章学习难点:本章学习难点:8086的编程结构及寄存器结构的编程结构及寄存器结构;8086的操作时序的操作时序2.1 80862.1 8086的编程结构的编程结构2.1.18086/8088CPU的内部结构的内部结构8086:Intel系列的系列的16位微处理器,数据总线位微处理器,数据总线16位、
2、位、20条地址线,可寻址地址范围条地址线,可寻址地址范围1MB,指令队列,指令队列6个字节,个字节,8086工作时,只要一个工作时,只要一个5V电源和一个时钟,时钟频率电源和一个时钟,时钟频率为为5MHz。8086CPU的内部由两个独立的工作部件构成:的内部由两个独立的工作部件构成:执行部件执行部件EU(ExecutionUnit)总线接口部件总线接口部件BIU(BusInterfaceUnit)。其内部结构框图如下图所示其内部结构框图如下图所示:地址总线地址总线20位位AH ALBH BLCH CLDH DL SP BP DI SI通通用用寄寄存存器器 暂存器暂存器ALU状态状态 EU 控制
3、器控制器1 2 3 4 5 6 CS DS SS ES IP 内部内部寄存器寄存器总线总线控制控制电路电路地址加法器地址加法器8位位指令队列缓冲器指令队列缓冲器外外总总线线8086CPU结构图结构图队列总线队列总线总线接口单元总线接口单元BIU执行单元执行单元EUALU数据总线数据总线16位位 1.1.执行部件执行部件EUEU 作用:作用:(1 1)从指令队列中取出指令。)从指令队列中取出指令。(2 2)对指令进行译码,发出相应相应的控制信号。)对指令进行译码,发出相应相应的控制信号。(3 3)接收由总线接口送来的数据或发送数据至接口。)接收由总线接口送来的数据或发送数据至接口。(4 4)进行
4、算术运算。)进行算术运算。执行部件执行部件EU的组成:的组成:(1)算术逻辑单元)算术逻辑单元ALU它是运算器的核心,几乎所有的算术运算,逻辑运算和移位操作都是由它是运算器的核心,几乎所有的算术运算,逻辑运算和移位操作都是由ALU ALU 完成的。完成的。(2)暂存寄存器)暂存寄存器协助协助ALU完成运算,暂存参加运算的数据。完成运算,暂存参加运算的数据。(3)四个通用寄存器)四个通用寄存器AX、BX、CX、DX四个通用寄存器都是四个通用寄存器都是16位或作两个位或作两个8位来使用位来使用(4)专用寄存器)专用寄存器SP、BP、DI、DI SP-堆栈指针寄存器堆栈指针寄存器 BP-基址指针寄存
5、器基址指针寄存器 DI-目的变址寄存器目的变址寄存器 SI-源变址寄存器源变址寄存器 (5)执行部件的控制电路)执行部件的控制电路 从总线接口的指令队列取出指令操作码,通过译码电路分析,从总线接口的指令队列取出指令操作码,通过译码电路分析,发出相应的控制命令,控制发出相应的控制命令,控制ALU数据流向。数据流向。2.2.总线接口部件总线接口部件BIUBIU 功能:功能:(1)取指令送到指令队列。)取指令送到指令队列。(2)CPU执行指令时,配合执行指令时,配合EU从指定的内存或外设中取操作数据,将数从指定的内存或外设中取操作数据,将数据传送到据传送到EU中,或把中,或把EU的执行结果送到指定的
6、内存单元或外设。的执行结果送到指定的内存单元或外设。总线接口部件的组成:总线接口部件的组成:(1)四个段地址寄存器)四个段地址寄存器 CS16位代码段寄存器位代码段寄存器 DS16位数据段寄存器位数据段寄存器 ES16位附加段寄存器位附加段寄存器 SS16位堆栈段寄存器位堆栈段寄存器(2)16位指令指针寄存器位指令指针寄存器IP(PC)(3)20位的地址加法器位的地址加法器(4)6字节的指令队列缓冲器字节的指令队列缓冲器(5)完成与)完成与EU通信的内部寄存器通信的内部寄存器 说明:说明:(1)指令队列缓冲器:)指令队列缓冲器:8086的指令队列为的指令队列为6个字节,个字节,8088的指令队
7、的指令队列为列为4个字节。使用了队列装置,在个字节。使用了队列装置,在EU执行指令的同时,执行指令的同时,BIU将取下一将取下一个字节指令或几个字节的指令依次放入指令队列缓冲器中。个字节指令或几个字节的指令依次放入指令队列缓冲器中。CPU执行完执行完一条指令后,可以马上执行下一条指令(流水线技术)。即:一条指令后,可以马上执行下一条指令(流水线技术)。即:BIU与与EU的工作是并行的,这一种并行工作方式,改变了以往计算机取的工作是并行的,这一种并行工作方式,改变了以往计算机取指令指令译译码码执行指令执行指令的串行工作方式,大大提高了的串行工作方式,大大提高了CPU的的工作效率。工作效率。(2)
8、地址加法器:产生)地址加法器:产生20位地址。位地址。CPU内无论是段地址寄存器还内无论是段地址寄存器还是偏移量都是是偏移量都是16位的,通过地址加法器产生位的,通过地址加法器产生20位地址。位地址。例如:段代码例如:段代码CS0FE00H,指令指针,指令指针IP0400H,则通过地址加法器产生的则通过地址加法器产生的20位位物理地址为物理地址为0FE000H0400H0FE400H。EUBIUCPUCPU内部工作过程简述内部工作过程简述:EUEU准准备备执执行行一一条条指指令令时时,从从BIUBIU部部件件的的指指令令队队列列前前部部取取出出指指令令的的代代码码,然然后后去去执执行行指指令令
9、。在在执执行行指指令令过过程程中中,如如果果必必须须访访问问存存储储器器或或者者I IO O端端口口,EUEU就就会会请请求求BIUBIU,进进入入总总线线周周期期,完完成成访访问问内内存存或或者者I IO O端端口口的的操操作作;如如果果此此时时BIUBIU正正好好处处于于空空闲闲状状态态,会会立立即即响响应应EUEU的的总总线线请请求求。如如BIUBIU正正将将某某个个指指令令字字节节取取到到指指令令队队列列中中,则则BIUBIU将将首首先先完完成成这这个个取取指指令令的的总总线线周周期期,然后再去响应然后再去响应EUEU发出的访问总线的请求。发出的访问总线的请求。当当指指令令队队列列是是
10、空空的的,EUEU就就处处于于等等待待状状态态,一一旦旦指指令令队队列列中中有有一一条条指指令令,EUEU会立即取出执行。会立即取出执行。当当80868086的的指指令令队队列列中中有有两两个个空空字字节节(80888088中中有有一一个个空空字字节节),BIUBIU就就会会自自动动把把指指令令取取到到指指令令队队列列中中。取取指指的的顺顺序序按按指指令令在在程程序序中中出出现现的的前前后后顺顺序。序。当指令队列已满,且当指令队列已满,且EUEU又没有总线访问请求时,又没有总线访问请求时,BIUBIU便进入空闲状态。便进入空闲状态。在在EUEU执执行行转转移移指指令令、调调用用指指令令和和返返
11、回回指指令令时时,由由于于待待执执行行指指令令的的顺顺序序发发生生了了变变化化,则则指指令令队队列列中中已已经经装装入入的的字字节节被被自自动动消消除除,BIUBIU会会接接着着往往指指令队列装入转向的另一程序段中的指令代码。令队列装入转向的另一程序段中的指令代码。2.1.2 8086/8088CPU2.1.2 8086/8088CPU的寄存器结构的寄存器结构8086/8088内部有内部有14个个16位的寄存器,寄存器可以分为通用寄存器和专用位的寄存器,寄存器可以分为通用寄存器和专用寄存器两大类,如图寄存器两大类,如图2.2所示。所示。1.1.通用寄存器(通用寄存器(8 8个)个)8 8个个1
12、616位通用寄存器分为两组:位通用寄存器分为两组:数据寄存器(数据寄存器(4 4个)个)地址指针地址指针和变址寄存器(个)和变址寄存器(个)1)数据寄存器数据寄存器8086/8088有有4个个16位的位的通用寄存器(通用寄存器(AX、BX、CX、DX),可以存放),可以存放16位的操作位的操作数,也可分为数,也可分为8个个8位的寄存器位的寄存器(AL、AH;BL、BH;CL、CH;DL、DH)来使用。其中)来使用。其中AX称为累加器,称为累加器,BX称为基址称为基址寄存器,寄存器,CX称为计数寄存器,称为计数寄存器,DX称为数据寄存器,这些寄存称为数据寄存器,这些寄存器在具体使用上有一定的差别
13、。器在具体使用上有一定的差别。2 2)指针和变址寄存器)指针和变址寄存器 包括:堆栈指针包括:堆栈指针SP、基址指针基址指针BP、源变址寄存器源变址寄存器SI、目的变址寄存目的变址寄存器器DI,可用来存放数据和地址,可用来存放数据和地址,但只能按但只能按16位进行存取操作。位进行存取操作。SP堆栈指针寄存器堆栈指针寄存器:入栈入栈(PUSH)和出栈和出栈(POP)指令是由指令是由SP给出给出栈顶栈顶位置(段内偏移量位置(段内偏移量)。)。BP基址指针寄存器:基址指针寄存器:用来存放位于堆栈段中的一个数据用来存放位于堆栈段中的一个数据区基址的偏区基址的偏移地址。移地址。变址寄存器变址寄存器SI和
14、和DI是用来存放是用来存放 当前数据段的偏移地址的。当前数据段的偏移地址的。源操作数地址的源操作数地址的偏移量偏移量放放SI中,中,SI称为源变址寄存器。称为源变址寄存器。目的操作数地址的目的操作数地址的偏移量偏移量放放DI中,中,DI称为目的变址寄存器。称为目的变址寄存器。2.段寄存器段寄存器组组 8086CPU具具有有寻寻址址存存储储器器空空间间1MB的的能能力力,但但是是8086指指令令中中给给出出的的地地址址码码仅仅有有十十六六位位,为为此此,8086用用一一组组段段寄寄存存器器将将这这1MB存存储储空空间间分分成成若若干干个个逻逻辑辑段段。8086CPU的BIU中有四个16位的段寄存
15、器,段寄存器是用来存放段起始地址的,8086的指令直接访问这四个段。代码段寄存器代码段寄存器CSCS:用于存放当前代码段的段地址用于存放当前代码段的段地址 ;数据段寄存器数据段寄存器DSDS:用于存放当前数据段的段地址;用于存放当前数据段的段地址;附加段寄存器附加段寄存器ESES:用于存放当前附加段的段地址;用于存放当前附加段的段地址;堆栈段寄存器堆栈段寄存器SS:用于存放当前堆栈段的段地址。用于存放当前堆栈段的段地址。在微机系统的内存中通在微机系统的内存中通常存放着三类信息常存放着三类信息:汇编语言规定,不同的信息要存放在不同汇编语言规定,不同的信息要存放在不同的存储段,这些存贮段的存储器段
16、地址(段基址)要由各自的段的存储段,这些存贮段的存储器段地址(段基址)要由各自的段存器提供。存器提供。3.3.控制寄存器组控制寄存器组 1 1)指令指针寄存器)指令指针寄存器(IP 16(IP 16位位)。它始终指向它始终指向CPUCPU下一条要取指令所在存贮下一条要取指令所在存贮器单元的偏移地址器单元的偏移地址(段地址由段地址由CSCS提供提供)。用户不能更改用户不能更改IPIP的值的值,每取一个指令每取一个指令字节,字节,IPIP自动加自动加1 1,如果程序需要转移或分支,只要把转移地址放入,如果程序需要转移或分支,只要把转移地址放入IPIP即可。即可。标标志志寄寄存存器器FRFR仅仅定定
17、义义了了9 9位位,其其中中6 6位位用用作作状状态态标标志志,3 3位位用作控制标志。用作控制标志。D15 OF DF IF TF SF ZF AF PF CF进进借借位位标标志志奇奇偶偶标标志志半半进进借借位位标标志志零零标标志志符符号号标标志志单单步步中中断断中中断断允允许许方方向向标标志志1-有进、借位有进、借位0-无进、借位无进、借位1-低低8位有偶数个位有偶数个10-低低8位有奇数个位有奇数个11-低低4位向高位向高4位有进、借位位有进、借位0-低低4位向高位向高4位无进、借位位无进、借位1-结果为结果为00-结果不为结果不为0D0溢溢出出标标志志2 2)标志寄存器标志寄存器FRF
18、R:例例1:1:若若CPUCPU执行执行5439H+476AH5439H+476AH加法运算指令加法运算指令:所以指令执行后有所以指令执行后有:SF=1SF=1,ZF=0ZF=0,PF=1PF=1,AF=1AF=1,CF=0CF=0,OF=1OF=1 C150 C141C31符号位符号位S1低低8位中位中8个个1运算结果不为运算结果不为0有溢出有溢出DFDF方向标志方向标志:当当 DF=0DF=0时,在串操作指令中,进行自动增址操作;时,在串操作指令中,进行自动增址操作;当当 DF=1DF=1时,在串操作指令中,进行自动减址操作;时,在串操作指令中,进行自动减址操作;IFIF中断允许标志中断允
19、许标志:当当IF=0IF=0时,禁止时,禁止CPUCPU响应可屏蔽中断;响应可屏蔽中断;当当IF=1IF=1时,允许时,允许CPUCPU响应可屏蔽中断;响应可屏蔽中断;TFTF单步陷阱标志单步陷阱标志:当当IF=1IF=1时,表示时,表示CPUCPU进入单步工作方式;进入单步工作方式;当当IF=0IF=0时,表示时,表示CPUCPU正常执行程序。通常用于程序的调试。正常执行程序。通常用于程序的调试。控制标志位控制标志位3个,用来控制个,用来控制CPU的操作的操作:2.2 8086/80882.2 8086/8088系统存储器的组织和堆栈系统存储器的组织和堆栈2.2.1 8086/80882.2
20、.1 8086/8088系统存储器的组织系统存储器的组织8086/8088是是16位的微处理器,在组成存储系统时,总是使偶地址单元的数位的微处理器,在组成存储系统时,总是使偶地址单元的数据通过据通过AD0AD7(低(低8位)传送,而奇地址单元的数据通过位)传送,而奇地址单元的数据通过AD8AD15(高(高8位)传送,所有的操作可以是按字节为单位也可以是按字为单位来处理的,但位)传送,所有的操作可以是按字节为单位也可以是按字为单位来处理的,但8086/8088系统中的存储器是以系统中的存储器是以8位(一个字节)为单位对数据进行处理的。因此位(一个字节)为单位对数据进行处理的。因此每个字节用一个唯
21、一的地址码表示,这称为存储器的标准结构。每个字节用一个唯一的地址码表示,这称为存储器的标准结构。8088/8086有有20根地址总线,可直接寻址的存储器单元数为:根地址总线,可直接寻址的存储器单元数为:220=1MB,每个字节对应一个唯一的地址,地址范围为每个字节对应一个唯一的地址,地址范围为220-1,用用16进制表示进制表示:00000FFFFFH。几个概念:位(位(bit)是计算机所能表示的最小最基本的数据单位,它指的是取值只能为是计算机所能表示的最小最基本的数据单位,它指的是取值只能为 0或或1的一个二进制数值位。位作为单位时记作的一个二进制数值位。位作为单位时记作字节(字节(byte
22、)由由8个位二进制位组成,通常用作计算存储容量的单位。字节作个位二进制位组成,通常用作计算存储容量的单位。字节作 为单位时记作为单位时记作B 字长字长 字长是微处理器一次可以直接处理的二进制数码的位数,它通常取字长是微处理器一次可以直接处理的二进制数码的位数,它通常取 决于微处理器内部通用寄存器的位数和数据总线的宽度。决于微处理器内部通用寄存器的位数和数据总线的宽度。数据存储格式数据存储格式 当存储器存放的数是一个字节时,将按顺序存放在每个存储单元中;当存储器存放的数是一个字节时,将按顺序存放在每个存储单元中;当当存存放放的的是是一一个个字字时时,字字的的低低字字节节存存放放在在低低地地址址中
23、中,高高字字节节存存放放在在高高地地址址中中,并并以以低低字字节节的的地地址址作作为为字字地地址址。若若字字地地址址为为偶偶地地址址,则则称称为为规规则则字字存放;若字地址为奇地址,则称为存放;若字地址为奇地址,则称为非规则字非规则字存放。存放。06000H规则规则字字 06001H 06002H03H04H05H06H07HA37F296B504CD335(7FA3H)非规则非规则字字规则规则字字(506BH)(D335H)存储器的组成存储器的组成 存存储储器与器与8086CPU连连接接时时,1MB存储空间分成两个存储空间分成两个512KB512KB存储器,即:存储器,即:偶地址存储器:偶地
24、址存储器:(A0=0A0=0),),其数据线与其数据线与8086CPU8086CPU系统的数据线系统的数据线D7D7D0D0 相连,相连,A0=0A0=0用于片选;用于片选;奇地址存储器奇地址存储器:(:(A0=1A0=1),),其数据线与其数据线与8086CPU8086CPU系统的数据线系统的数据线D15D15D8D8 相连,相连,/BHE/BHE(高(高8 8位数据总线允许控制)位数据总线允许控制)=0=0用于片选;用于片选;8086 CPU8086 CPU数据总线为数据总线为1616位:位:对于访问(读或写)字节的指令,需要一个总线周期;对于访问(读或写)字节的指令,需要一个总线周期;对
25、于访问一个偶地址的字的指令,需要一个总线周期;对于访问一个偶地址的字的指令,需要一个总线周期;对于访问一个奇地址的字的指令,需要两个总线周期(对于访问一个奇地址的字的指令,需要两个总线周期(CPUCPU自动完成)。自动完成)。8088 CPU8088 CPU数据总线为数据总线为8 8位:位:无论是字,还是字节,也无论是对规则字,还是非规则字,每一个总线周无论是字,还是字节,也无论是对规则字,还是非规则字,每一个总线周期只能完成一个字节的数据存取操作。对字数据所组成的连续两个总线周期是期只能完成一个字节的数据存取操作。对字数据所组成的连续两个总线周期是由由CPU CPU 自动完成的。自动完成的。
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章 8086微处理器及其体系结构 8086 微处理器 及其 体系结构