第二章微型计算机基础_第1页
第二章微型计算机基础_第2页
第二章微型计算机基础_第3页
第二章微型计算机基础_第4页
第二章微型计算机基础_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章 微型计算机基础课时分配: 6学时教学要求:1、了解微型计算机的基本结构;2、了解8086/8088微处理器系列概况,掌握8086/8088微处理器的内部结构的组成及最小工作模式下引脚定义,掌握8086/8088内部各个寄存器的功能和作用。3、掌握8086/8088的系统总线结构及典型操作时序(最小模式下的读和写);4、理解8086/8088的存储组织方式和I/O组织方式,理解存储器的地址空间与寻址的概念,理解数据的存储格式,理解存储器分段的概念教学内容:1、微型计算机的基本结构2、8088/8088引脚功能,工作模式3、8086/8088功能结构4、8086/8088的总线操作和时序5

2、、8086/8088的存储器编址和I/O编址重点及难点:1、8086/8088的编程结构2、8086/8088的寄存器结构3、8086/8088的总线读写工作时序4、8086/8088的存储器及I/O组织1微型计算机的基本结构一、 基本结构见书上9页图1-41、 硬件系统微处理器存储器:内存容量、内存地址、内存的读写操作输入输出设备:接口的功能总线2、 软件系统系统软件应用软件二、 微机的工作过程 P51、存储程序计算机程序:是实现既定任务的指令队列。指令:是对计算机发出的一条条工作命令,来完成某个所规定的操作。存储程序:就是把处理问题的步骤和所需的数据事先送入存储器中保存起来,工作时由计算机

3、控制部件逐条取出并执行之,从而使计算机自动连续进行运算。2、存储程序的工作原理 存储程序的概念,是把程序和数据送到具有记忆功能的存储器中保存起来,计算机工作时只要给出程序中第一条指令的地址,控制器就可依据存储程序中的指令顺序周而复始地取指令、分析指令,执行指令,直到执行完全部指令为止。以下强调两点: 程序中的指令必须采用二进制编码,和数据一样进行存储; 程序中的指令必须属于执行程序这台机器的指令系统;3、工作过程 见P6,图1-22 8086/8088微处理器主要内容:l 8086CPU外部引线及功能l 8086CPU的内部结构和特点l 内部寄存器的功能l 8086的工作时序8086是Inte

4、l系列的16位微处理器,采用HMOS工艺技术制造,外型封装为双列直插式,40个引脚,内部约2900个晶体管;基本特点:l 16位的内部结构,16条双向数据信号线;l 20条地址信号线,可寻址1M字节存储单元;l 较强的指令系统;l 可利用低16位的地址总线来进行I/O端口寻址,可寻址64K个I/O端口;l 中断功能强,可处理内部软件中断和外部中断,中断源可达256个;l 单一的5V电源,单相时钟5MHz。8088:内部与8086兼容,也是一个16位微处理器,只是外部数据总线为8位,所以称为准16位微处理器。它具有包括乘法和除法的16位运算指令,所以能处理16位数据,还能处理8位数据。8088有

5、20根地址线,所以可寻址的地址空间达220即1M字节。8086/8088具有最小和最大两种工作模式以及内置的多任务处理能力,40个引脚中某些引脚具有双功能,可通过“模式选择引脚”来进行选择。一、8088/8086的指令流水线在程序执行过程中,CPU是有规律地重复执行以下步骤:l 从存储器中取出下一条指令;l 如果指令需要,从存储器中操作数;l 执行指令;l 如果指令需要,将结果写入存储器。8086CPU采用一种新的结构并行地完成这些工作,将上述步骤分配给CPU内两个独立的部件:执行单元(EU)负责执行指令,而总线接口单元(BIU)负责取指令、取操作数和写结果。这两个单元都能够独立完成各自相应的

6、工作。所以,当这两个单元并行工作时,多数情况下,取指令操作与执行指令操作都可重叠地进行。为什么?由于BIU中有一个指令队列。指令队列的操作过程:EU不断地从指令队列取出指令并执行。而当指令队列出现空字节时,BIU就自动执行一次取指令周期,从内存中取出后续的指令代码放入队列中;当遇到跳转指令时,BIU就使指令复位,从新地址取出指令,并立即传给EU去执行。二、8086的工作模式为了适应各种使用场合,8086CPU芯片设计了两种工作模式,即最小模式与最大模式。最小工作模式,就是系统中只有一个8086微处理器,在这种情况下,所有的总线控制信号,都是直接由8086产生的,系统中的总线控制逻辑电路最少,因

7、此,称为最小工作模式。最大工作模式,是指系统中包含两个或两个以上的微处理器。其中,一个是主处理器(即8086CPU),其余的称为协处理器,是协助主处理器工作的。经常与8086CPU配合工作的协处理器有两个,一个是数值运算协处理器8087,另一个是输入/输出协处理器8089。8087能够实现多种类型的数值操作,如高精度的整型和浮点型数值运算,超越函数(三角函数、对数函数)的计算等,大幅度提高系统的数值运算速度。8089有一套专门用于输入输出操作的指令系统,可直接为输入输出设备服务,能够明显提高主处理器的效率。三、最小模式下的外部引脚及其功能芯片的外部特性表现在其引脚信号上,学习时请特别关注以下几

8、个方面: 引脚功能:指引脚信号的定义、作用; 信号流向:信号从芯片向外输出,还是从外部输入芯片,或者是双向的; 有效电平:该引脚起作用时的逻辑电平,是高、低电平有效,还是上升、下降沿有效; 三态能力:输出正常的低电平、高电平外,还可以输出高阻的第三态;8086/8088共有40个引脚,见书上42页图2.15,按其功能可分为地址线、数据线和控制线,许多引脚具有双重定义及功能,采用分时复用方式工作,即在不同时刻,引脚上的信号是不同的,以8088为例来介绍。按照引脚信号的功能,可分为以下几类:1、数据和地址引脚,202、读写控制引脚,83、中断请求和响应引脚,34、总线请求和响应引脚,25、其它引脚

9、,71、数据和地址引脚l AD7AD0:地址/数据复用引脚,双向,三态;(8)在进行读/写操作时,当在CPU总线周期的T1状态时,作地址总线输出(A7A0),在其他T状态均作为双向数据总线使用。l A15A8:地址引脚,输出,三态;(8) ,作地址总线输出。l A19/S6A15/S3:地址/状态复用信号输出引脚,输出、三态; (4)在总线周期的T1状态时,用来输出地址的高4位,而在其他T状态时,用来输出状态信息;S6=0,指示8086当前与总线连通;S5=1,表示当前允许可屏蔽中断,=0,则禁止一切可屏蔽中断;S4、S3,用来指明当前使用的段寄存器。0 0:当前正在使用ES;0 1:当前正在

10、使用SS;1 0:当前正在使用CS,或未用任何段寄存器;1 1:当前正在使用DS2、读写控制引脚l :存储器或I/O端口控制信号,三态,输出;(1)这是CPU区分进行存储器访问还是I/O访问的输出控制信号。当为低电平时,表明CPU要进行存储器的读写操作;如为高电平,表明CPU要进行I/O端口的读写操作。l ALE:地址锁存允许信号,输出,三态,高电平有效,(1)当为高电平时,表示CPU地址线上的地址是有效的,因此,作为锁存控制信号将20位地址锁存到地址锁存器中。l :数据允许输出信号引脚,输出,三态,低电平有效;(1)当该信号有效时,表示数据线上的数据是有效的,常为总线收发器8286提供一个控

11、制信号,表示CPU当前准备发送或接收一项数据。l :数据传送方向控制信号,输出,三态;(1)用来控制数据的传送方向,当为高电平时,则进行数据发送,否则,进行数据接收。在DMA方式时,该信号被浮空,为高阻状态。l :读信号,输出 ;(1)低电平有效,用以指明要执行一个对内存单元或I/O端口的读操作,具体是读内存单元,还是读I/O端口,取决于控制信号。l : 写信号,输出;(1)低电平有效,与配合实现对存储单元、I/O端口所进行的写操作控制。l :系统状态信号,输出;(1)与、决定最小模式下当前总线周期的状态。操作100发中断响应信号101读I/O端口110写I/O端口111暂停000取指令001

12、读内存010写内存011无作用l READY(Ready):“准备好”状态信号,输入引脚;(1) 高电平有效,“Ready”输入引脚接收来自于内存单元或I/O端口向CPU发来的“准备好”状态信号,表明内存单元或I/O端口已经准备好进行读写操作。该信号是协调CPU与内存单元或I/O端口之间进行信息传送的联络信号。3、中断请求和响应引脚l NMI:非屏蔽中断引脚,输入;(1)非屏蔽中断信号是一个由低到高的上升沿,不受中断系统允许标志IF的影响,也不能用软件进行屏蔽。一旦该信号有效,则执行完当前指令后立即响应中断。l INTR:可屏蔽中断请求信号引脚,输入;(1)高电平有效,当INTR=1,表示外设

13、向CPU发出中断请求,CPU在当前指令周期的最后一个T状态去采样该信号,若此时,IF=1,CPU响应中断,执行中断服务程序。l :中断响应信号,输出,低电平有效;(1)是CPU对中断请求信号INTR的响应。4、总线请求和响应引脚l HOLD(Hold Request): 总线保持请求信号,输入;(1)高电平有效。这是系统中的其它总线部件向CPU发来的总线请求信号输入引脚。l HLDA(Hold Acknowledge):总线保持响应信号,输出;(1)高电平有效,表示CPU认可其他总线部件提出的总线占用请求,准备让出总线控制权。5、其它引脚l Reset:系统复位信号,输入,高电平有效;(1)

14、8086CPU要求复位信号至少维持4个时钟周期才能起到复位的效果,复位信号输入之后,CPU结束当前操作,并对处理器的标志寄存器PSW、IP、DS、SS、ES寄存器及指令队列进行清零操作,而将CS设置为0FFFFH。当复位信号变为低电平时,CPU从FFFF0H开始执行程序。复位操作的时序图如下图所示:复位后CPU内部寄存器的状态见P44表2-2l (Test):测试信号,输入引脚;(1),低电平有效,TEST信号与WAIT指令结合起来使用,CPU执行WAIT指令后,处于等待状态,当TEST引脚输入低电平时,系统脱离等待状态,继续执行被暂停执行的指令。l MN/MX:最小/最大模式控制信号,输入;

15、(1)该输入引脚电平的高、低决定了CPU工作在最小模式还是最大模式,当该引脚接+5V时,CPU工作于最小模式下,当该引脚接地时,CPU工作于最大模式下。l CLK/(Clock):时钟信号,输入;(1) 时钟信号的方波信号,占空比约为33%,即1/3周期为高电平,2/3周期为低电平,为CPU和总线控制逻辑电路提供定时手段。l +5V电源和地;(3)四、8086/8088的功能结构其内部结构框图见书上46页图2-6。从结构图上可以看到,由两大部分构成:执行部件EU和总线接口部件BIU。这两部分完全独立,在CPU内部承担不同的任务。BIU和执行部件EU。1、总线接口部件BIU1) 功能:负责与存储

16、器、I/O端口传送信息;l 从内存取指令送到指令队列。l CPU执行指令时,要配合EU从指定的内存单元或外设端口中取数据,并将数据传送给EU或把EU的操作结果传送到指定的内存单元或外设端口。2) BIU的组成l 四个段地址寄存器:CS(代码段),DS(数据段),ES(附加段),SS(堆栈段),16位寄存器;用来存放段地址,与有效的地址偏移量一起,可确定内存的物理地址,SP,BP,DI,SI用来存放偏移地址;这4个段地址使用专一,不可互换,一般情况下,DS和ES需要在程序中设置初值。l 16位指令指针寄存器IP;存放下一条要执行指令的偏移地址(有效地值EA),IP的内容是由BIU自动修改,通常是

17、+1修改,但在执行转移指令时,BIU装入IP的则是目标地址。l 20位的地址加法器。用来产生20位物理地址,8086/8088可用20位地址寻址1M字节的内存空间,而CPU内部的寄存器都是16 位,因此需要由一个附加的机构来计算出20位的物理地址,这个机构就是20位的地址加法器。例如:CS0FE00H,IP0400H,则表示要取指令代码的物理地址为0FE400H。l 指令队列缓冲器。(8088为4字节,8086为6字节)在执行指令的同时,从内存中取下一条或几条指令,并放入指令队列缓冲器中。CPU执行完一条指令后,可以立即执行下一条指令(流水线技术),从而提高CPU效率。2、执行部件EU1) 功

18、能:负责指令的执行。即从指令队列中取出指令,然后分析指令、执行指令。2) 组成l 通用寄存器:数据寄存器AX、BX、CX、DX、地址指针寄存器SP,BP、变址寄存器DI,SIAX、BX、CX、DX均可以作为16位寄存器来使用,也可单独作为8位寄存器来使用,并用H和L分别表示高位和低位,见AL、AH;BL、BH;CL、CH;DL、DH。16位寄存器主要用来存放数据,也可存放地址,但8位寄存器只能存放数据。 为什么?其中AX称也称为累加器,是指令执行的主要部件;BX称为基址寄存器,CX称为计数寄存器,DX称为数据寄存器,SP,BP,DI,SI这两组寄存器在功能上的共同点是在对存储器的操作数寻址时,

19、用于形成20位物理地址中的偏移地址,差别如下:SP是堆栈指针寄存器,在进行堆栈操作时,SP用来存放操作地址的偏移地址,段地址由SS来提供,因此SP和SS一起来确定堆栈在内存中的位置;BP是基数指针寄存器,通常用于存放基地址,常用在间接寻址方式中。SI是源变址寄存器,DI是目的变址寄存器,都用于指令的变址寻址方式,主要是在字符串处理时,分别存放源操作数和目的操作数的偏移地址。l 算术逻辑部件ALU主要是加法器,可完成8位或16位二进制算术运算或逻辑运算,运算结果通过片内总线送到通用寄存器、标志寄存器或经过BIU写入存储器。l 执行部件的控制电路从总线接口的指令队列取出指令操作码,通过译码电路分析

20、,发出相应的控制命令,控制ALU数据流向。l 标志寄存器FLAGS用来存放ALU运算后的结果特征或机器运行状态,共有16位,只有9位有效,根据功能,8086的标志分为两类:状态标志和控制标志。状态标志:表示执行一定的操作后,ALU处于怎样的一种状态,用户不能控制,只能通过执行某些指令来改变其状态;状态标志有6个:CF进位标志位,加法时最高位出现进位或减法时最高位出现借位,该位置1,反之为0。PF奇偶标志位,当运算结果的低8位中l的个数为偶数时,则该位置1,反之为0。AF半进位标志位,做字节加法时,当低四位有向高四位的进位,或在做减法时,低四位有向高四位的借位时,该标志位就置1。通常用于对BCD

21、算术运算结果的调整。ZF零标志位,运算结果为0时,该标志位置1,否则清0。SF符号标志位,当运算结果的最高位为1,该标志位置1,否则清0。OF溢出标志位,当在运算过程中产生溢出,则OF=1,,否则OF=0;所谓溢出,对于有符号数来说,运算的结果超出了范围。(用双高位法进行判断)字节操作的范围:-128127;字操作的范围:-3276832767例1:设 AX =0010 0011 0100 0101 B,DX=0101 0010 0001 1001 B,计算:AX+ DX,AX- DX时,6个状态标志的变化?AX+ DX=0100 0101 0101 1110 BCF=0,SF=0,ZF=0,

22、OF=0,AF=0,PF=0注意:辅助进位标志AF,表示低4位的进位状态;奇偶标志PF,表示的是低8位中,“1”的个数;AX- DX=?控制标志:用来记录控制信息,用户可以根据要求,用指令进行预先设置。控制标志:3个TF跟踪标志位(单步标志位)。当该位置1时,将使8086进入单步工作方式,通常用于程序的调试;IF中断允许标志位,若该位置1,则CPU可以响应可屏蔽中断,否则不能响应可屏蔽中断;DF方向标志位,控制串操作指令的标志;若该位置1,则串操作指令的地址修改为自动减量方向,反之,为自动增量方向。3、执行程序时,BIU与EU的工作配合4、指令的执行过程BIU从内存取出指令将其送到指令队列中,

23、CPU在执行指令时,根据指令所提供的寻址方式,偏移地址及段地址所提供的地址代码,通过20位物理地址加法器计算出物理地址,对存储器或I/O接口进行读/写操作。5、CPU的寄存器结构14个16位的寄存器,通用寄存器、专用寄存器和标志寄存器在EU部分,而段寄存器和指令指针寄存器IP在BIU部分。举例:1、已知AX=6080H,BX=9F80H,执行 ADD AX,BX后,各条件标志的变化?2、在8086/8088CPU的标志寄存器中作为控制标志的有。3、在8088系统中,标志位ZF=1表示运算结果。4、在8088系统中,段地址和偏移地址分别是位?5、8086 CPU内有指示下条指令有效地址的指示器是

24、。6、在8086(8088)微机系统中,一条指令的执行过程中,执行时间可被忽略的过程为( )。A:取指B:译码C:执行D:三种均不可忽略判断题1、在8086系统中,20位地址是在执行部件中形成的。 2、两数相加,结果中有偶数个“1”,则PF=1。 3、8086微处理器“取指令”和“执行指令”操作在时间上是串行的。 五、8086/8088的工作时序(P51)1、微处理器是按照一定时序来工作的,也就是说,CPU的一切操作都是在系统时钟CLK的控制下按节拍有序进行的。有两种时序,时钟周期和总线周期。l 时钟周期:每个时钟脉冲的持续时间就称为一个时钟周期,是CPU的基本时间计量单位,由计算机主频决定,

25、是时钟频率的倒数;l 总线周期:CPU通过外部总线对存储器或I/O端口进行一次读/写操作的过程;l 指令周期:CPU执行一条指令的时间 (包括取指令和执行该指令所需要的全部时间);例:计算机主频为8MHz,则时钟频率为:1/8MHz=125ns。可以看出,一个指令周期应由若干个周期组成,一个总线周期应由若干个时钟周期组成。2、8086CPU的一个基本总线周期由4个时钟周期(T1T4)组成,也称为状态,在每个T状态下,CPU完成不同的动作;l T1状态,CPU向多路复用总线上发送地址信息,并指出要寻址的存储单元和外设端口低值。l T2状态,CPU从总线上撤销地址,使总线的低16位置为高阻状态,为

26、传输数据做准备;总线的高4位输出本总线周期的状态信息,这些状态信息用来表示中断允许状态,当前正使用的段寄存器名等。l T3状态,总线的高4位继续提供状态信息,而低16位上出现了CPU写出的数据,或CPU从存储器或I/O端口读入的数据。l T4状态,总线周期结束。l Tw等待状态,如果存储器或I/O设备不能及时配合CPU传送数据,这时,存储器或外设通过“READY”信号线在T3状态启动之前向CPU发一个“数据未准备好”信号,迫使CPU在T3状态之后插入1个或多个Tw状态;当指定的存储器或外设完成数据传送时,便在“READY”线上发出“准备好”信号,CPU接收到这一信号后,自动脱离Tw等待状态而进

27、入T4状态。l T1空闲状态,如果在1个总线周期之后,不立即执行下一个总线周期,系统总线处于空闲状态。3、最小模式下,8088的读/写总线过程读总线周期和写总线周期的示意图见P521图2-11和图2-12 1) 读总线周期l 状态有效,用来指出本次读周期是存贮器读还是I/O读,它一直保持到有效。地址线信号有效,高4位通过地址/状态线送出,低16位通过地址/数据线送出,用来指出操作对象的地址,即存贮器单元地址或I/O端口地址。ALE有效,将地址信号锁存到地址锁存器中,即在锁存器输出端得到完整的20位地址信号当系统中配有总线驱动器时,使变低,用来表示本周期为读周期,并通知总线驱动器接收数据()l

28、状态 高四位地址/状态线送出状态信息,。 低16位地址/数据线浮空,为下面传送数据准备。 有效,表示要对存贮器/I/O端口进行读。 有效,使得总线收发器(驱动器)可以传输数据()。l 状态从存贮器/I/O端口读出的数据送上数据总线(通过)。l 状态若存贮器或外设速度较慢,不能及时送上数据的话,则通过READY线通知CPU,CPU在的前沿(即结束末的下降沿)检测READY,若发现READY0,则在结束后自动插入1个或几个,并在每个的前沿处检测READY,等到READY变高后,则自动脱离进入。l 状态在与(或)的交界处(下降沿),读取总线上的数据,使各控制及状态线进入无效。2) 写总线周期l 状态

29、基本上同读周期,只有此时为高不是低。l 状态与读周期有两点不同: 变成; 不是浮空,而是发出要写入存贮器/I/O端口的数据。l 状态l 状态l 状态、三个状态同读周期。已完成CPU存贮器/I/O端口的数据传送,使数据线上的数据无效,同时,使各控制与状态信号无效。4、总线的三态性8086的地址总线,数据总线和部分控制总线均采用三态缓冲器式总线电路。“三态”是指出输出有逻辑“1”、逻辑“0”和“浮空”三种状态。当处于“浮空”状态时,总线电路呈现极高的输出阻抗,总线的三态特性,既保证在任何时候,只允许此时进行信息交换的设备占用总线,其他设备与总线完全脱离,不影响正常的信息传递,又可以为其他传递方式(

30、如DMA)提供必要条件。六、存储器编址和I/O编址1、存储器编址l 存储容量、物理地址8086有20根地址总线,可直接寻址的存储器地址空间为220=1M,存储器以字节为单位进行组织,每个字节对应一个唯一的地址(物理地址),其范围为00000HFFFFFH。l 存储器的分段、段地址我们知道,8086CPU内部所提供的寄存器都是16位的,即直接处理的地址范围为216=64K,为了能对1M的内存空间进行寻址,引入了“分段”的概念。把1M的内存空间划分为若干个逻辑段,规定存储器的一个段为64KB,由段寄存器来确定存储单元的段地址,由指令提供该单元相对于相应段起始地址的16位偏移量。这样,系统的整个存储空间可分为16个互不重叠的逻辑段,如下图所示。 存储空间段结构 分段逻辑结构存储器的每个段的容量为64KB,并允许在整个存储空间内浮动,即段与段之间可以部分重叠、完全重叠、连续排列,非常灵活,如上图所示。但各逻辑段的起始地址必须能被16整除,即逻辑段的起始地址的低4位必须为0,这时,共有216个逻辑段,任意相邻

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论