第3章 8086微处理器及系统.ppt
《第3章 8086微处理器及系统.ppt》由会员分享,可在线阅读,更多相关《第3章 8086微处理器及系统.ppt(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3章章 8086/8088微处理器微处理器 及系统及系统内容安排内容安排一一.8086/8088的内部结构的内部结构二二.8086微处理器的引脚功能微处理器的引脚功能三三.8086CPU的工作模式及时序的工作模式及时序四四.存储器系统存储器系统 8086和和8088CPU的的内部结构基本相同,但是外内部结构基本相同,但是外部性能有所区别,部性能有所区别,8086是是16位数据总线,而位数据总线,而8088是是8位数据总线位数据总线 8088用于处理外设数据及检测控制系统用于处理外设数据及检测控制系统3.1 8086/8088的内部结构的内部结构8086CPU总线接口部件(总线接口部件(Bu
2、s Interface Unit,BIU)执行部件(执行部件(Execution Unit,EU)8086与与8088差异差异1.执行部件(执行部件(EU)负责指令的执行,将指令译码并利用内部的寄存器和负责指令的执行,将指令译码并利用内部的寄存器和ALU对数据进行处理对数据进行处理通用寄存器组通用寄存器组专用寄存器组专用寄存器组算术逻辑运算单元(算术逻辑运算单元(ALU)标志寄存器标志寄存器内部控制逻辑内部控制逻辑(1)通用寄存器组功能功能:存放操作数和中间结果存放操作数和中间结果处理处理“字字”指令时,指令时,用用16位寄存器,处位寄存器,处理理“字节字节”指令时,指令时,用用8位寄存器位寄
3、存器AX(AH,AL)累加器累加器 存放参加运算的操作数和运算结果,有些指令存放参加运算的操作数和运算结果,有些指令约约定定AX(AL)寄存器为累加器,如乘法、除法、输入寄存器为累加器,如乘法、除法、输入/出指令。所有寄存器均可作累加器出指令。所有寄存器均可作累加器AXBXCXDXAHALBHBLCHCLDHDLBX(BH,BL)基址寄存器基址寄存器 计算地址时用作基地址寄存器,用于扩展寻址,计算地址时用作基地址寄存器,用于扩展寻址,起变址作用起变址作用CX(CH,CL)计数寄存器计数寄存器 在某些指令中作隐含的计数器。例如循环操作、串在某些指令中作隐含的计数器。例如循环操作、串操作及移位操作
4、等操作及移位操作等 DX(DH,DL)数据寄存器数据寄存器 存放操作数和列表数据,存放操作数和列表数据,在某些在某些I/O操作期间,用操作期间,用来保存来保存I/O端口地址,在乘除运算中有专用端口地址,在乘除运算中有专用(2)专用寄存器组SP 堆栈指针寄存器堆栈指针寄存器 访问堆栈段的栈顶单元。栈是一种访问堆栈段的栈顶单元。栈是一种先进后出先进后出的的数据结构,最后入栈的数据为栈顶数据,其单元数据结构,最后入栈的数据为栈顶数据,其单元地址称为栈顶地址地址称为栈顶地址入栈:入栈:“船高水涨船高水涨”出栈:出栈:“水落船低水落船低”2003H2002H2001H2000HSP15HSP16H17H
5、18H16位位SPBPDISIBP 堆栈区基地址寄存器堆栈区基地址寄存器 对堆栈段寄存器对堆栈段寄存器相对寻址相对寻址的基地址寄存器,可访问堆的基地址寄存器,可访问堆栈段的任意单元栈段的任意单元SI 源变址寄存器源变址寄存器 源操作数偏址存于源操作数偏址存于SIDI 目的变址寄存器目的变址寄存器 目的操作数偏址存于目的操作数偏址存于DI寄存器间接寻址、寄存器间接寻址、相对寻址、相对寻址、基址变址寻址、基址变址寻址、相对基址变址、相对基址变址、访问数据段的任意单元访问数据段的任意单元在数据串中专用在数据串中专用(3)算术逻辑单元)算术逻辑单元加法器,完成加法器,完成16位或位或8位算术逻辑运算位
6、算术逻辑运算(4)标志寄存器)标志寄存器 FR标志寄存器共有标志寄存器共有16位,其中位,其中7位未用位未用功能功能条件(状态)标志(条件(状态)标志(6位)位)控制标志(控制标志(3位)位)状态标志状态标志CF(carry flag):进进/借位标志借位标志当做当做16位或位或8位加减法运算时,最高位有进位加减法运算时,最高位有进/借位,则借位,则CF=1,否则否则CF=0。循环指令影响进位标志循环指令影响进位标志用于寄存器程序运行的状态信号,由硬件根据运算用于寄存器程序运行的状态信号,由硬件根据运算结果结果自动自动设定,用作后续指令判断依据设定,用作后续指令判断依据PF(parity fl
7、ag)奇偶标志奇偶标志/奇偶校验位奇偶校验位运算结果中若低运算结果中若低8位中的位中的“1”的个数为偶数,的个数为偶数,PF=1,若若为奇数为奇数PF=0(奇校验方式)奇校验方式)AF(Auxiliary Carry Flag)辅助进辅助进/借位标志借位标志当作当作16位或位或8位加减法运算时,最低四位向高四位有进借位加减法运算时,最低四位向高四位有进借位位AF=1,否则否则AF=0,用于用于BCD码的调整。专用码的调整。专用BCD加减加减法法ZF(Zero Flag)零标志零标志当算术或逻辑与计算指令生成结果为零时,则当算术或逻辑与计算指令生成结果为零时,则ZF=1,否否则则ZF=0SF(S
8、ign Flag)符号标志符号标志与运算结果的最高位相同,若运算结果为负数,则与运算结果的最高位相同,若运算结果为负数,则SF=1,若为正数若为正数SF=0OF(Over Flag)溢出标志溢出标志 当运算结果超出了机器数所能表示的范围时,称为溢出当运算结果超出了机器数所能表示的范围时,称为溢出OF=1,否则否则OF=0 字节字节 -128+127 字字 3276832767 通常通常CF用于无符号数运算结果的溢出判断,而用于无符号数运算结果的溢出判断,而OF则用于有符号数的运算结果溢出判断则用于有符号数的运算结果溢出判断在在8086系统中,有一条中断指令系统中,有一条中断指令INTO(中断类
9、型中断类型4)能)能够在发生溢出时,产生一个内部中断,够在发生溢出时,产生一个内部中断,CPU自动转入溢自动转入溢出中断服务程序中,并对溢出作相应处理,一般在指令出中断服务程序中,并对溢出作相应处理,一般在指令运算后加上该指令运算后加上该指令11001010+01111000101000010CF=1,PF=1,AF=1,ZF=0,SF=0,OF=0看作看作无符号无符号数运算:数运算:202+120=322,显然超出了,显然超出了8位二进制数所能表示的最大位二进制数所能表示的最大无符号数无符号数255,运算结果溢出,运算结果溢出CF=1看作看作有符号有符号数运算:数运算:-54+(+120)=
10、+66,运算结果不溢出,运算结果不溢出OF=0 控制标志控制标志IF(Interrupt Flag)中断标志中断标志 可由指令设置。当可由指令设置。当IF=1时,时,CPU开中断;当开中断;当IF=0时,时,CPU关中断,关中断,IF只能对可屏蔽中断产生影响,而只能对可屏蔽中断产生影响,而对非屏蔽中断和内部中断无影响对非屏蔽中断和内部中断无影响DF(Direction Flag)方向标志方向标志 在在串处理串处理指令中,用于控制串处理的方向。当指令中,用于控制串处理的方向。当DF=0时,时,SI、DI自动增量;当自动增量;当DF=1时,时,SI、DI自动减量;该指令自动减量;该指令由方向控制指
11、令设置或清除由方向控制指令设置或清除TF(Trap Flag)(跟踪)跟踪)陷阱标志陷阱标志 可由指令设置。当可由指令设置。当TF=1时,表示以单步方式执行程序,时,表示以单步方式执行程序,即即CPU每执行完一条指令,就自动产生一次内部单步中断每执行完一条指令,就自动产生一次内部单步中断中断类型中断类型1(也称为陷阱),进入系统控制程序,利用(也称为陷阱),进入系统控制程序,利用此功能可跟踪指令的执行状况,用于程序调试此功能可跟踪指令的执行状况,用于程序调试(5)内部控制逻辑电路内部控制逻辑电路 从指令队列缓冲器中取出指令,进行译码,产生从指令队列缓冲器中取出指令,进行译码,产生各种控制信号,
12、控制各种部件的工作各种控制信号,控制各种部件的工作 负责与存储器、负责与存储器、I/O端口传送数据,包括对存储器的读写端口传送数据,包括对存储器的读写数据操作,对数据操作,对I/O端口的读写操作以及取指令操作,即端口的读写操作以及取指令操作,即BIU管管理在存储器中读写程序和数据的实际处理能力理在存储器中读写程序和数据的实际处理能力2.总线接口部件(总线接口部件(BIU)段寄存器段寄存器指令指针寄存器指令指针寄存器地址加法器地址加法器内部暂存器内部暂存器指令队列缓冲器指令队列缓冲器I/O控制逻辑(总线控制逻辑)控制逻辑(总线控制逻辑)8086/8088地址引脚有地址引脚有20根,所以其寻址空间
13、为根,所以其寻址空间为2201MB,其地址范围为:其地址范围为:00000HFFFFFH 将将1MB空间分成空间分成16段,每段最大为段,每段最大为64KB,每段的首每段的首地址必须能被地址必须能被16整除(即凡是能被整除(即凡是能被16整除的地址均可定整除的地址均可定义为段首地址)义为段首地址)目的目的:与:与8位机在软件保持兼容位机在软件保持兼容各段之间可以是连续、分开、部分重叠或完全重叠的各段之间可以是连续、分开、部分重叠或完全重叠的当段首地址确定后,段内的当段首地址确定后,段内的16位地址称为偏移地址位地址称为偏移地址由于由于8086存储系统数据存贮器和程序存储器是统一编址存储系统数据
14、存贮器和程序存储器是统一编址的,分段可以使他们隔离,互不相扰的,分段可以使他们隔离,互不相扰(1)段寄存器)段寄存器逻辑地址逻辑地址:程序中出现的地址是逻辑地址,是用符号地址表:程序中出现的地址是逻辑地址,是用符号地址表示的。逻辑地址包括段基址和偏移地址,示的。逻辑地址包括段基址和偏移地址,CPU执行程序时,执行程序时,需要将逻辑地址转换为物理地址,称为地址重定位需要将逻辑地址转换为物理地址,称为地址重定位 物理地址和逻辑地址物理地址和逻辑地址 物理地址物理地址:是指信息在存储器中实际有效的地址单元号,:是指信息在存储器中实际有效的地址单元号,CPU访问内存是按物理地址寻址的。每一个物理地址是
15、由段访问内存是按物理地址寻址的。每一个物理地址是由段基址和段内偏移量组成基址和段内偏移量组成 物理地址段基址物理地址段基址16偏移量偏移量 1MB的存储空间可分为四种类型的段(代码段、数据段、的存储空间可分为四种类型的段(代码段、数据段、堆栈段、附加段),段基址分别存放在对应的段寄存器中堆栈段、附加段),段基址分别存放在对应的段寄存器中 CS 代码段寄存器代码段寄存器 保存当前执行程序所在段的段基址保存当前执行程序所在段的段基址,CS中的数乘中的数乘16,再加上指令指针寄存器再加上指令指针寄存器IP中的内容,即是下一条将要取中的内容,即是下一条将要取出指令的代码的地址出指令的代码的地址CS=2
16、000H,IP=2200H物理地址物理地址2000H162200H=22200HDS 数据段寄存器数据段寄存器 保存有数据段的段基址。数据段是用来保存当前程序保存有数据段的段基址。数据段是用来保存当前程序中的操作数和变量中的操作数和变量SS 堆栈段寄存器堆栈段寄存器 保存有堆栈段的段基址,保存有堆栈段的段基址,SS中的数据乘中的数据乘16,加上堆栈,加上堆栈指针寄存器指针寄存器SP中的数形成栈顶地址中的数形成栈顶地址ES 附加段寄存器附加段寄存器 进行字符串操作时,作为进行字符串操作时,作为目的目的段地址使用,是一种附加段地址使用,是一种附加的数据区,若要使用附加段,必须对的数据区,若要使用附
17、加段,必须对ES置初值。在附加段中,置初值。在附加段中,DI寄存器用于存放附加段的偏移量寄存器用于存放附加段的偏移量(2)指令指针寄存器指令指针寄存器IP16位寄存器位寄存器 目的目的:产生:产生20位的物理地址。物理地址的获得方法:位的物理地址。物理地址的获得方法:将段寄存器中的内容左移将段寄存器中的内容左移4位(或者乘以位(或者乘以16)与偏移)与偏移地址(即对段首的偏移量)在地址加法器内相加,产地址(即对段首的偏移量)在地址加法器内相加,产生生20位的物理地址位的物理地址 用来存放将要取出指令的偏移地址,每执行一条指令,用来存放将要取出指令的偏移地址,每执行一条指令,IP其增量大小与已执
18、行指令的字节长度有关。程序以代码其增量大小与已执行指令的字节长度有关。程序以代码的形式存在于存储器中,每一条指令都有一个存放地址,的形式存在于存储器中,每一条指令都有一个存放地址,IP总要指向下一条将要执行的指令地址总要指向下一条将要执行的指令地址(3)地址加法器地址加法器 物理地址段基址物理地址段基址16偏移量偏移量 (4)指令队列缓冲器指令队列缓冲器 8086有有6字节缓冲器,字节缓冲器,8088有有4字节缓冲器。在执行部件字节缓冲器。在执行部件执行指令的同时,可以从内存中取出下一条或下几条指令执行指令的同时,可以从内存中取出下一条或下几条指令放到缓冲器,一条指令执行完后,可立即译码执行下
19、一条放到缓冲器,一条指令执行完后,可立即译码执行下一条指令,从而解决了以往指令,从而解决了以往CPU取指令期间,运算器的等待问题。取指令期间,运算器的等待问题。由于取指令和执行指令并行进行,从而提高了由于取指令和执行指令并行进行,从而提高了CPU的效率的效率(5)输入输入/出控制电路出控制电路 输入输入/出控制电路控制出控制电路控制CPU与外部电路的数据交换。与外部电路的数据交换。8086有有20条地址线,条地址线,16条数据线,由输入条数据线,由输入/出控制电路控制出控制电路控制分时分时复用复用的的CPU芯片的芯片的16个引脚个引脚(6)内部暂存器内部暂存器 用于内部数据的暂存,该部分对用户
20、透明,用户无权访问用于内部数据的暂存,该部分对用户透明,用户无权访问8086微处理器的微处理器的总线周期总线周期 计算机是在时钟控制下进行工作的,若干个时钟完成一计算机是在时钟控制下进行工作的,若干个时钟完成一个基本操作,一个基本操作就是一个个基本操作,一个基本操作就是一个总线周期总线周期,CPU有若有若干种典型操作,构成相应的总线周期。如存储器的读写总干种典型操作,构成相应的总线周期。如存储器的读写总线周期,线周期,I/O读写总线周期等读写总线周期等执行一条指令的时间称为执行一条指令的时间称为指令周期指令周期,指令周期是由若干总,指令周期是由若干总线周期构成线周期构成8086/8088的基本
21、总线周期是由的基本总线周期是由4个个时钟周期时钟周期组成,在执行组成,在执行WAIT指令或指令或READY引脚输入的状态为低电平时,都需要引脚输入的状态为低电平时,都需要在在T3和和T4之间插入之间插入1个或若干个等待时钟周期个或若干个等待时钟周期Tw T2状态状态 CPU从从总线上撤销有效地址,使地址总线低总线上撤销有效地址,使地址总线低16位呈位呈高阻状态,为数据传输做准备。总线的高高阻状态,为数据传输做准备。总线的高4位(位(A19A16)输出总线周期的状态信息,用于表示中断允许状态输出总线周期的状态信息,用于表示中断允许状态及正在使用的段寄存器名及正在使用的段寄存器名T1状态状态 CP
22、U向向多路复用总线上发送地址信息,指出要寻址多路复用总线上发送地址信息,指出要寻址的内存单元地址或的内存单元地址或I/O端口地址。这期间端口地址。这期间CPU还要送出还要送出ALE(正向脉冲),在正向脉冲),在ALE下降沿将内存单元地址或下降沿将内存单元地址或I/O端口地址打入地址锁存器端口地址打入地址锁存器T3状态状态 A19A16上的状态信息不变,地址总线低上的状态信息不变,地址总线低16位上出现位上出现CPU要写出的或准备读入的数据。若外设与内存来不及要写出的或准备读入的数据。若外设与内存来不及与总线交换数据,则应通过与总线交换数据,则应通过CPU的的READY信号,在信号,在T3前前沿
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第3章 8086微处理器及系统 8086 微处理器 系统
限制150内