《微机原理课件行业知识》由会员分享,可在线阅读,更多相关《微机原理课件行业知识(50页珍藏版)》请在金锄头文库上搜索。
1、本章内容提要本章内容提要: :l微型计算机的组成及工作原理微型计算机的组成及工作原理l8086微处理器的功能结构微处理器的功能结构l8086/8088寄存器结构寄存器结构l8086存储器存储器l8086的引脚信号和工作模式的引脚信号和工作模式l微处理器总线时序微处理器总线时序l80x86系列微处理器系列微处理器 第二章第二章 微型计算机系统中的微处理器微型计算机系统中的微处理器1向阳课件 2.1 微型计算机的组成及工作原理微型计算机的组成及工作原理 2.1.1 2.1.1微型计算机基本结构微型计算机基本结构微型计算机基本结构微型计算机基本结构 到目前为止,大多数微型计算机的结构归属于冯诺依曼结
2、构,主要包括运算器、控制器、存储器、I/O设备及其接口电路,如图2.1所示。运算器和控制器合称为中央处理器CPU。2向阳课件2.1.12.1.1微型计算机基本结构微型计算机基本结构微型计算机基本结构微型计算机基本结构3向阳课件 2.1.2 2.1.2 微处理器微处理器微处理器微处理器CPUCPU 微处理器简称CPU,是用来实现运算和控制功能的部件,是整个微型计算机的核心,由运算器、控制器和寄存器组3部分组成。CPU一般具有以下基本功能:1) 指明将要执行指令所在存储单元的地址,取出指令并进行译码。2) 执行算术运算和逻辑运算,暂存少量数据。3) 传送数据,包括在CPU内部传送数据以及与外界交换
3、数据。4) 对各部件进行控制,包括对CPU内部的控制和对CPU以外部件的控制。5) 响应其他部件发出的中断请求和总线请求等。4向阳课件 2.1.3 2.1.3总线总线总线总线 微型计算机系统采用总线结构,将5大部件连接起来。各部件之间传送信息的公共通道,称为总线(BUS)。 在总线上流动的信息大致可分为两类: 一类是数据和程序,数据包括程序运行所需的原始数据和程序运行的结果以及这些数据的地址信息; 另一类是控制器向各部件发出的控制命令以及各部件发给控制器的状态信息。 微机系统利用3组总线,即数据总线DB、地址总线AB和控制总线CB分别传送指令及指令执行过程中相关的数据、地址信息和控制信息。5向
4、阳课件 2.1.3 2.1.3 总线总线总线总线(1)数据总线 数据总线是在CPU、存储器或I/O端口等部件之间传递数据的通道,每次传送一个“计算机字长”,其宽度(根数)通常与计算机的字长一致。数据总线的传输是双向的。(2)地址总线 地址总线是寻找、传送存储单元或I/O端口的地址信息的总线。地址总线是由CPU输出给存储器或I/O端口。地址总线数决定了CPU当前可直接寻址空间的大小。(3)控制总线 CPU控制器发往各部件的控制信号线以及各部件发给CPU的状态信号线构成了“控制总线”,控制线总体上是“双向”的,但就控制总线中某一根来说,在一种确定状态下,只能表示一种信息,其传输是单向的。6向阳课件
5、 2.1.4 2.1.4 存储器存储器存储器存储器 存储器是指微型计算机的内存储器(人们常说内存条),它通常由CPU之外的半导体存储器芯片组成,用来存放程序、原始操作数,中间结果和最终结果数据。 2.1.5 2.1.5 输入输入输入输入/ /输出设备及其接口电路输出设备及其接口电路输出设备及其接口电路输出设备及其接口电路 输入/输出设备统称为外部设备(简称外设),是微型计算机的重要组成部分。与微型计算机相连接的各种设备统称外部设备。例如,键盘、打印机、显示器、磁带机、磁盘等。另外,在微型计算机的工程应用中,所使用的各种开关、继电器、步进电机、A/D及D/A变换器等均可看作微型计算机的外部设备。
6、7向阳课件 2.2 8086微处理器的功能结构微处理器的功能结构 8086是Intel系列的16位微处理器,是80x86系列微机发展的基础。它所具有的主要特性如下:1)制造工艺:采用具有高速运算性能的HMOS工艺制成。2)芯片集成度:芯片上集成有2.9万个晶体管,用单一的+5V电源和40条引脚的双列直插式封装。3)时钟频率:510MHz,最快的指令执行时间0.4s。4)字长:16位8088为准16位。5)总线使用方式:数据、地址总线分时复用。6)内存容量:20位地址可寻址1MB。7)端口地址:16位I/O地址可寻址64KB个端口。8)中断功能:可处理内部软件中断和外部硬件中断,中断源可多达25
7、个。8向阳课件 2.2.1 2.2.1 8086/8088 CPU 8086/8088 CPU的内部结构的内部结构的内部结构的内部结构9向阳课件( 1 )指令执行部件EU(Exection Unit) 组成:通用寄存器,标志寄存器,ALU,EU控制系统等。作用:负责指令的执行,完成指令的操作。工作过程:从队列中取得指令,进行译码,根据指令要求向EU内部各部件发出控制命令,完成执行指令的功能。若执行指令需要访问存储器或I/O端口,则EU将操作数的偏移地址送给BIU,由BIU取得操作数送给EU。10向阳课件(2)总线接口部件BIU(Bus Interface Unit) 组成:16位段寄存器,指令
8、指针,20位地址加法器,总线控制逻辑,6字节指令队列。作用:负责从内存指定单元中取出指令,送入指令流队列中排队;取出指令所需的操作数送EU单元去执行。工作过程:由段寄存器与IP形成20位物理地址送地址总线,由总线控制电路发出存储器“读”信号,按给定的地址从存储器中取出指令,送到指令队列中等待执行。*当指令队列有2个或2个以上的字节空余时,BIU自动将指令取到指令队列中。若遇到转移指令等,则将指令队列清空,BIU重新取新地址中的指令代码,送入指令队列。*指令指针IP由BIU自动修改,IP总是指向下一条将要执行指令的地址。11向阳课件 2.2.2 2.2.2 EUEU和和和和BIUBIU的并行工作
9、的并行工作的并行工作的并行工作12向阳课件 2.2.3 2.2.3 8086 8086与与与与80888088的区别的区别的区别的区别相同点:1.微处理器内部采用16位结构2.内部的两个功能部件EU一样区别: 1.8086的指令队列是6字节长,而8088的指令为4字长;2.8086是真正的16位机,同BIU相连的8086总线中数据总线是16位总线,而8088是准16位机,同BIU相连的8088总线中数据总线为8位总线。13向阳课件 2.3 8086/8088寄存器结构寄存器结构在8086微处理器中可供程序员使用的有14个16位寄存器,如图2.5所示。一般而言,14个寄存器按其用途可分为通用寄存
10、器、指令指针、标志寄存器和段寄存器4类。14向阳课件 2.3.1 2.3.1 通用寄存器通用寄存器通用寄存器通用寄存器一、数据寄存器 数据寄存器包括4个16位的寄存器AX、BX、CX和DX,主要用来存放16位的数据或地址。同时每个数据寄存器又可分成两个8位寄存器,即AH、AL、BH、BL、CH、CL、DH和DL,用来存放8位数据。 数据寄存器用于存放指令操作数。在一些指令中,某些寄存器具有特定的用途:如AX作累加器;BX作基址寄存器;CX在串操作指令中用作计数器;DX在字乘法、除法指令中存放乘积高位或被除数高位或余数,在某些I/O操作期间用来保存I/O端口地址等。15向阳课件二、指针寄存器和变
11、址寄存器 指针寄存器和变址寄存器是4个16位寄存器。堆栈指针SP(stack point)和基址指针BP(basic point)称为指针寄存器。源变址寄存器SI(source index)和目的变址寄存器DI(destination index)称为变址寄存器。 2.3.1 2.3.1 数据寄存器数据寄存器数据寄存器数据寄存器* BP,SP寄存器称为指针寄存器,与SS联用。* DI,SI寄存器称为变址寄存器,与DS联用,在串指令中,SI,DI均为隐含寻址,此时,SI与DS联用, DI与ES联用。16向阳课件 2.3.2 2.3.2 指令指针指令指针指令指针指令指针 IP(instructio
12、n pointer)指令指针是一个16位寄存器,用来存放将要执行的下一条指令在当前代码段中的偏移地址。在程序运行过程中,BIU可修改IP中的内容,IP总是指向下一条待取的指令。用户不能编写指令直接改变IP 的内容。 2.3.3 2.3.3 控制寄存器组控制寄存器组控制寄存器组控制寄存器组 8086/8088 CPU中设置了一个16位标志寄存器FLAG,用来存放运算结果的特征和控制标志。16位标志寄存器FLAG中只用其中9位作标志位,其余位为无效位。9个标志位可分成两类:一类叫状态标志位,用来表示算术逻辑运算结果的特征,包括CF、PF、AF、ZF、SF和OF;另一类叫控制标志位,用来控制CPU的
13、操作,由程序设置或清除,它们是IF、DF和TF。* I P是指令地址在代码段内的偏移量(又称偏移地址),IP要与CS配合构成共同物理地址。17向阳课件CF(进位标志): 当运算结果的最高位(D7/D15)出现进位(借位)时,CF=1;PF(奇偶校验标志):当运算结果中“1”的个数为偶数时,PF=1;AF(辅助进位标志):当结果的D3向D4(低位字节)出现进位(借位)时,AF=1;ZF (零标志): 当运算结果为零时,ZF=1;SF (符号标志): 当运算结果的最高位D7/D15为1时,SF=1;OF (溢出标志):当运算结果超过机器所能表示的范围时,OF=1;DF(方向标志):在字符串操作时,
14、决定操作数地址调整的方向,DF=1,为递减;IF (中断允许标志): IF=1,允许CPU响应外部的可屏蔽中断;TF (陷阱标志):当TF=1,CPU每执行一条指令便自动产生一个内部中断, 在中断服务程序中可检查指令执行情况。D0D2D4D6D15D11D818向阳课件例:MOV AL 64H;64HAL ADD AL 64H;(AL)+64H 求OF=? CF=?解:64H=01100100B=100D 则 64H+64H=01100100B+01100100B = 11001000B= -56D结果 OF=1 CF=0 有溢出而无进位。产生溢出的原因是因为第七位(AD7)没有向前产生进位,
15、相加结果超过表示范围。19向阳课件例:MOV AL 0ABH; ADD AL 0FFH; 求CF=? OF=?解: 0ABH=10101011B= -85D 0FFH=11111111B= -1D 0ABH+0FFH=10101011B+11111111B = 结果没有超出-128127范围,求下例中各状态标志的值:1则 SF= ZF= PF= CF= OF= AF=(1)10101010B= -86D0,0,0,0,0,0CF=1,OF=0。20向阳课件 2.3.4 2.3.4 段寄存器组段寄存器组段寄存器组段寄存器组 在8086/8088系统中采用分段技术把1MB的存储空间分成若干个逻辑段
16、,每段最长为64KB,这些逻辑段可以在整个存储空间中定位,用段寄存器给定各个逻辑段的首地址的高16位,这个地址被称作段基址。 8086/8088按信息存储的不同性质分为四类。* CS(代码段寄存器)指向当前的代码段,指令由此段取出;*SS (堆栈段寄存器)指向当前的堆栈段,栈操作的对象是该段 存储单元的内容;*DS(数据段寄存器)指向当前的数据段,该段中存放程序的操 作数;*ES (附加段寄存器)指向当前的附加段,主要用于字符串数据 的存放,也可以用于一般数据的存放。 21向阳课件 2.4 8086存储器存储器 2.4.1 2.4.1 80868086存储器组织及其寻址存储器组织及其寻址存储器
17、组织及其寻址存储器组织及其寻址 8086微处理器地址线为20根,可以寻址1MB的内部存储器,地址编号为00000HFFFFFH。我们约定存储空间以8b为单位进行组织,每个存储单元存储一个字节数据。如果存放一个“字”数据(16b),则存放在相邻的两个存储单元中,并且高字节存放在高地址单元、低字节存放在低地址单元,双字单元的存放方式与字单元类似,它被存放在相邻的4个字节中。22向阳课件矛盾:存储器地址空间1MB,20bit地址线;内部各寄存器和数据总线均为16bit。 解决方法:将整个存储器分为若干个逻辑段,每段内地址16bit,即最多地址空间64KB。允许各逻辑段在整个存储空间浮动,段与段之间可
18、以是连续的,也可以是分开的或重叠的。23向阳课件00000H逻辑段2=64KB逻辑段1起点逻辑段2起点逻辑段3起点逻辑段4起点FFFFFH逻辑段1=64KB逻辑段4=64KB逻辑段3=64KB 每个段的首地址称为“段基值”, “段基值”必须能被16整除(XXXX0H)。 程序执行前,分别对相应的段寄存器CS,DS,SS,ES置“段基值”,若程序长度大于64KB,则可通过对CS送新的“段基值”将程序转移到新段中。24向阳课件 2.4.2 2.4.2 80868086存储器的分段结构和物理地址的形成存储器的分段结构和物理地址的形成存储器的分段结构和物理地址的形成存储器的分段结构和物理地址的形成一、
19、分段结构 8086程序将1MB的存储空间看成为一组连续的存储段,各段的功能由具体用途而定,分别为代码段、数据段、堆栈段和附加段。二、物理地址的形成1)当取指令时,8086会自动选择CS值作为段基址,再加上由IP提供的偏移量形成物理地址。2)当涉及堆栈操作时,8086会自动选择SS值作为段基址,再加上由SP提供的偏移量形成物理地址。3)当涉及一个操作数(存储器操作数)时,8086会自动选择DS值为段基值(若以BP为基地址,则SS为段基值),再加上16位偏移量形成物理地址,这16位偏移量可以来自:指令中提供的直接地址16位的位移量;某一个16位地址寄存器的值;指令中的位移量加上16位地址寄存器的值
20、。25向阳课件逻辑地址:允许在程序中编排的地址;物理地址:信息在存储器中实际存放的地址;对给定的任一存储单元,有两部分逻辑地址: 段基址(段地址)由CS,DS,SS,ES决定 段内偏移量(段内有效地址)(该单元相对于段基址的距离)段地址 0000段内有效地址 + 0000 物理地址(20bit)16bit16bit20bit26向阳课件2.4.2 2.4.2 80868086存储器的分段结构和物理地址的形成存储器的分段结构和物理地址的形成存储器的分段结构和物理地址的形成存储器的分段结构和物理地址的形成27向阳课件 逻辑地址的来源;操作类型 隐含段地址 替换段地址 偏移地址取指令 CS 无 IP
21、 堆栈操作 SS 无 SPBP间址 SS CS、DS、ES EA存/取操作数 DS CS、SS、ES EA源字符串 DS CS、SS、ES SI目的字符串 ES 无 DIEA-有效地址,28向阳课件 2.5 8086的引脚信号和工作模式的引脚信号和工作模式 2.5.1 2.5.1 80868086的总线周期的概念的总线周期的概念的总线周期的概念的总线周期的概念 为了取得指令和传送数据,就需要CPU的总线接口部件执行一个总线周期。在8086/8088中,一个最基本的总线周期由4个时钟周期组成,时钟周期是CPU的基本时间计量单位,它由计算机主频决定。1)在T1状态,CPU往多路复用总线上发出地址信
22、息,以指出要寻址的存储单元或外设端口的地址。2)在T2状态,CPU从总线上撤销地址,而使总线的低16位浮置成高阻状态,为传输数据作准备。3)在T3状态,多路总线的高4位继续提供状态信息,而多路总线的低16位,(8088则为低8位)上出现由CPU写出的数据或者CPU从存储器或端口读入数据。29向阳课件4)在T4状态,总线周期结束。2.5.1 80862.5.1 8086的总线周期的概念的总线周期的概念的总线周期的概念的总线周期的概念30向阳课件 2.5.2 2.5.2中断操作和中断系统的概念中断操作和中断系统的概念中断操作和中断系统的概念中断操作和中断系统的概念1.8086的中断分类 8086/
23、8088有一个强有力的中断系统,可以处理256种不同的中断,每个中断对应一个类型码,所以,256种中断对应的中断类型码为0255。 从产生中断的方法来分,这256种中断可以分为两大类:一类叫硬件中断;一类叫软件中断。硬件中断是通过外部的硬件产生的,所以,也常常把硬件中断称为外部中断。硬件中断又可以分为两类:一类叫非屏蔽中断;另一类叫可屏蔽中断。软件中断是CPU根据软件中的某条指令或者软件对标志寄存器中某个标志的设置而产生的,从软件中断的产生过程来说,完全和硬件电路无关。31向阳课件2.5.22.5.2中断操作和中断系统的概念中断操作和中断系统的概念中断操作和中断系统的概念中断操作和中断系统的概
24、念32向阳课件2.5.22.5.2中断操作和中断系统的概念中断操作和中断系统的概念中断操作和中断系统的概念中断操作和中断系统的概念2.向量表位置和结构 8086/8088的中断系统是以位于内存0段的03FFH区域的中断向量表为基础的,中断向量表中最多可以容纳256个中断向量。所谓中断向量,实际上就是中断处理子程序的入口地址,每个中断类型对应一个中断向量。3.向量构成 中断向量并不是任意存放的。一个中断向量占4个存储单元,其中前两个单元存放中断处理子程序入口地址的偏移量(IP),低位在前,高位在后,后两个单元存放中断处理子程序入口地址的段地址(CS),同样也是低位在前,高位在后。按照中断类型的序
25、号,对应的中断向量在内存的0段0单元开始有规则的进行排列。33向阳课件2.5.22.5.2中断操作和中断系统的概念中断操作和中断系统的概念中断操作和中断系统的概念中断操作和中断系统的概念4.中断类型码和中断向量所在位置之间的分布关系34向阳课件例:某中断的中断类型号为68H,其中断过程为:(1) 计算存放中断服务程序入口地址的地址=68H*4=1A0H;(2) 取中断入口地址的段内偏移量装入IP,IP=2050H ,段码装入CS,CS=A000H;(3 ) 转向中断服务程序;(4 ) 中断返回502000A0001A0H001A2H001A4H存放地址=68H*4=1A0H2050A000ST
26、IPUSH DSIRET中断服务程序A000:2050INT 68HMOV AX,035向阳课件 2.5.3 2.5.3微处理器芯片封装及引脚功能微处理器芯片封装及引脚功能微处理器芯片封装及引脚功能微处理器芯片封装及引脚功能 8086/8088 CPU采用标准DIP40线封装,根据它的基本性能至少包含16/8条数据线,20条地址线,再加上其他一些必要的控制信号,这样芯片引脚数量太多,因此对部分引脚采用分时复用方式,构成40条引脚的双列直插式封装.36向阳课件部分管脚说明AD15AD0(输入输出,三态)地址数据分时复用的引脚A19/S6A16/S3 高4位地址/状态信号复用BHE/S7(输出)数
27、据总线高8位数据有效信号,低电平有效。与A0相配合用来访问奇地址字节或偶地址字节。S7状态信号未用 RD(读)低电平有效,输出 READY(输入)准备就绪信号,高电平有效。 TEST(输入)该引脚的输入信号由WAIT指令检测。 INTR(输入)可屏蔽中断请求信号,电平触发,高电平有效。 NMI(输入)非屏蔽中断请求信号,边沿触发。REST 复位信号,高电平有效CLK 时钟,由信号发生器产生DT/R(输出)数据传送方向信号控制 即发送还是接受37向阳课件 2.5.4 2.5.4微处理器工作模式微处理器工作模式微处理器工作模式微处理器工作模式 8086 CPU构成的微机系统,有最小模式和最大模式两
28、种系统配置。最小模式:在系统中只有8086或8088一个处理器,所有的总线 控制信号都直接由8086或8088直接产生。最大模式:适于包含两个或多个处理器的系统,其中一 个是主处理器(8086或8088), 其它如协处理器。引脚MN/MX 接地为最大模式 特点:系统中存储器芯片,I/O芯片不多; 地址总线由AD0AD15,A16/ S3 A19/ S6通过8282锁存器构成; 数据总线直接由AD0AD15构成(也可加总线驱动8286); 控制总线由CPU的控制线提供,构成一小型、单处理机系统。1、 最小模式系统(MN/ MX引脚接+5V电源)38向阳课件2.5.42.5.4微处理器工作模式微处
29、理器工作模式微处理器工作模式微处理器工作模式 82848282存储器8286I/O接口VccVccCLKMN/MXRDWRIO/MALEA16-A19AD0-AD15DT/RDENINTAINTRREADYRESET8086CPUSTBTOE数据总线地址总线OE8088最小组态系统配置图时钟发生器BHEBHE在最小模式系统中,还需加入:1片8284A3片8282/8283(地址锁存器)2片8286/ 8287(收发器)39向阳课件40向阳课件2.最大模式 (MN/ MX引脚接地) 当MN/MX接地,系统就工作于最大模式。最大模式与最小模式系统的主要区别是系统中增设了一个总线控制器8288和一个
30、总线仲裁器8289,这样可构成以8086/8088 CPU为中心的,还包含其他微处理器(如8087数值协处理器和8089 I/O处理器)的微机系统。41向阳课件 系统控制信号由总线控制器8288提供, 用于多处理机和协处理机结构中。8086最大组态系统配置图8288为总线控制器,输入8086的总线状态信号,输出总线命令和控制信号。8289为总线裁决器,用于裁决哪个处理器拥有对总线的使用权。42向阳课件 2.6微处理器总线时序微处理器总线时序 2.6.1 2.6.1 最小模式系统中最小模式系统中最小模式系统中最小模式系统中CPUCPU的读的读的读的读/ /写总线周期写总线周期写总线周期写总线周期
31、1.8086 CPU读总线周期 最小模式下8086 CPU的读总线周期时序如图所示。T1开始时,BIU将被访问存储器或I/O端口的物理地址A19/S6A16/S3及AD15AD0连同总线高位有效信号BHE一起送至总线上,在地址锁存器允许信号ALE的控制下,可将地址锁存到8282/8283地址锁存器中,然后输出到地址总线上,由M/IO信号确定读存储器(M/IO=1)还是读I/O端口(M/IO=0)。43向阳课件1. 读总线周期读总线周期地址A19-A0M / IO :在整个读周期有效, 0:I/O读,1:M读;ALE:T1期间出现正脉冲, 下降沿锁存地址信息;RD: 在T2-T3期间有效;DT/
32、 R:在整个总线周期为低 电平,表示读周期;DEN:在T2-T3期间为低电 平,表示数据有效。 存储器读时序 2.6微处理器总线时序微处理器总线时序 2.6.1 2.6.1 最小模式系统中最小模式系统中最小模式系统中最小模式系统中CPUCPU的读的读的读的读/ /写总线周期写总线周期写总线周期写总线周期44向阳课件2、T1上升沿ALE=0锁存地址信号A19A0,存储器读时序说明3、T2开始 RD0,存储器开始读 DEN0,DB上允许数据有效 4、T4开始 DB上数据稳定。RD、DEN恢复为1,CPU获得数据 5、T4结束 DT/R=1,存储器读周期结束1、T1开始(T1下降沿) M/ IO1,
33、存储器操作20位地址信号输出,BHE信号有效 ALE1, DT/R0允许CPU读入45向阳课件具有等待状态的存储器读时序 8086在T3状态的的前沿采样READY线,若发现其为低,则在T3周期结束后,插入一个Tw状态。以后在每个Tw周期的前沿采样READY线,只有在发现它为高电平时,才在这个Tw结束后进入T4周期。具有等待状态的存储器读时序46向阳课件2. 写周期写周期存储器写时序AD15 AD0:在T2T4期间CPU送上欲输出的数据,而无高阻态;存储器写时序与存储器读时序相似,其不同点在于:WR:在T2T4期间WR有效;DT/R:在整个总线周期内为高,表示写周期,在接有数据收发器的系统中,用
34、来控制数据传输方向。47向阳课件存储器写时序说明2、T1上升沿 ALE=0锁存地址信号A19A03、T2开始 WR0,存储器开始写 DEN0,DB上允许数据有效 4、T4开始 数据已写至存储器 WR、DEN恢复为15、T4结束 写周期结束1、T1开始M/ IO1,存储器操作 20位地址信号输出,BHE信号有效 ALE1, DT/R1,CPU输出48向阳课件复位时序3. 系统复位 当8086在RESET引线上检测到一个脉冲的正沿时,停止正在进行的所有操作,处于初始化状态,直到RESET信号变低。系统复位,各寄存器的状态:49向阳课件作业:p54 1(5)、(6);2(6)、 (4)、 (5)3(5)50向阳课件