贵州大学微机原理ppt及复习ppt 2微处器和指令系统

上传人:mg****85 文档编号:49539874 上传时间:2018-07-30 格式:PPT 页数:148 大小:1.53MB
返回 下载 相关 举报
贵州大学微机原理ppt及复习ppt 2微处器和指令系统_第1页
第1页 / 共148页
贵州大学微机原理ppt及复习ppt 2微处器和指令系统_第2页
第2页 / 共148页
贵州大学微机原理ppt及复习ppt 2微处器和指令系统_第3页
第3页 / 共148页
贵州大学微机原理ppt及复习ppt 2微处器和指令系统_第4页
第4页 / 共148页
贵州大学微机原理ppt及复习ppt 2微处器和指令系统_第5页
第5页 / 共148页
点击查看更多>>
资源描述

《贵州大学微机原理ppt及复习ppt 2微处器和指令系统》由会员分享,可在线阅读,更多相关《贵州大学微机原理ppt及复习ppt 2微处器和指令系统(148页珍藏版)》请在金锄头文库上搜索。

1、热能与动力工程第二章 微处器和指令系统热能与动力工程2.1 Intel系列微处理器概述 热能与动力工程 4位微处理器 1971年,Intel 4004,第一个微处理器 8位微处理器 M6800、Z80和Intel 8080/8085 Apple公司苹果机 16位微处理器 Intel 8086/8088 16位个人计算机(PC:Personal Computer) 32位微处理器 80386,80486,PentiumPentium 4 32位PC机,APPLE公司的Macintosh机 64位微处理器 IA-64结构:Itanium(安腾) x86结构:AMD的64位处理器、Intel 64处

2、理器热能与动力工程处理器基本性能指标实例年代Intel处理器字长时钟频率集成度197140044位108kHz2300197280088位500kHz35001978808616位5MHz2.9万19858038632位16MHz27.5万2003Pentium 432位3.4GHz1.25亿2007Core 2 Quad64位2.66GHz5.82亿热能与动力工程2.2 8086/8088微处理器 8088、8086基本类似 16位CPU、AB宽度20位 差别: 指令预取队列:8088为4字节,8086为6字节 数据总线引脚:8088有8根,8086有16根 8088为准16位CPU,内部D

3、B为16位,但外部仅 为8位,16位数据要分两次传送一、概述热能与动力工程指令的一般执行过程:取指令 指令译码 读取操作数 执行指令 存放结果热能与动力工程串行工作方式: 8086以前的CPU采用串行工作方式:1)CPU执行指令时总线处于空闲状态 2)CPU访问存储器(存取数据或指令)时要等待总线操作的完成 缺点:CPU无法全速运行 解决:总线空闲时预取指令,使CPU需要指令时能立刻得到取指令 1执行 1取操 作数2执行 2CPUBUS忙碌忙碌忙碌忙碌存结果 1取指令 2热能与动力工程并行工作方式: 8086CPU采用并行工作方式取指令2 取操作数BIU存结果取指令3 取操作数 取指令4执行1

4、执行2执行3 EUBUS忙碌忙碌忙碌忙碌忙碌忙碌热能与动力工程8088的流水线操作 8088 CPU包括两大部分:EU和BIU BIU不断地从存储器取指令送入指令队列寄存器IPQ ,EU不断地从IPQ取出指令执行 EU和BIU构成了一个简单的2工位流水线 指令预取队列IPQ是实现流水线操作的关键(类似于 工厂流水线的传送带) 新型CPU将一条指令划分成更多的阶段,以便可以同时 执行更多的指令 例如,PIII为14个阶段,P4为20个阶段(超级流水线)热能与动力工程结论 指令预取队列的存在使EU和BIU两个部分 可同时进行工作,从而 提高了CPU的效率; 降低了对存储器存取速度的要求热能与动力工

5、程8088/8086 CPU的特点 采用并行流水线工作方式 (流水线详解) 对内存空间实行分段管理: 每段大小为16B64KB 用段地址和段内偏移实现对1MB空间的寻址 设置地址段寄存器指示段的首地址 支持多处理器系统; 片内没有浮点运算部件,浮点运算由数学协处理 器8087支持(也可用软件模拟) 注:80486DX以后的CPU均将数学协处理器作 为标准部件集成到CPU内部热能与动力工程二、8086CPU的内部结构热能与动力工程l8086内部由两部分组成:执行单元(EU)总线接口单元(BIU)热能与动力工程执行单元EU 功能: 执行指令从指令队列中取指令代码 译码 在ALU中完成数据的运算 运

6、算结果的特征保存在标志寄存器FLAGS中。热能与动力工程执行单元包括算术逻辑单元(运算器)8个通用寄存器1个标志寄存器EU部分控制电路热能与动力工程总线接口单元BIU 功能: 从内存中取指令送入指令预取队列 负责与内存或输入/输出接口之间的数据 传送 在执行转移程序时,BIU使指令预取队列复 位,从指定的新地址取指令,并立即传给 执行单元执行。热能与动力工程(1) 四个段地址寄存器CS 16位代码段寄存器DS 16位数据段寄存器ES 16位附加段寄存器SS 16位堆栈段寄存器BIU的组成热能与动力工程(2) IP 16位指令指针寄存器 指向下一条要取出的指令。(3) 20位地址加法器16位内部

7、寄存器提供的信息经地址加法器产生20位地址信息。例:指令的物理地址 = CS 16 + IP热能与动力工程(4) 六字节的指令队列取指令与执行指令并行工作,即在一条指令的执行过程中,可以取出下一条或多条指令,在指令队列中排队。热能与动力工程三、 8086/8088的内部寄存器 含14个16位寄存器,按功能可分为三类8个通用寄存器4个段寄存器2个控制寄存器热能与动力工程1. 通用寄存器数据寄存器(AX,BX,CX,DX) 地址指针寄存器(SP,BP) 变址寄存器(SI,DI)热能与动力工程数据寄存器 8086含4个16位数据寄存器,它们又可分为 8个8位寄存器,即: AX AH,AL BX BH

8、,BL CX CH,CL DX DH,DL常用来存放参与运算的操作数或运算结果热能与动力工程数据寄存器特有的习惯用法 AX:累加器。多用于存放中间运算结果。所有 I/O指令必须都通过AX与接口传送信息; BX:基址寄存器。在间接寻址中用于存放基地址; CX:计数寄存器。用于在循环或串操作指令中存放循环次数或重复次数; DX:数据寄存器。在32位乘除法运算时,存放高16位数;在间接寻址的I/O指令中存放I/O端口地址。热能与动力工程地址指针寄存器 SP:堆栈指针寄存器,其内容为栈顶的偏移地址; BP:基址指针寄存器,常用于在访问内存时存放内存单元的偏移地址。热能与动力工程BX与BP在应用上的区别

9、 作为通用寄存器,二者均可用于存放数据 ; 作为基址寄存器,BX通常用于寻址数据段 ;BP则通常用于寻址堆栈段。 BX一般与DS或ES搭配使用热能与动力工程变址寄存器 SI:源变址寄存器 DI:目标变址寄存器 变址寄存器常用于指令的间接寻址或变址 寻址。特别是在串操作指令中,用SI存放源 操作数的偏移地址,而用DI存放目标操作 数的偏移地址。热能与动力工程2. 段寄存器用于存放逻辑段的段基地址(逻辑段的概念后面将要介绍)CS:代码段寄存器代码段用于存放指令代码DS:数据段寄存器 ES:附加段寄存器数据段和附加段用来存放操作数SS:堆栈段寄存器 堆栈段用于存放返回地址,保存寄存器内容,传递参数热

10、能与动力工程3. 控制寄存器 IP:指令指针寄存器,其内容为下一条要执行的指令的偏移地址 FLAGS:标志寄存器 状态标志:存放运算结果的特征 控制标志:控制某些特殊操作6个状态标志位(CF,SF,AF,PF,OF,ZF)3个控制标志位(IF,TF,DF)热能与动力工程 标志寄存器FR 共有16位,其中7位未用,各位的定 义如下: 15014 13 12 11 10 987654321OF DF IF TF SF ZFAFPFCF图 标志寄存器根据功能,有两类标志状态标志控制标志热能与动力工程表 8086 CPU 标志位情况名 称符 号符号标志SF功能与运算结果的最高位相同,当数据用补码表示时

11、,负数的最高位 为1,所以符号标志表示运算执行后的结果是正还是负零标志ZF当前的运算结果为零,当前的运算结果为非零奇偶标志PF运算结果所含的1的个数为偶数进位标志CF当执行一个加法运算使最高位产生进位时,或者执行一个减法运算 引起最高位产生借位时,此外,循环指令也影响这一标志辅助 进位标志AF加法运算时,如果第3位往第4位有进位;减法运算时,如果第3位 往第4位有借位。辅助进位标志一般在BCD码运算中作为是否进行 十进制调整的判断依据溢出标志OF运算过程中产生溢出时,所谓溢出,是指当字节运算的结果超出了 范围 128 +127,或者当字运算的结果超出了范围 32768 +32767 时称为溢出

12、方向标志DF控制串操作指令用的标志。 DF=0, 串操作过程中的地址会不断增 值;DF=1, 串操作过程中的地址会不断减值中断标志IF控制可屏蔽中断的标志。 IF=0, CPU不能对可屏蔽中断请求作出响 应; IF=1, CPU可以接受可屏蔽中断请求跟踪标志TFCPU按跟踪方式执行指令热能与动力工程一)存储器编址 存储器以8位为一个存储单元编址,每一个存 储单元用唯一的一个地址码来表示。 一个字的两个单元有各自的地址,处于低地址 的字节的地址为这个字的地址 在存储器中,任何连续存放的两个字节都可以 称为一个字。将偶地址的字称为规则字,奇地 址的字称为非规则字。 例:字2301的地址为0000H

13、,为规则字;字4523的地址为0001H,为非规则字。 四、 8086/8088的存储器结构和堆栈热能与动力工程l物理地址l8086:20根地址线,可寻址220(1MB)个存储单元lCPU送到AB上的20位的地址称为物理地址 二)存储器分段和物理地址的生成热能与动力工程物理地址物理地址. . 60000H 60001H 60002H 60003H 60004H . . .12HF0H1BH 08H存储器的操作完全基于 物理地址。 问题:8086的内部总线和内部 寄存器均为16位,如何 生成20位地址? 解决:存储器分段热能与动力工程存储器分段高地址低地址 段基址段基址段基址段基址最大64KB段

14、i-1段i段i+11. 1M存储空间分成若干个逻辑段,每一段64K2. 段与段之间可以连续排列,部分重叠,断续排列。热能与动力工程逻辑地址 段基地址和段内偏移组成了逻辑地址段地址 偏移地址(偏移量)格式为:段地址:偏移地址 物理地址=段基地址16+偏移地址60002H00H 12H60000H0 0 0 0段基地址(16位)段首地址 热能与动力工程 BIU中的地址加法器用来实现逻辑地址到物理地址的变 换 8088 可同时访问4个段,4个段寄存器指示了每个段的 基地址段基址段内偏移物理地址20位0000热能与动力工程逻辑地址和物理地址区别物理地址:20位绝对地址。逻辑地址:段基址和段内偏移量。物

15、理地址 = 段基址 16 + 偏移地址段寄存器值 0000偏移地址 20位物理地址 16位4位 150150190热能与动力工程内存地址的一般情况1. 指令地址:CS16+IP2. 堆栈操作地址:SS16+SP3. 操作数地址:DS(ES)16+偏移地址(其中的偏移地址取决于指令的寻址方式)热能与动力工程例:已知CS=1055H,DS=250AH,ES=2EF0H,SS=8FF0H,DS段有一操作数,其偏移地址=0204H,1)画出各段在内存中的分布2)指出各段首地址3)该操作数的物理地址=?10550H250A0H2EF00H8FF00HCSSS CSDSES解: 各段分布及段首址见右图所示。操作数的物理地址为:250AH10H+0204H = 252A4H热能与动力工程三)堆栈及堆栈段的使用 内存中一个按LIFO方式操作的特殊区域 每次压栈和退栈均以WORD为单位 SS存放堆栈段地址,SP存放段内偏移,SS:SP 构成了堆栈指针 堆栈用于存放返回地址、过程参数或需要保护 的数据 常用于响应中断或子程序调用热能与动力工程若已知SS=0200H, SP=0008H, CX=12FAH, 操作示意图如图5.2所示:0200000812FA2000SS段 首地址新栈顶FA 12 原栈顶2006 20072008+ 2SSSPCX12FAH图5.2 PUSH C

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号