计算机硬件基础中央处理器对应教材.ppt

上传人:小飞机 文档编号:6342594 上传时间:2023-10-18 格式:PPT 页数:44 大小:459KB
返回 下载 相关 举报
计算机硬件基础中央处理器对应教材.ppt_第1页
第1页 / 共44页
计算机硬件基础中央处理器对应教材.ppt_第2页
第2页 / 共44页
计算机硬件基础中央处理器对应教材.ppt_第3页
第3页 / 共44页
计算机硬件基础中央处理器对应教材.ppt_第4页
第4页 / 共44页
计算机硬件基础中央处理器对应教材.ppt_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《计算机硬件基础中央处理器对应教材.ppt》由会员分享,可在线阅读,更多相关《计算机硬件基础中央处理器对应教材.ppt(44页珍藏版)》请在三一办公上搜索。

1、1,4 中央处理器,2,主要内容,微处理器的一般结构8086微处理器的组成、引脚功能8086的内部寄存器和标志位8086的存储器组织,3,4.1 微处理器的一般结构,运算器 算术逻辑运算,由加法器和(ALU)一些辅助逻辑电路组成 指令流控制控制器 时序控制,产生节拍定时信号 指令译码和操作控制寄存器组 存放临时数据、运算的中 间结果、运算特征、操作数地址,性能:8位16位 32位 64位,主要部件,4,4.2 8086微处理器,主要内容:8086外部引线及功能;8086的内部结构和特点;8086的工作时序。,5,6,8086的硬件特性,16位微处理器,CMOS型,40引脚DIP封装16位数据总

2、线,20位地址总线功耗:5V,360mA(低功耗型80C86仅需10mA)输入特性:输入电流0.01mA逻辑0:0.8V逻辑1:2.0V输出特性:逻辑0:0.45V,最大2.0mA逻辑1:2.4V,最大-0.4mA输出引脚负载能力:74HC、74ALS、74AS、74F负载10个74LS负载5个74、74S负载1个,7,一、指令流水线,取指令,指令译码,取操作数,执行指令,存放结果,CPU执行一条指令的过程类似于工厂生产流水线,被分 解为多个小的步骤,称为指令流水线。,原料,调度分配,生产线,成品,仓库,出厂,数据和程序指令,控制器的调度分配,ALU等 功能部件,处理后的数据,存储器,输出,8

3、,指令流水线,指令流水线有两种运作方式:串行方式:取指令和执行指令在不同的时刻按顺序执行。并行方式:取指令和执行指令可同时执行,需要有能并行工作的硬件的支持。,9,串行工作方式,8086以前的CPU采用串行工作方式,取指令1,执行1,取指令2,执行2,CPU,BUS,忙 碌,忙 碌,取指令3,执行3,忙 碌,空闲,空闲,空闲,t1,t0,t2,t3,t4,t5,6个周期执行了3条指令,10,并行工作方式,8086CPU采用并行工作方式,取指令1,取指令2,取指令3,取指令4,执行1,执行2,执行3,BUS,执行4,CPU,t1,t0,t2,t3,t4,t5,取指令5,执行5,6个周期执行了5条

4、指令,11,并行操作的前提,取指令部件和指令执行部件要能够并行工作;各部件执行时间基本相同,否则需再细分;取指令部件取出的指令要能暂存在CPU内部某个地方;指令执行部件在需要时总能立即获得暂存的指令;需要解决转移指令问题。,12,8086 CPU的特点,采用并行流水线工作方式:通过设置指令预取队列(IPQ)实现对内存空间实行分段管理:将内存分段并设置地址段寄存器,以实现对1MB空间的寻址。支持多处理器系统:8087 FPU(Floating Point Unit),执行部件,取指部件,13,二、8086CPU的引线及功能,引脚定义的方法可大致分为:每个引脚只传送一种信息(如RD)电平的高低代表

5、不同的含义(如M/IO)在不同模式下有不同的名称和定义(如WR/LOCK)分时复用引脚(如AD15AD0)引脚的输入、输出分别传送不同的信息(如RQ/GT0),14,主要引线,地址总线、数据总线:AD15AD0:三态(高、低、高阻)地址/数据复用引脚。ALE=1时作为地址线A16A0,ALE=0时作为数据线D16D0。传送地址时为输出,传送数据时为双向。A19-A16/S6-S3:输出,三态地址/状态复用引脚。ALE=1时作为地址线A19A16,ALE=0时作为控制信号。,15,主要引线,控制信号:WR:输出,三态写选通信号,表示CPU正在写数据到MEM或I/O设备。RD:输出,三态读信号,表

6、示CPU正在从总线上读来自于MEM或I/O设备的数据。M/IO:输出,三态区分是读写存储器还是读写I/O端口(即地址总线上的地址是存储器地址还是I/O端口地址)。,16,主要引线,DEN:输出,三态数据总线允许信号。用来打开外部数据总线缓冲器。DT/R:输出,三态表明CPU正在传送还是接收数据,用来作为外部数据总线缓冲器的方向控制;ALE:输出地址锁存允许信号,表示地址/数据总线上传输的是地址信号。,以上三个信号的用法见下页图,17,主要引线,RESET:输入 复位信号,保持4个以上时钟周期的高电平时将引起CPU进入复位过程(中断允许标志位(IF)清0,并从存储单元FFFF0H开始执行指令);

7、BHE/S7:输出高8位数据总线允许。在读/写操作期间允许高8位数据总线D16D8有效(即读/写数据的高8位)。READY:输入准备就绪。用于与存储器或I/O接口的同步。=0时CPU进入等待状态(插入1个或多个等待周期)。,18,三、8086 CPU的内部结构,8086内部由两部分组成:执行单元(EU)总线接口单元(BIU),19,执行单元,功能:执行指令,具体操作如下 从IPQ中取指令代码 译码 完成指定的操作 结果保存到目的操作数 运算特征保存在标志寄存器FLAGS(仅对影响标志的指令),20,总线接口单元,功能:从内存中取指令到指令预取队列IPQ;负责与内存或I/O接口之间的数据传送;在

8、执行转移指令时,BIU将清除IPQ,然后从转移的目的地址处开始取指令并重新填充IPQ。,21,8086结构特点小结,有EU和BIU两个独立的、同时运行的部件二者通过IPQ构成一个两工位流水线指令被EU和BIU按流水线方式处理:提高了CPU的运行速度;提高了CPU的执行效率;降低了对存储器存取速度的要求。,22,四、8086的工作时序,工作时序分为很多小的时间片:时钟周期 一个时钟脉冲所持续的时间。时钟周期越短,CPU执行速度越快。总线周期 通过总线对存储器或I/O接口进行一次访问所需要的时间。一般包括4个时钟周期。,23,总线周期中各时钟周期的操作,T1周期CPU向存储器或I/O发送地址CPU

9、向地址/数据分离器(地址锁存器)发送ALE信号T2周期给存储器或I/O发送写入的数据测试READY引脚状态,以决定是否插入等待周期发出RD或WR信号T3周期等待存储器或I/O存取数据完成使数据在CPU与存储器或I/O之间传输T4周期写入数据,读/写总线周期的信号波形见下页图。,24,数据写入存储器时的总线操作写总线周期,由ALE信号将地址锁存到地址锁存器,DEN=0并且DT/R=1时打开总线缓冲器,将其放到系统数据总线上,此信号与M/IO信号共同构成存储器写控制信号,将数据写入存储器,25,数据从存储器读出的总线操作读总线周期,DEN=0并且DT/R=0时打开总线缓冲器,将其放到CPU总线上,

10、供CPU读入,较完整的读总线周期,此信号与M/IO信号共同构成存储器读控制信号,由ALE信号将地址锁存到地址锁存器,26,4.3 8086内部寄存器组,8086寄存器组又称为8086的程序设计模型它是程序设计中惟一可见的CPU部件它是系统程序设计员的操作对象含14个16位寄存器,按功能可分为三类:通用寄存器,8个 段寄存器,4个 控制寄存器,2个,27,8086寄存器概貌,SP,IP,FLAGS,AH,AL,BH,BL,CH,CL,DH,DL,AXBXCXDX,BP,SI,DI,CS,DS,ES,SS,通用寄存器,控制寄存器,段寄存器,28,一、通用寄存器,数据寄存器(AX,BX,CX,DX)

11、地址指针寄存器(SP,BP)变址寄存器(SI,DI),29,数据寄存器,用途:存放临时数据和存放运算操作数。(例)每个均为16位,但又可分为2个8位寄存器,即:AX AH,ALBX BH,BLCX CH,CLDX DH,DL,例如:若(AX)1234H,则(AH)12H,(AL)34H,30,数据寄存器特有的习惯用法,AX:累加器所有I/O指令都通过AX(AL)与接口传送信息;中间运算结果也多放于AX(AL)中;乘除法指令的一个操作数必须在AX(AL)中。BX:基址寄存器在间接寻址中用于存放操作数的基地址。CX:计数寄存器用于在循环指令或串操作指令中存放计数值。DX:数据寄存器在间接寻址的I/

12、O指令中存放I/O端口地址;在32位乘除法运算时,存放高16位数。,31,地址指针寄存器,SP:堆栈指针寄存器其内容为堆栈栈顶的偏移地址;任何堆栈操作后,SP都会自动增/减量。BP:基址指针寄存器在间接寻址中用于存放操作数的基地址;常用于访问存放在堆栈中的数据。,32,BX与BP在应用上的区别,作为通用寄存器,二者均可用于存放数据;作为基址寄存器,默认情况下:用BX作为指针所访问的数据在数据段(DS段);用BP作为指针所访问的数据在堆栈段(SS段)。,注:间接寻址时 仅BX、BP、SI、DI可用于存储器寻址;仅DX可用于I/O寻址。,33,变址寄存器,SI:源变址寄存器,用于访问源操作数DI:

13、目标变址寄存器,用于访问目的操作数常用于操作数的间接寻址或变址寻址。在串操作指令中,SI存放源操作数的偏移地址,而DI存放目标操作数的偏移地址。,34,二、段寄存器,用于存放逻辑段的段基地址(简称段地址)CS:代码段寄存器。代码段存放指令代码DS:数据段寄存器 ES:附加段寄存器SS:堆栈段寄存器:指示堆栈区域的位置,这两个段存放操作数,堆栈段,SS,数据段,DS/ES,代码段,CS,35,三、控制寄存器,IP:指令指针寄存器其内容为下一条要执行的指令的偏移地址。FLAGS:标志寄存器存放指令执行结果的特征:有些指令(如算术指令)要改变FLAGS的内容(影响FLAGS);有些指令对FLAGS无

14、影响。6个状态标志位(CF,SF,AF,PF,OF,ZF)3个控制标志位(IF,TF,DF),P71例,O,D,I,T,S,Z,A,P,C,15,0,2,4,6,7,8,9,10,11,FLAGS,36,4.4 8086的存储器组织,8086可访问1MB的存储空间(为什么?)哪个寄存器能够放得下20位的地址?用分段的方法解决。段是存储器中的一块区域段起始于存储器内16字节整倍数的边界处。段首地址的最低4位一定为0用段和偏移的组合访问存储单元每个段最大为64KB,最小为16B(为什么?)所有存储单元的地址都由段地址加偏移地址组成段地址被装入段寄存器中以供寻址使用偏移地址用于在64KB存储器段内选

15、择任一单元,37,段和偏移,设段起始地址=60000H段地址偏移地址0FFFFH,6A000H,12H,60000H,6 0 0 0,段寄存器,偏移地址A000H,38,物理地址和逻辑地址,物理地址:存储单元的硬件地址物理地址=段地址16(或段地址左移4位)+偏移地址逻辑地址:段和偏移形式的地址逻辑地址用于汇编语言程序设计以下地址都是逻辑地址的例子:2500H:0100H段地址A000H偏移地址0001H,39,例1:,已知CS=1055H,DS=250AH ES=2EF0H,SS=8FF0H 数据段中某操作数偏移地址=0204H各段首地址=?画出各段在内存中的分布该操作数的物理地址=?这个例

16、子说明:段与段可以不连续段之间可以重叠,10550H,250A0H,2EF00H,8FF00H,DS段,ES段,SS段,CS段,40,默认段和偏移寄存器,8086规定了访问存储器段的规则:此规则定义了段地址寄存器和偏移地址寄存器的组合方式,其默认规则如下表:,41,例2:,设当前执行的程序中某条指令的物理地址为5A1F6H,则程序所在的段的段地址=?当前CS的内容为多少?解:(有多个解,求出任意一个即可)5A1F6H=5A10H10H+00F6H 所以,段地址=5A10H,CS的内容为5A10H 想一想,还有哪些解?,思考题:设当前数据段位于存储器的A8000H到B7FFFH的地址空间,问DS的内容应是什么才能访问该数据段的所有存储单元?,42,堆栈及堆栈段的使用,堆栈:内存中一个特殊区域,用于存放需要保护的数据。堆栈按后进先出方式工作堆栈通过SS(段地址)和SP(偏移地址)来访问堆栈指针堆栈的数据压入方向是从高地址到低地址,弹出方向则相反(堆栈指针的变化举例)常用于响应中断子程序调用参数传递,43,例3:,若已知(SS)=1000H(SP)=2000H则堆栈段的段起始地址=?栈顶地址=?若该段最后一个单元地址为10100H则栈底单元的偏移地址=?,段起始,栈底,栈顶,堆栈段,44,作业:,教材:,谢谢大家!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号