资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第二章,8086,微处理器,2.1 8086,微处理器,2.1.1 8086CPU,的内部结构,2.1.2 8086,的内部寄存器组,2.1.3 8086,的引脚信号,2.2,存储器物理地址的形成,2.2.1,存储器结构,2.2.2,物理地址的形成,2.2.3,存储器单元的地址和内容,第二章 8086微处理器2.1 8086微处理器,1,微型计算机的核心是微处理器,,IBM PC,系列微机采用,Intel,公司生产的,80 x86,系列微处理器,其典型产品有,8086,Pentium,系列。,要了解微型计算机,必须先了解微处理器,了解微处理器中寄存器的功能、存储管理方式、微处理器芯片引脚功能和总线时序等。,微型计算机的核心是微处理器,IBM PC系列,2,2.1 8086,微处理器,8086CPU,的内部结构,8086,的内部寄存器组,8086,的引脚信号,2.1 8086微处理器,3,一、,8086/8088,的内部结构,8086,8088,是,Intel,公司于,1978,年,6,月推出的,16,位微处理器,它们的主要特点是:数据线为,16,位,,可进行,8,位(字节)和,16,位(字)运算;地址线为,20,位,,可寻址,1MB,存储空间;时钟频率为,5,8 MHz,。,内部结构由,执行单元,EU,和,总线接口单元,BIU,两部分构成,其内部结构框图如图,21,所示。,一、8086/8088的内部结构 80868088,4,汇编语言接口技术第二章80X86微处理器ppt课件,5,1,执行单元,(EU),EU,由算术逻辑单元(,ALU,)、,16,位标志寄存器(,FR,)、通用寄存器组(,4,个,16,位通用寄存器、,2,个,16,位指针寄存器、,2,个,16,位间址寄存器)、指令译码器和控制电路组成。,EU,是,指令执行部件,,它从,BIU,的指令队列中,取指令,,进行,指令译码,,并发出相应的,控制命令,序列执行指令。,1执行单元(EU),6,2,总线接口单元(,BIU,),BIU,包括,4,个,16,位段寄存器(,CS,、,DS,、,ES,、,SS,)、,1,个,16,位指令指针(,IP,)、,1,个地址加法器、,1,个,6,字节(,8088,为,4,字节)的指令队列和总线控制电路,,它负责,从存储器中取指令并存放在指令队列中供,CPU,执行,。在执行指令过程中,使用的操作数地址由段基址和偏移量组成,其中,16,位偏移量先由,EU,计算得出,再由,BIU,将其与段基址(段寄存器的内容)合在一起形成,20,位物理地址。,BIU,的功能是实现,CPU,与内存的数据交换,并可根据,EU,的请求与,I,O,接口电路交换数据。,2总线接口单元(BIU),7,二、,8086,的内部寄存器组,8086CPU,的寄存器结构如右图所示,它包含,13,个,16,位的寄存器和,1,个,16,位的状态标志寄存器。,二、8086的内部寄存器组 8086CPU的寄存器结构如,8,1,通用寄存器,作用,:操作数据可直接存放在通用寄存器中,可减少访问存储器的次数,使用寄存器的指令长度也较短。这样,即提高了数据处理速度,也减少了指令存放的内存空间。,分类,:通用寄存器是指,EU,中的,4,个,16,位寄存器:,AX,、,BX,、,CX,和,DX,。一般用来存放,16,位的数据,它又可以分为,高字节,H,和,低字节,L,两组,用以存放,8,位数据。,1通用寄存器,9,通用寄存器多数被用在算术逻辑运算指令中,,有些指令中,则有隐含的,特定的用途,,如,AX,在字乘字除运算中规定存放被乘数和被除数;,CX,在数据串操作中用来存放循环次数等等,,这些内容在讲解第三章的指令系统的过程中都,会涉及到。,通用寄存器多数被用在算术逻辑运算指令中,,10,2,专用寄存器,专用寄存器包含,4,个,16,位寄存器。其中,SP,用来指示位于当前堆栈段中数据的偏移地址,,BP,一般用来存放访问内存时的基地址,,SP,和,BP,称为指针寄存器;,SI,和,DI,用来存放当前数,据段中数据的偏移地址,称为变址寄存器。,2专用寄存器,11,3,段寄存器,8086,运行一汇编语言程序,一般需要,4,个现,行段,分别是,代码段、数据段、堆栈段和附,加段,,这,4,个段的段地址分别由,4,个,16,位的,段寄存器,CS,、,DS,、,SS,和,ES,来存放。,3段寄存器,12,4.,指令指针寄存器,指令指针寄存器,IP,是一个,16,位的寄存器,,存,放,EU,要执行的下一条指令的偏移地址,。用户,不能直接,访问寄存器,IP,。,4.指令指针寄存器,13,5,状态标志寄存器,FLAGS,标志寄存器共有,16,位,其中,9,个位作为标志位,,其余,7,位未定义,根据功能,,8086,的标志位可以分为两类:,状态标志位和控制标志位,。,1,)状态标志位,状态标志位用来反映,EU,执行算术或逻辑运算后其结果,的状态,共有,6,个状态标志,各个位的含义如下:,符号标志,SF(sign flag),:指出运算结果是正还,是负,和运算结果的最高位相同。,零标志,ZF(zero flag),:指出运算结果是零还是非,零,如果运算结果是零,则,ZF=1,;否则,,ZF=0,。,奇偶标志,PF(parity flag),:如果运算结果的低,8,位中所含的,1,的个数为偶数,则,PF=1,;否则,,PF=0,。,5状态标志寄存器FLAGS,14,进位标志,CF(carry flag),:如果运算结果的最高,位上产生一个进位或借位,则,CF=1,;如果无进位或,借位,则,CF=0,。,辅助进位标志,AF(auxiliary carry flag),:如,果运算结果的低,4,位产生一个进位或借位,则,AF=1,;否则,,AF=0,。,溢出标志,OF(overflow flag),:如果在运算过程,中产生了溢出,则,OF=1,,否则,,OF=0,。,在大多数情况下,一次运算后,并不对所有的标,志进行改变,程序也大多只对其中某个标志进行检测。,进位标志CF(carry flag):如果运算结果的最高,15,2,)控制标志位,控制标志有,3,个,即,DF,、,IF,、,TF,。,方向标志,DF(direction flag),:,用于控制串操作指令的标,志。如果,DF=0,,则串操作过程中地址不断增加;如果,DF=1,,则串操作过程中地址不断减少。,中断允许标志,IF(interrupt enable flag),:,用于控制可,屏蔽中断的标志。如果,IF=0,,则微处理器不能对可屏蔽中断,请求作出响应;如果,IF=1,,则微处理器可以接受可屏蔽中断,请求。,跟踪标志,TF(trap flag),:,又称单步标志。如果,TF=1,,则,微处理器按跟踪方式执行指令。,这些控制标志一旦设置之后,便对后面的操作产生控制作用。,2)控制标志位,16,三、,8086,的引脚信号,最小工作模式及最大工作模式概念,8086/8088,引脚信号及功能,三、8086的引脚信号最小工作模式及最大工作模式概念,17,1,最小工作模式,在系统中只有,8086,或者,8088,一个,微处理器。在这种系统中,所有的控制信号直接由,8086,或,8088,产生,因此,系统中的总线控制逻辑电路被减到最少。,1 最小工作模式 在系统中只有8086或者8088一个微处,18,2,最大工作模式,是相对最小工作模式而言。在此工作模式系统中,一般包含,两个或两个以上,微处理器,主处理器还是一个,8086,或者,8088,,其他的处理器称为协处理器,它们是协助主处理器工作的。,2 最大工作模式 是相对最小工作模式而言。在此工作模式系统,19,8086,最小模式引脚信号,具体见图,2-3,,其中括号内为最大,模式的引脚名称。,8086最小模式引脚信号,20,0102030405060708091011121314151617181920,4039383736353433323130292827262524232221,GND,AD,14,AD,13,AD,12,AD,11,AD,10,AD,9,AD,8,AD,7,AD,6,AD,5,AD,4,AD,3,AD,2,AD,1,AD,0,NMI,INTR,CLK,GND,VCC,(,+5V,),AD,15,A,16,/S,3,A,17,/S,4,A,18,/S,5,A,19,/S,6,/BHE/S,7,MN/MX,/RD,HOLD,(,/RQ/GT0,),HLDA,(,/RQ/GT1,),/WR,(,/LOCK,),M/IO,(,/S2,),DT/R,(,/S1,),/DEN,(,/S0,),ALE,(,QS1,),/INTA,(,QS0,),/TEST,READY,RESET,8086,微处理器,010203040506070809101112131415,21,1,、地址,/,数据总线,AD15-AD0,:地址,/,数据复用引脚,双向,三态。,(,8086/8088,),AD15-AD0,:,16,位地址总线,A15-A0,,输出访问存储器或,I/O,的地址信息。,(,8086,),AD15-AD0,:,16,位数据总线,D15-D0,,与存储器和,I/O,设备交换数据信息。,(,8088,),AD7-AD0,:,8,位数据总线,D7-D0,,与存储器和,I/O,设备交换数据信息。,地址,/,数据总线复用,分时工作。,2,、地址,/,状态总线,A19/S6-A16/S3,A19/S6-A16/S3,:地址,/,状态总线复用引脚,输出,三态。,1、地址/数据总线,22,A19/S6-A16/S3,:输出访问存储器的,20,位地址的高,4,位地址,A19-A16,。,A19/S6-A16/S3,:输出,CPU,的工作状态。,A19/S6-A16/S3,:分时工作,,T1,状态:输出地址的高,4,位信息;,T2,、,T3,、,T4,状态:输出状态信息。,S6,:指示,8086/8088,当前是否与总线相连,,S6=0,,表示,8086/8088,当前与总线相连。,S5,:表明中断允许标志当前的设置。,S5=0,,表示,CPU,中断是关闭的,禁止一切可屏蔽中断源的中断请求;,S5=1,,表示,CPU,中断是开放的,允许一切可屏蔽中断源的中断申请。,S4,、,S3,:指出当前使用段寄存器的情况。,3,、控制总线,(,1,),/BHE/S7,:高,8,位数据总线允许,/,状态复用引脚。在总线周期的,T1,状态,此引脚输出,/BHE,信号,表示高,8,位数据线,D15-D8,上的数据有效。,(,2,),/RD,:读信号,三态输出,低电平有效。,/RD=0,,表示当前,CPU,正在对存储器或,I/O,端口进行读操作。,(,3,),/WR,:写信号,三态输出,低电平有效。,/WR=0,,表示当前,CPU,正在对存储器或,I/O,端口进行读操作。,A19/S6-A16/S3:输出访问存储器的20位地址的高4,23,(,4,),M/IO,:存储器或,IO,端口访问信号,三态输出。,M/IO=1,,表示,CPU,正在访问存储器;,M/IO=0,,表示,CPU,正在访问,IO,端口。,(,5,),READY,:准备就绪信号,输入,高电平有效。,READY=1,,表示,CPU,访问的存储器或,IO,端口已准备好传送数据。若,CPU,在总线周期,T3,状态检测到,READY=0,,表示未准备好,,CPU,自动插入一个或多个等待状态,TW,,直到,READY=1,为止。,(,6,),INTR,:可屏蔽中断请求信号,输入,高电平有效。当,INTR=1,,表示外设向,CPU,发出中断请求,,CPU,在当前指令周期的最后一个,T,状态去采样该信号,若此时,,IF=1,,,CPU,响应中断,执行中断服务程序。,(,7,),/INTA,:中断响应信号
展开阅读全文