版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本章内容提要:微型计算机的组成及工作原理8086微处理器的功能结构8086/8088寄存器结构8086存储器8086的引脚信号和工作模式微处理器总线时序80x86系列微处理器
第二章微型计算机系统中的微处理器2.1微型计算机的组成及工作原理微型计算机基本结构到目前为止,大多数微型计算机的结构归属于冯·诺依曼结构,主要包括运算器、控制器、存储器、I/O设备及其接口电路,如图2.1所示。运算器和控制器合称为中央处理器CPU。2.1.1微型计算机基本结构
微型计算机的基本组成如图所示:微机的核心部件,具有运算和控制功能组成:算术逻辑单元ALU(arithmeticlogicunit)寄存器(register)组控制器(controlunit)
(1)CPU
总线是把计算机各部分有机地连接起来的一组并行导线,是各个部分之间进行信息交换的公共通道微机的三总线:数据总线DB
在CPU与存储器和CPU与I/O接口之间双向传送数据.其条数决定了每一次能同时传送的二进制数的位数。如:8088的数据总线为8条,一次能够传送8位二进制数,用D7~D0表示(2)总线地址总线AB
传送CPU发出的地址,以寻址存储单元或I/O端口。AB的宽度决定了计算机系统能够使用的最大的存储器容量。如:地址总线为20条,用A19~A0表示,可寻址220=1M的存储空间控制总线CB
向计算机系统的各部件发送操作命令和定时信息。带有上横线的表示低电平有效,无上横线的表示高电平有效
如:ALE(addresslatchenable)、INTR高电平有效,MEMW、MEMR、IOR、IOW、INTA低电平有效主要用于存放程序和数据存储单元单元地址(3)存储器(memory)外部设备通过I/O接口与计算机连接。因为外设的工作速度远低于CPU的速度外设表示信息的格式与计算机不同接口还应向计算机报告设备的运行状态,传达计算机命令等(4)I/O接口(5)I/O设备输入设备:键盘、模数转换器、扫描仪等输出设备:显示器、打印机、绘图机等输入/输出设备:磁盘和光盘等微处理器的结构微处理器的内部寄存器微处理器的存储器组织微处理器的引脚功能最大模式和最小模式微处理器的时序2.28086微处理器的功能结构8086/8088微处理器8086是Intel系列的16位微处理器,是80x86系列微机发展的基础。8086/8088微处理器是Intel公司推出的第三代CPU芯片,它们的内部结构基本相同,都采用16位结构进行操作及存储器寻址,但外部性能有所差异,两种处理器都封装在相同的40脚双列直插组件中。8086芯片所具有的主要特性如下:1)制造工艺:采用具有高速运算性能的HMOS工艺制成。2)芯片集成度:芯片上集成有2.9万个晶体管,用单一的+5V电源和40条引脚的双列直插式封装。3)时钟频率:5~10MHz,最快的指令执行时间0.4μs。4)字长:16位,8088为准16位。5)总线使用方式:数据、地址总线分时复用。6)内存容量:20位地址可寻址1MB。7)端口地址:16位I/O地址可寻址64KB个端口。8)中断功能:可处理内部软件中断和外部硬件中断,中断源可多达25个。8086/8088微处理器——微处理器的结构8086/8088微处理器的编程结构编程结构:是指从程序员和使用者的角度看到的结构,亦可称为功能结构。从功能上来看,8086CPU可分为两部分,即总线接口部件BIU(BusInterfaceUnit)和执行部件EU(ExecutionUnit)。8086/8088微处理器——微处理器的结构8086/8088微处理器的组成总线接口部件(BIU)组成:①16位段寄存器(DS、CS、ES、SS);
②16位指令指针寄存器IP(指向下一条要取出的指令代码);
③20位地址加法器(用来产生20位地址);
④6字节(8088为4字节)指令队列缓冲器;
⑤总线控制逻辑。功能:负责从内存中取指令,送入指令队列,实现CPU与存储器和I/O接口之间的数据传送。执行部件(EU)组成:①ALU(算术逻辑单元);
②16位通用寄存器(AX、BX、CX、DX);
③16位专用寄存器(BP、SP、SI、DI);
④标志寄存器(FLAG\PSW);
⑤EU控制系统。功能:负责分析指令和执行指令。8086/8088微处理器——微处理器的结构BIU和EU的动作协调原则BIU和EU按以下流水线技术原则协调工作,共同完成所要求的任务:①每当8086的指令队列中有两个空字节,BIU就会自动把指令取到指令队列中。其取指的顺序是按指令在程序中出现的前后顺序。②每当EU准备执行一条指令时,它会从BIU部件的指令队列前部取出指令的代码,然后用几个时钟周期去执行指令。在执行指令的过程中,如果必须访问存储器或者I/O端口,那么EU就会请求BIU,进入总线周期,完成访问内存或者I/O端口的操作;如果此时BIU正好处于空闲状态,会立即响应EU的总线请求。如BIU正将某个指令字节取到指令队列中,则BIU将首先完成这个取指令的总线周期,然后再去响应EU发出的访问总线的请求。③当指令队列已满,且EU又没有总线访问请求时,BIU便进入空闲状态。④在执行转移指令、调用指令和返回指令时,由于待执行指令的顺序发生了变化,则指令队列中已经装入的字节被自动消除,BIU会接着往指令队列装入转向的另一程序段中的指令代码。8086/8088微处理器——微处理器的结构BIU和EU的动作协调原则将8086/8088CPU分成二个独立的功能部件使二者能够并行工作,把取指令工作和分析指令、执行指令工作重叠进行,从而提高CPU的工作效率,加快指令的执行速度。指令队列可以被看成是一个特殊的RAM,它的工作原理是"先进先出",写入的指令只能存放在队列尾,读出的指令是队列头存放的指令。EU和BIU之间就是通过指令队列联系起来,多数情况下,BIU在不停地向队列写入指令,而EU每执行完一条指令后,就向队列读取下一条指令。二者的动作既独立,又协调。8086/8088寄存器结构
8086/8088内部的寄存器可以分为通用寄存器和专用寄存器两大类,专用寄存器包括指针寄存器、变址寄存器等。一.通用寄存器8086/8088有4个16位的通用寄存器(AX、BX、CX、DX),可以存放16位的操作数,也可分为8个8位的寄存器(AL、AH;BL、BH;CL、CH;DL、DH)来使用。其中AX称为累加器,BX称为基址寄存器,CX称为计数寄存器,DX称为数据寄存器,这些寄存器在具体使用上有一定的差别。寄存器用途AX字乘法,字除法,字I/OAL字节乘,字节除,字节I/O,十进制算术运算AH字节乘,字节除BX转移CX串操作,循环次数CL变量移位,循环控制DX字节乘,字节除,间接I/O8086/8088寄存器结构二.指针寄存器系统中有两个16位的指针寄存器SP和BP,其中SP是堆栈指针寄存器,由它和堆栈段寄存器SS一起来确定堆栈在内存中的位置;BP是基数指针寄存器,通常用于存放基地址。三.变址寄存器系统中有两个16位的变址寄存器SI和DI,其中SI是源变址寄存器,DI是目的变址寄存器,都用于指令的变址寻址方式。8086/8088寄存器结构四.控制寄存器IP、标志寄存器是系统中的两个16位控制寄存器,其中IP是指令指针寄存器,用来控制CPU的指令执行顺序,它和代码段寄存器CS一起可以确定当前所要取的指令的内存地址。顺序执行程序时,CPU每取一个指令字节,IP自动加1,指向下一个要读取的字节;当IP单独改变时,会发生段内的程序转移;当CS和IP同时改变时,会产生段间的程序转移。标志寄存器的内容被称为处理器状态字PSW,用来存放8086CPU在工作过程中的状态。五.段寄存器系统中共有4个16位段寄存器,即代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS和附加段寄存器ES。这些段寄存器的内容与有效的地址偏移量一起,可确定内存的物理地址。通常CS划定并控制程序区,DS和ES控制数据区,SS控制堆栈区。8086/8088寄存器结构
标志寄存器8086/8088内部标志寄存器的内容,又称为处理器状态字(PSW,ProcessorStatusWord)
,共有9个标志位。可分成两类:一类为状态标志,一类为控制标志。其中状态标志表示前一步操作(如加、减等)执行以后,ALU所处的状态,后续操作可以根据这些状态标志进行判断,实现转移;控制标志则可以通过指令人为设置,用以对某一种特定的功能起控制作用(如中断屏蔽等),反映了人们对微机系统工作方式的可控制性。状态标志位:CF—进位标志位,做加法时最高位出现进位或做减法时最高位出现借位,该位置1,反之为0。PF—奇偶标志位,当运算结果的低8位中l的个数为偶数时,则该位置1,反之为0。AF—半进位标志位,做字节加法时,当低四位有向高四位的进位,或在做减法时,低四位有向高四位的借位时,该标志位就置1。通常用于对BCD算术运算结果的调整。(例:11011000+10101110=110000110其中AF=1,CF=1)8086/8088寄存器结构
标志寄存器
状态标志位:ZF—零标志位,运算结果为0时,该标志位置1,否则清0。SF—符号标志位,当运算结果的最高位为1,该标志位置1,否则清0。即与运算结果的最高位相同。OF—溢出标志位,反映运算结果是否超出了8位或16位带符号数所能表达的范围。控制标志位:TF—陷阱标志位(单步标志位、跟踪标志)。当该位置1时,将使8086/8088进入单步工作方式,通常用于程序的调试。IF—中断允许标志位,若该位置1,则处理器可以响应可屏蔽中断,否则就不能响应可屏蔽中断。DF—方向标志位,若该位置1,则串操作指令的地址修改为自动减量方向,反之,为自动增量方向。8086/8088存储器8086/8088系统有20根地址总线,它可以直接寻址的存储器单元数为220=1Mb而微处理器中所有的寄存器都是16位的如何实现16位的存储单元存放20位的地址空间?存储器分段由于CPU内部的寄存器都是16位的,为了能够提供20位的物理地址,系统中采用了存储器分段的方法。规定存储器的一个段为64KB,由段寄存器来确定存储单元的段地址,由指令提供该单元相对于相应段起始地址的16位偏移量。这样,系统的整个存储空间可分为16个互不重叠的逻辑段。存储器的每个段的容量为64KB,并允许在整个存储空间内浮动,即段与段之间可以部分重叠、完全重叠、连续排列,非常灵活。
8086/8088存储器与存储单元地址相关的几个概念物理地址:一个存储单元的实际地址(20位)。物理地址与存储单元是一一对应关系。(20202H)逻辑地址:是指段地址和偏移地址,是指令中引用的形式地址。一个逻辑地址只能对应一个物理地址,而一个物理地址可以对应多个逻辑地址。(2000:0202H)段地址:是指一个段的起始地址,最低4位为零,一般将其有效数字16位存放在段寄存器中。(2000H)偏移地址:段内存储单元相对段地址的距离(16位)。同一个段内,各个存储单元的段地址是相同的,偏移地址是不同的。(0202H)物理地址的计算方法物理地址=段地址+偏移地址=段寄存器内容×10H+偏移地址取指令物理地址=(CS)×10H+(IP)堆栈操作物理地址=(SS)×10H+(SP)/(BP的表达式)存储器操作数物理地址=(DS)/(ES)×10H+偏移地址8086/8088存储器物理地址的计算方法8086/8088存储器存储器分段的特点(1)在程序代码量、数据量不是太大的情况下,可使它们处于同一段内,即使它们在64Kb的范围内,这样可以减少指令长度,提高指令运行速度;(2)内存分段为程序的浮动分配创造了条件;(3)物理地址与逻辑地址并不是一一对应的;2000:0202H=2010:0102H=20202H(4)各个分段之间可以重叠。特殊的内存区域8088/8086系统中,有些内存区域的作用是固定的,用户不能随便使用,如:中断矢量区:00000H—003FFH共1K字节,用以存放256种中断类型的中断矢量,每个中断矢量占用4个字节,共256×4=1024=1K;显示缓冲区:B0000H—B0F9FH约4000(25×80×2)字节,是单色显示器的显示缓冲区,存放文本方式下,所显示字符的ASCII码及属性码;B8000H—BBF3FH约16K字节,是彩色显示器的显示缓冲区,存放图形方式下,屏幕显示象素的代码。启动区:FFFF0H—FFFFFH共16个单元,用以存放一条无条件转移指令的代码,转移到系统的初始化部分。8086/8088存储器CS、DS、SS和其他寄存器组合指向存储单元的示意图8086/8088存储器8086存储体的结构8086将1M字节存储体分为两个库,每个库的容量都是512K字节。其中与数据总线D15—D8相连的库全由奇地址单元组成,称高字节库或奇地址库,并用BHE信号作为库选信号;另一个库与数据总线的D7—D0相连,由偶地址单元组成,称低字节库或偶低址库,利用A0作为库选信号。显然,只需A19—A1共19位地址用来作为两个库内的单元寻址。8086/8088存储器8086存储体的结构在组成存储系统时,总是使偶地址单元的数据通过AD0—AD7传送,而奇地址单元的数据通过AD8—AD15传送,显然,并不是所有总线周期都存取总线高字节,只有存取规则字,或奇地址的字节,或不规则字的低八位,才进行总线高字节传送。
8086与8088的区别相同点:1.微处理器内部采用16位结构2.内部的两个功能部件EU一样区别:1.8086的指令队列是6字节长,而8088的指令为4字长;2.8086是真正的16位机,同BIU相连的8086总线中数据总线是16位总线,而8088是准16位机,同BIU相连的8088总线中数据总线为8位总线。8086/8088寄存器结构在8086微处理器中可供程序员使用的有14个16位寄存器,如图2.5所示。一般而言,14个寄存器按其用途可分为通用寄存器、指令指针、标志寄存器和段寄存器4类。通用寄存器一、数据寄存器数据寄存器包括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端口地址等。二、指针寄存器和变址寄存器指针寄存器和变址寄存器是4个16位寄存器。堆栈指针SP(stackpoint)和基址指针BP(basicpoint)称为指针寄存器,用来指示当前堆栈段中的数据所在的偏移地址。源变址寄存器SI(sourceindex)和目的变址寄存器DI(destinationindex)称为变址寄存器,用来表示当前数据段中操作数的索引地址(偏移地址的一部分)。2.3.1数据寄存器指令指针IP(instructionpointer)指令指针是一个16位寄存器,用来存放将要执行的下一条指令在当前代码段中的偏移地址。在程序运行过程中,BIU可修改IP中的内容,IP总是指向下一条待取的指令。IP和CS一起指定下一条指令的物理地址,物理地址=CS×16+IP。控制寄存器组8086/8088CPU中设置了一个16位标志寄存器FLAG,用来存放运算结果的特征和控制标志,具体格式见书图所示。16位标志寄存器FLAG中只用其中9位作标志位,其余位为无效位。9个标志位可分成两类:一类叫状态标志位,用来表示算术逻辑运算结果的特征,包括CF、PF、AF、ZF、SF和OF;另一类叫控制标志位,用来控制CPU的操作,由程序设置或清除,它们是IF、DF和TF。2.3.4段寄存器组在8086/8088系统中采用分段技术把1MB的存储空间分成若干个逻辑段,每段最长为64KB,这些逻辑段可以在整个存储空间中定位,用段寄存器给定各个逻辑段的首地址的高16位,这个地址被称作段基址。1.代码段寄存器CS用来存放当前程序所在的代码段的段基址,代码段中通常存放可执行的指令代码。2.数据段寄存器DS用来存放程序当前使用的数据段的段基址。3.附加段寄存器ES用来存放程序当前使用的附加段的段基址,数据段和附加段通常存放参加运算的操作数或运算结果。4.堆栈段SS则用来存放当前使用的堆栈段的段基址,一些临时性的数据被保存在堆栈中。2.48086存储器2.4.18086存储器组织及其寻址8086微处理器地址线为20根,可以寻址1MB的内部存储器,地址编号为00000H~FFFFFH。我们约定存储空间以8b为单位进行组织,每个存储单元存储一个字节数据。如果存放一个“字”数据(16b),则存放在相邻的两个存储单元中,并且高字节存放在高地址单元、低字节存放在低地址单元,双字单元的存放方式与字单元类似,它被存放在相邻的4个字节中。2.4.28086存储器的分段结构和物理地址的形成一、分段结构
8086程序将1MB的存储空间看成为一组连续的存储段,各段的功能由具体用途而定,分别为代码段、数据段、堆栈段和附加段。二、物理地址的形成1)当取指令时,8086会自动选择CS值作为段基址,再加上由IP提供的偏移量形成物理地址。2)当涉及堆栈操作时,8086会自动选择SS值作为段基址,再加上由SP提供的偏移量形成物理地址。3)当涉及一个操作数(存储器操作数)时,8086会自动选择DS值为段基值(若以BP为基地址,则SS为段基值),再加上16位偏移量形成物理地址,这16位偏移量可以来自:指令中提供的直接地址——16位的位移量;某一个16位地址寄存器的值;指令中的位移量加上16位地址寄存器的值。2.4.2
8086存储器的分段结构和物理地址的形成2.58086的引脚信号和工作模式2.5.18086的总线周期的概念为了取得指令和传送数据,就需要CPU的总线接口部件执行一个总线周期。在8086/8088中,一个最基本的总线周期由4个时钟周期组成,时钟周期是CPU的基本时间计量单位,它由计算机主频决定。1)在T1状态,CPU往多路复用总线上发出地址信息,以指出要寻址的存储单元或外设端口的地址。2)在T2状态,CPU从总线上撤销地址,而使总线的低16位浮置成高阻状态,为传输数据作准备。3)在T3状态,多路总线的高4位继续提供状态信息,而多路总线的低16位,(8088则为低8位)上出现由CPU写出的数据或者CPU从存储器或端口读入数据。4)在T4状态,总线周期结束。2.5.18086的总线周期的概念2.5.2中断操作和中断系统的概念1.8086的中断分类8086/8088有一个强有力的中断系统,可以处理256种不同的中断,每个中断对应一个类型码,所以,256种中断对应的中断类型码为0~255。从产生中断的方法来分,这256种中断可以分为两大类:一类叫硬件中断;一类叫软件中断。硬件中断是通过外部的硬件产生的,所以,也常常把硬件中断称为外部中断。硬件中断又可以分为两类:一类叫非屏蔽中断;另一类叫可屏蔽中断。软件中断是CPU根据软件中的某条指令或者软件对标志寄存器中某个标志的设置而产生的,从软件中断的产生过程来说,完全和硬件电路无关。2.5.2中断操作和中断系统的概念2.5.2中断操作和中断系统的概念2.向量表位置和结构8086/8088的中断系统是以位于内存0段的0~3FFH区域的中断向量表为基础的,中断向量表中最多可以容纳256个中断向量。所谓中断向量,实际上就是中断处理子程序的入口地址,每个中断类型对应一个中断向量。3.向量构成中断向量并不是任意存放的。一个中断向量占4个存储单元,其中前两个单元存放中断处理子程序入口地址的偏移量(IP),低位在前,高位在后,后两个单元存放中断处理子程序入口地址的段地址(CS),同样也是低位在前,高位在后。按照中断类型的序号,对应的中断向量在内存的0段0单元开始有规则的进行排列。2.5.2中断操作和中断系统的概念4.中断类型码和中断向量所在位置之间的分布关系2.5.3微处理器芯片封装及引脚功能
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 行业知识与职业技能的双重培养
- 财务稳健管理之道-小区超市案例分享
- 科技驱动的居住区水环境改善方案
- 高效批改作业的流程与规范
- 跨学科教学在小学数学教育中的价值体现
- 数字化时代的商业广告与市场推广策略
- 二零二五年度装饰公司员工绩效考核劳动合同
- 二零二五年度荒地流转与生态农业示范园区承包合同
- 2025年度物业人员雇用及社区突发事件应对合同
- 2025年度门面出租合同终止与租赁期满续租意向协议
- 2025年江苏农牧科技职业学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 2025江苏连云港市赣榆城市建设发展集团限公司招聘工作人员15人高频重点提升(共500题)附带答案详解
- 江苏省扬州市蒋王小学2023~2024年五年级上学期英语期末试卷(含答案无听力原文无音频)
- 数学-湖南省新高考教学教研联盟(长郡二十校联盟)2024-2025学年2025届高三上学期第一次预热演练试题和答案
- 决胜中层:中层管理者的九项修炼-记录
- 《有机化学》课件-第十章 羧酸及其衍生物
- 2024年海南公务员考试申论试题(A卷)
- 中医培训课件:《经穴推拿术》
- 临床药师进修汇报课件
- 北京市首都师大附中2025届数学高三第一学期期末达标测试试题含解析
- 2024年贵州省高职(专科)分类考试招收中职毕业生文化综合考试语文试题
评论
0/150
提交评论