汇编语言第2章课件

上传人:我*** 文档编号:141880923 上传时间:2020-08-13 格式:PPT 页数:66 大小:1.07MB
返回 下载 相关 举报
汇编语言第2章课件_第1页
第1页 / 共66页
汇编语言第2章课件_第2页
第2页 / 共66页
汇编语言第2章课件_第3页
第3页 / 共66页
汇编语言第2章课件_第4页
第4页 / 共66页
汇编语言第2章课件_第5页
第5页 / 共66页
点击查看更多>>
资源描述

《汇编语言第2章课件》由会员分享,可在线阅读,更多相关《汇编语言第2章课件(66页珍藏版)》请在金锄头文库上搜索。

1、1,第2章 微处理器与总线,2,目的:,了解微处理器的一般构成及工作原理; 深入理解8086/8088微处理器的结构特点、引线、内部寄存器功能及工作时序; 理解总线的一般概念; 了解常用的系统总线和外设总线标准。,3,2.1 微型机概述,了解:,微处理器的功能; 微处理器的基本组成。,4,微处理器的功能,进行算术运算和逻辑运算; 对指令进行译码、寄存并执行所规定的操作; 具有与存储器和I/O接口进行数据通信的能力; 少量数据的暂存; 提供系统所需要的定时和控制信号; 能够响应输入输出设备发出的中断请求。,5,微处理器的一般构成,运算器 控制器 内部寄存器组,6,7,各部分的作用:,由ALU、通

2、用或专用寄存器组及内部总线三部分组成。其核心功能是实现数据的算术运算和逻辑运算。,运算器:,控制器:,主要由程序计数器(PC)、指令寄存器(IR)、指令译码器(ID)、时序控制部件、微操作控制部件组成。作用:控制程序的执行,是整个系统的指挥中心。包括指令控制、时序控制和操作控制。,8,寄存器组:,实质上是CPU内部的若干个存储单元。,作用是固定的,(如堆栈指针、程序计数器、标志寄存器等),可有程序员规定其用处,8086/8088中有8个16位通用寄存器,在需要重复使用某些操作数或中间结果时,可将其暂时存放在寄存器中,避免对存储器的频繁访问。,9,2.2 8086/8088微处理器,主要内容:,

3、8086/8088CPU的特点 8088CPU外部引线及功能; 8088CPU的内部结构和特点; 各内部寄存器的功能; 8088的工作时序。,10,一. 8086/8088 CPU的特点,1、采用并行流水线工作方式 通过设置指令预取队列实现 2、对内存空间实行分段管理 将内存分为4个段并设置地址段寄存器,以实 现对1MB空间的寻址 3、支持多处理器系统,CPU内部结构,存储器寻址部分,工作模式,11,指令执行的一般过程:,取指令 指令译码 读取操作数 执行指令 存放结果,1、 采用并行流水线工作方式,12,串行和并行方式的指令流水线,串行工作方式: 控制器和运算器交替工作,按顺序完成上述指令执

4、行过程。 并行工作方式: 控制器和运算器可同时工作,即取指令操作与执行指令操作可重叠地进行,从而加快了程序的运行速度。,13,串行工作方式,8088/8086以前的CPU采用串行工作方式:,取指令1,执行 指令1,分析 指令1,CPU,BUS,忙碌,忙碌,取指令2,执行 指令2,分析 指令2,14,并行工作方式,8088CPU采用并行工作方式,BUS,EU,取指令1,执行 指令1,分析 指令1,CPU,取指令2,执行 指令2,分析 指令2,取指令2,执行 指令2,分析 指令2,忙碌,忙碌,忙碌,忙碌,忙碌,15,2、对内存空间实行分段管理,8086/8088内部寄存器都只有16位,最多能够管理

5、64K个内存单元,为了提高管理内存的能力, 8086/8088采用了分段管理的方法:将内存地址空间分为多个逻辑段,为每个段设置段地址,段内每个单元的地址称为偏移地址。然后用段基地址和段内偏移地址来访问物理存储器。 CPU内部有专门存放段地址的段寄存器和存放偏移地址的地址寄存器。,16,8088可工作于两种模式下 最小模式 最大模式 最小模式为单处理器模式,控制信号较少,一般可不必接总线控制器。 最大模式为多处理器模式,能够支持系统总线上的多个处理器,控制信号较多,须通过总线控制器与总线相连。,3、支持多处理器系统,17,最小模式下的连接示意图,8088 CPU, ,控制总线,数据总线,地址总线

6、,地址 锁存,数据 收发,ALE,时钟发 生 器,18,最大模式下的连接示意图,8088 CPU,数据总线,地址总线,地址 锁存,数据 收发,ALE,时钟发 生 器,总 线 控制器,控制总线,19,两种工作模式的选择方式,8088是工作在最小还是最大模式由MN/MX端状态决定。MN/MX=0工作于最大模式,反之工作于最小模式,20,二、8088CPU的引线及功能,21,引脚定义的方法可大致分为: 每个引脚只传送一种信息(RD等); 引脚电平的高低不同的信号(IO/M等); CPU工作于不同方式有不同的名称和定义(WR/LOCK 等); 分时复用引脚(AD7AD0 等) ; 引脚的输入和输出分别

7、传送不同的信息(RQ/GT),22,主要引线(最小模式下),地址线和数据线: AD7-AD0:低8位地址和数据信号分时复用。在传送地址信号时为单向,传送数据信号时为双向。 A19/s6-A16/s3:高4位地址信号,分时复用。 A15-A8 :输出8位地址信号。,23,主要的控制和状态信号,WR: 写信号; RD: 读信号; IO/M:为“0”表示访问内存, 为“1”表示访问接口; DEN: 数据允许信号,低电平有效时,允许进行读/写操作; ALE: 地址锁存信号,高电平时表明CPU上有有效地址。,24,例:,当WR=1,RD=0,IO/M=0时, 表示CPU当前正在进行读存储器操作,25,中

8、断请求和响应信号,INTR:可屏蔽中断请求输入端,这个引脚上的中断请求信号,可以用软件进行屏蔽。 NMI:非屏蔽中断请求输入端,上升沿出发,不能用软件屏蔽。 INTA:中断响应输出端,是CPU对INTR的响应。,26,总线保持信号,HOLD:总线保持请求信号输入端。当CPU 以外的其他设备要求占用总线时, 通过该引脚向CPU发出请求。 HLDA:总线保持响应信号输出端。CPU对 HOLD信号的响应信号。,27,三、8086/8088 CPU的内部结构,8086/8088 内部都是由两部分组成: 总线接口单元(BIU)(Bus Interface Unit) 执行单元(EU)(Execution

9、 Unit),28,29,总线接口单元BIU包括,段寄存器 指令指针寄存器IP 指令队列 地址加法器 总线控制逻辑,30,总线接口单元BIU的功能,BIU负责从内存的指定单元取出指令,送至指令流队列中排队;,执行指令时所需的操作数,也由BIU从内存的指定区域取出,传送给EU部分去执行。,在执行转移程序时,BIU使指令预取队列复位,从指定的新地址取指令,并立即传给执行单元执行。,功能:负责CPU与存储器、I/O接口之间的信息传送。,31,执行单元(EU)包括,运算器 8个通用寄存器 1个标志寄存器 EU部分控制电路,32,执行单元(EU),功能 指令译码 指令执行 暂存中间运算结果 保存运算结果

10、特征,指令的执行,在标志寄存器FLAGS中,在ALU中完成,在通用寄存器中,33,结论,指令预取队列的存在使EU和BIU两个部分可同时进行工作,从而 提高了CPU的效率; 降低了对存储器存取速度的要求,34,8086/8088的内部寄存器,含14个16位寄存器,按功能可分为三类 8个通用寄存器 4个段寄存器 2个控制寄存器,深入理解:每个寄存器中数据的含义,35,通用寄存器,数据寄存器(AX,BX,CX,DX) 地址指针寄存器(SP,BP) 变址寄存器(SI,DI),36,数据寄存器,8088含4个16位数据寄存器,它们又可分为8个8位寄存器,即: AX BX CX DX,AH,AL,CH,C

11、L,BH,BL,DH,DL,37,数据寄存器特有的习惯用法,AX:累加器。所有I/O指令都通过AX与接口传送 信息,中间运算结果也多放于AX中; BX:基址寄存器。在间接寻址中用于存放偏移地址; CX:计数寄存器。用于在循环或串操作指令 中存放计数值; DX:数据寄存器。在间接寻址的I/O指令中存放 I/O端口地址;在32位乘除法运算时,存放 高16位数。,38,地址指针寄存器,SP:堆栈指针寄存器,其内容为栈顶的 偏移地址; BP:基址指针寄存器,常用于在访问内 存时存放内存单元的偏移地址。,39,BX与BP在应用上的区别,作为通用寄存器,二者均可用于存放数据; 作为基址寄存器,用BX表示所

12、寻找的数据在数据段;用BP则表示数据在堆栈段。,40,变址寄存器,SI:源变址寄存器 DI:目标变址寄存器 变址寄存器常用于指令的间接寻址或变址寻址。特别是在串操作指令中,用SI存放源操作数的偏移地址,而用DI存放目标操作数的偏移地址。,41,段寄存器,用于存放相应逻辑段的段基地址 CS:代码段寄存器。代码段存放指令代码 DS:数据段寄存器 ES:附加段寄存器 SS:堆栈段寄存器:指示堆栈区域的位置,存放操作数,42,控制寄存器,IP:指令指针寄存器,其内容为下一条要执行 指令的偏移地址 FLAGS:标志寄存器,存放运算结果的特征 6个状态标志位(CF,SF,AF,PF,OF,ZF) 3个控制

13、标志位(IF,TF,DF),43,8086/8088有20条地址线,可寻址的最大物理内存容量为1MB,其中任何一个内存单元都有一个20位的地址,称为内存单元的物理地址。,8086/8088内部寄存器都只有16位,通过寄存器间接寻址是无法访问1MB内存单元的。 解决办法:将地址空间分段的方法。即将1MB的地址空间分为若干个64KB的段,然后用段基地址和段内偏移地址来访问物理存储器。 段基地址和段内偏移地址又称为逻辑地址,通常写为xxxxH:yyyyH,四、8086/8088 CPU的存储器组织,44,CPU系统的内存组织是采用分段结构组织的。 这样可以使程序和数据相对独立,不同存取方式的数据也相

14、对独立。 程序 存放于代码段CS中 堆栈方式 存放于堆栈段CS中 数据 随机方式 存放于数据段DS 及附加段ES中,45,0 0 0 0,段基地址(16位),段首地址, , ,19,0,4,段首的偏移地址: 0000H,46,物理地址,段基地址 =6000H 段首地址 偏移地址 物理地址,数据段,60009H,00H,12H,60000H,0009H,47,物理地址由段基地址和偏移地址组成,物理地址=段基地址16+偏移地址,0 0 0 0,段首地址, , ,19,0,4, , ,偏移地址,+,物理地址,48,例:,已知 CS=1055H, DS=250AH ES=2EF0H SS=8FF0H

15、某操作数偏移地址=0204H, 画出各段在内存中的分布、段首地址及操作数的物理地址。,49,例题解答,设操作数在数据段,则操作数的物理地址为: 250AH 16+0204H = 252A4H,10550H,250A0H,2EF00H,8FF00H,CS,DS,ES,SS,50,堆栈及堆栈段的使用,堆栈:内存中一个特殊区域,用于存放暂时不用或需要保护的数据。 常用于响应中断或子程序调用。,51,例:,若已知(SS)=1000H (SP)=0100H 则堆栈段的段首地址 = ? 栈顶地址=? 若该段最后一个单元 地址为10200H,则栈底=?,段首,栈底,栈顶,堆栈区,52,内存单元数据的存放次序,在PC系列微机中,数据的存放次序是低地址为低字节,高地址为高字节。 例如: (10000H)=12H,(10001H)=34H,(10002H)=56H,(10003H)=78H, 按字读则(10000H)=3412H, 按双字读则(10000H)=78563412H.,53,五、时序,时序的概念:CPU各引脚信号在时间上的关系 时钟周期:系统工作时钟脉冲的重复周期(T),等

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

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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