《第886888微处理器》由会员分享,可在线阅读,更多相关《第886888微处理器(40页珍藏版)》请在金锄头文库上搜索。
1、第第2章章 8086/8088微处理器微处理器存储程序工作原理是指把程序存储在计算机内,存储程序工作原理是指把程序存储在计算机内,使计算机能像快速存取数据一样地快速存取组使计算机能像快速存取数据一样地快速存取组成程序的指令。为实现控制器自动连续地执行成程序的指令。为实现控制器自动连续地执行程序,必须先把程序和数据送到具有记忆功能程序,必须先把程序和数据送到具有记忆功能的存储器中保存起来,然后给出程序中第一条的存储器中保存起来,然后给出程序中第一条指令的地址,控制器就可依据存储程序中的指指令的地址,控制器就可依据存储程序中的指令顺序周而复始地取指令、译码、执行,直到令顺序周而复始地取指令、译码、
2、执行,直到完成全部指令操作为止,即控制器通过指令流完成全部指令操作为止,即控制器通过指令流的串行驱动实现程序控制的串行驱动实现程序控制微型计算机的组成及工作原理微型计算机的组成及工作原理微型计算机基本结构(冯微型计算机基本结构(冯 诺依曼结构)诺依曼结构)微处理器CPU1、寄存器组2、算术逻辑单元ALU3、控制器 (1)程序计数器PC (2)地址寄存器AR (3)数据寄存器DR (4)指令寄存器IR和指令译码器ID (5)时许部件总线1、DB2、AB3、CB存储器通常指内存,有读、写操作输入输出设备及其接口输入输出接口2.1 8086/8088的功能结构的功能结构2.1 8086/8088的编
3、程结构的编程结构 1总线接口部件总线接口部件 (BIU) 2执行部件执行部件EU 3“流水线流水线”结构结构 图图2-3 8086的编程结构图的编程结构图1总线接口部件总线接口部件 (BIU) 总线接口部件由下列各部分组成:总线接口部件由下列各部分组成: (1)4个段地址寄存器;个段地址寄存器;CS16位的代码段寄存器;位的代码段寄存器; DS16位的数据段寄存器;位的数据段寄存器; ES16位的扩展段寄存器;位的扩展段寄存器; SS16位的堆栈段寄存器;位的堆栈段寄存器; (2)16位的指令指针寄存器位的指令指针寄存器IP; (3)20位的地址加法器;位的地址加法器; (4)6字节的指令队列
4、缓冲器。字节的指令队列缓冲器。执执行行部部件件的的功功能能就就是是负负责责从从指指令令队队列列取取指指令令并并执执行行。从从编编程程结结构构图图可可见见,执执行行部部件件由由下下列几个部分组成:列几个部分组成: (1)4个个通通用用寄寄存存器器,即即AX、BX、CX、DX; (2)4个专用寄存器:个专用寄存器: (3)标志寄存器)标志寄存器FR; (4)算术逻辑单元算术逻辑单元ALU。 2执行部件执行部件EU 3“流水线流水线”结构结构 总总线线接接口口部部件件BIU和和执执行行部部件件EU并并不不是是同同步步工作的,两者的动作管理遵循如下原则:工作的,两者的动作管理遵循如下原则: 每每当当8
5、086的的指指令令队队列列中中有有2个个空空字字节节,BIU就就会会自自动动把把指指令令取取到到指指令令队队列列中中。而而同同时时EU从从指指令令队队列列取取出出一一条条指指令令,并并用用几几个个时时钟钟周周期期去去分分析析、执执行行指指令令。当当指指令令队队列列已已满满,而而且且EU对对BIU又又无无总总线线访访问问请请求求时时,BIU便便进进入入空空闲闲状状态态。在在执执行行转转移移、调调用用和和返返回回指指令时,指令队列中的原有内容被自动清除。令时,指令队列中的原有内容被自动清除。第第2 2章章 微处理器微处理器第第2 2章章 微处理器微处理器4、8088和8086的区别1、指令队列长度
6、8086为6个字节、8088为4个字节2、8086是16位机;8088是准16位机3、其他:如有些控制信号不同2.2 8086的寄存器结构按功能分为三类:按功能分为三类:一、通用寄存器一、通用寄存器二、段寄存器二、段寄存器三、控制寄存器、标志寄存器三、控制寄存器、标志寄存器通用寄存器通用寄存器 数据寄存器(AX,BX,CX,DX) 地址指针寄存器(SP,BP) 变址寄存器(SI,DI)数据寄存器数据寄存器8088含4个16位数据寄存器,它们又可分为8个8位寄存器,即:AX AH,ALBX BH,BLCX CH,CLDX DH,DL数据寄存器特有的习惯用法数据寄存器特有的习惯用法AX:累加器。所
7、有I/O指令都通过AX与接口传送 信息,中间运算结果也多放于AX中;BX:基址寄存器。在间接寻址中用于存放基地址;CX:计数寄存器。用于在循环或串操作指令 中存放计数值;DX:数据寄存器。在间接寻址的I/O指令中存放 I/O端口地址;在32位乘除法运算时,存放 高16位数。地址指针寄存器地址指针寄存器SP:堆栈指针寄存器,其内容为栈顶的 偏移地址;BP:基址指针寄存器,常用于在访问内 存时存放内存单元的偏移地址。BX与与BP在应用上的区别在应用上的区别作为通用寄存器,二者均可用于存放数据;作为基址寄存器,用BX表示所寻找的数据在数据段;用BP则表示数据在堆栈段。变址寄存器变址寄存器SI:源变址
8、寄存器DI:目标变址寄存器变址寄存器常用于指令的间接寻址或变址寻址。特别是在串操作指令中,用SI存放源操作数的偏移地址,而用DI存放目标操作数的偏移地址。段寄存器段寄存器用于存放相应逻辑段的段基地址用于存放相应逻辑段的段基地址 CS:代码段寄存器。代码段存放指令代码 DS:数据段寄存器 ES:附加段寄存器 SS:堆栈段寄存器:指示堆栈区域的位置存放操作数存放操作数控制寄存器控制寄存器IP:指令指针寄存器,其内容为下一条 要执行指令的偏移地址FLAGS:标志寄存器,存放运算结果的 特征 6个状态标志位(CF,SF,AF,PF,OF,ZF) 3个控制标志位(IF,TF,DF)2.3 存储器的使用存
9、储器的使用2.3.1存储器的组织按字节存储,每个字节有唯一的物理地址;高位在高地址,低位在低地址对字的存放,如果低位是偶地址,则称为规则存放,否则为非规则存放8086的1M空间,分为两个512KB的高位库和低位库,分别和数据总线的D15-D8及D7-D0相连,通过BHE信号选择2.3.2 8086存储器的分段结构存储器的分段结构 8086 CPU中中有有四四个个段段寄寄存存器器:CS,DS,SS和和ES,这这四四个个段段寄寄存存器器存存放放了了CPU当当前前可可以以寻寻址址的的四四个个段段的的基基值值,也也即即可可以以从从这这四四个个段段寄寄存存器器规规定定的的逻逻辑辑段段中中存存取取指指令令
10、代代码码和和数数据据。一一旦旦这这四四个个段段寄寄存存器器的的内内容容被被设设定定,就就规规定定了了CPU当当前前可可寻寻址址的的段段,如如图图2-7所示。所示。图图2-7 当前可寻址的存储器当前可寻址的存储器段(堆栈段和附加段重叠)段(堆栈段和附加段重叠)2.3.3 8086存储器的逻辑地址与物理地址存储器的逻辑地址与物理地址8086 CPU中中的的每每个个存存储储元元在在存存储储体体中中的的位位置置都都可可以以使使用用实实际际地地址址和和逻逻辑辑地地址址来来表表示。示。CPU访访问问存存储储器器时时,要要形形成成20位位的的物物理理地地址址,即即先先找找到到某某段段,再再找找到到该该段段内
11、内的的偏偏移移量量。换换句句话话说说,CPU是是以以物物理理地地址址访访问问存存储储器器的的,如图如图2-8所示。所示。图图2-8 逻辑地址与物理地址的关系逻辑地址与物理地址的关系8086存储器存储器20位物理地址的形成位物理地址的形成 在在存存储储段段划划分分时时,段段内内地地址址是是连连续续的的,段段与与段段之之间间是是相相互互独独立立的的。每每个个段段的的起起始始地地址址称称段段的的基基址址,段段基基址址必必须须是是能能被被16整整除除的的那那些些地地址址,即即20位位的的段段基基址址的的低低四四位位应应当当是是0000。由由于于段段起起始始地地址址的的低低四四位位为为0,所所以以可可用
12、用20位位地地址址的的高高16位位表表示示段段的的基基址址,存存放放在在段段基基址址寄寄存存器器中中。段段基基址址寄寄存存器器共四个:共四个:CS、DS、ES、SS。返回本节返回本节2.4 8086的引脚信号和工作模式的引脚信号和工作模式2.4.1 8086的总线周期的概念的总线周期的概念T1状态:状态: 送地址送地址T2状态:状态: 撤销地址撤销地址T3状态:状态: 送数据送数据Tw状态:状态: 等待等待T4状态:状态: 总线周期结束总线周期结束2.4.2、8088CPU的引线及功能的引线及功能引脚定义的方法可大致分为:引脚定义的方法可大致分为:每个引脚只传送一种信息(RD等);引脚电平的高
13、低不同的信号(IO/M等);CPU工作于不同方式有不同的名称和定义(WR/LOCK 等);分时复用引脚(AD7-AD0 等) ;引脚的输入和输出分别传送不同的信息(RQ/GT等)。主要引线(最小模式下):主要引线(最小模式下): 8088是工作在最小还是最大模式由MN/MX端状态决定。MN/MX=0工作于最大模式,反之工作于最小模式AD7-AD0:低8位地址和数据信号分时复 用。在传送地址信号时为单 向,传送数据信号时为双向。A19- A16:高4位地址信号,分时复用。A15- A8 :输出8位地址信号。主要的控制和状态信号主要的控制和状态信号WR: 写信号;RD: 读信号;IO/M:为“0”
14、表示访问内存, 为“1”表示访问接口;DEN: 低电平有效时,允许进行读/写操 作;RESET:复位信号。例例:当WR=1,RD=0,IO/M=0时, 表示CPU当前正在进行读存储器操作。中断请求和响应信号中断请求和响应信号INTR:可屏蔽中断请求输入端NMI:非屏蔽中断请求输入端INTA:中断响应输出端总线保持信号总线保持信号HOLD:总线保持请求信号输入端。当CPU 以外的其他设备要求占用总线时, 通过该引脚向CPU发出请求。HLDA:总线保持响应信号输出端。CPU对 HOLD信号的响应信号。2.4.3 微处理器工作模式微处理器工作模式1最小工作模式最小工作模式 由由图图2-13可可知知,
15、在在8086的的最最小小模模式式中中,硬硬件件连连接接上有如下几个特点:上有如下几个特点:(1)MN/ 引引脚脚接接+5V,决决定定了了8086工工作作在在最小模式。最小模式。(2)有一片)有一片8234A,作为时钟发生器。作为时钟发生器。(3)有有三三片片8282或或74LS373,用用来来作作为为地地址址锁锁存存器。器。(4)当当系系统统中中所所连连接接的的存存储储器器和和外外设设比比较较多多时时,需需要要增增加加系系统统数数据据总总线线的的驱驱动动能能力力,这这时时,可可选选用两片用两片8286或或74LS245作为总线收发器。作为总线收发器。图图2-13 8086CPU最小模式下的典型
16、配置最小模式下的典型配置2最大工作模式最大工作模式 由图由图2-4可知,可知,最大模式配最大模式配置和最小模置和最小模式配置有一式配置有一个主要的差个主要的差别:别: 最大模最大模式下多了式下多了8288总线控总线控制器。制器。 图图2-4 8086CPU最大工作最大工作模式下的典型配置模式下的典型配置2.6 8086的总线时序的总线时序1读周期的时序读周期的时序 2写周期的时序写周期的时序 1读周期的时序(图读周期的时序(图2-9) 8086读总线周期读总线周期一个基本的读周期一般包含如下几个状态:一个基本的读周期一般包含如下几个状态:T1状态:状态: T2状态:状态: T3状态:状态: Tw状态:状态: T4状态:状态: 2写周期的时序(图写周期的时序(图2-10) 8086写总线周期写总线周期作业P541、(1)、(3)、(4)、(6)、(8)、(9)、(10)2、(3)、(4)、(5)4、(5)、(6)