微机原理与接口技术第02章 8086微处理器
微机原理与接口_第二章(8086微处理器)

即一个段的最大为0000H~FFFFH=64K
4007FH
…… FFFFH
……
内存节、内存节与段地址的关系
任何一个段的段地址左移4位后,其最低4位都是0,例如 00000H、00010H、00020H、00030H…000F0H、00100H、 00110H、00120H、……F43D0H等都可假设为是一个段地址左 移4位后的结果。 大家观察,上面所列举的每相邻的两个地址编码之间的间 隔是多少个字节?
地址加法器,用于 产生20位物理地址。 假设CS=8200H, IP=1234H,则当 前指令所在内存的 物理地址为 83234H 内存
外设
从指令队列缓冲器取 出指令,进行译码, 产生各种控制信号, 控制各部件的工作
指令队列缓冲器用 于解决以往CPU取 指令期间,运算器 的等待问题
1、执行部件EU
2.1.2 8086的工作模式及引脚功能
1、8086的工作模式 8086CPU提供了两种工作模式:最小工作模式和最 大工作模式。工作在何种模式,将根据需要由硬件连接 决定。 •最小工作模式:系统中只有8086一个微处理器。在这种 系统中,所有的总线控制信号都直接由8086产生。系统 中总线控制逻辑电路最少。 •最大工作模式:系统中包括两个以上处理器,其中一个 8086做主处理器,其他处理器称为协处理器。与8086协 同工作的协处理器有用于数值运算的协处理器8087,输 入/输出协处理器8089。配置协处理器的系统,主处理器 不用处理费时的复杂运算和I/O设备服务,提高了主处理 器的运行效率。
(3)算术逻辑单元(ALU)
完成16位或者8位的算术逻辑运算。
(4)标志寄存器(Flag Register)
微机原理与接口技术 南京信息工程大学第2章-8086微处理器

内部寄存器
输入 输出 外部总线 控制 电路
8位
12345 6
指令队列缓冲器
总线接口部件(BIU)
总线接口部件BIU(Bus Interface Unit)
∑ 20位地址总线
CS DS SS ES IP
16位
组成 • 6个字节的指令队列:FIFO • 输入/输出控制电路(总线 控制逻辑) • 内部寄存器
通用寄存器的特殊用途和隐含性质
寄存器名
SI 在间接寻址中作变址寄存器用 DI 在间接寻址中作变址寄存器用 BP SP 在间接寻址中作基址指针用 在堆栈操作中作堆栈指针用 不能隐含 不能隐含 隐 含 不能隐含 含 在字符串运算指令中作目标变址寄存器用 隐
特殊用途
在字符串运算指令中作源变址寄存器用
隐含性质
源变址寄存器 目的变址寄存器 基址指针寄存器 栈指针寄存器 CS 标志寄存器 指令指针寄存器 DS SS ES 指针寄存器
代码段寄存器 数据段寄存器 堆栈段寄存器 段寄存器
附加段寄存器
通用寄存器
数据寄存器
AX (Accumulator), BX (Base Register), CX (Count Register), DX (Data Register) AH,AL,BH,BL,CH,CL,DH,DL 用来存放二进制操作数,可以是参加操作的数据、 操作的中间结果、操作数的地址。 大多数算术和逻辑运算指令都可以使用这些数据寄 存器。
2345H + 5217H
0010 0011 0100 0101 + 0101 0010 0001 0111 0111 0101 0101 1100 PF=1
标志寄存器FR
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
微机原理与接口技术-第2章-80868088微处理器

2.1.3 8088CPU的寄存器结构
含14个16位寄存器,按功能可分为三类: 8个通用寄存器 4个段寄存器 2个控制寄存器
AH BH
AL BL
AX BX 控制寄存器 指令指针 状态标志 IP FLAGS CS DS SS ES
AH CH
通 用 寄 存 器
AL CL AX CX BL DL BX DX CX DX
地址指针寄存器
SP:堆栈指针寄存器,其内容为栈顶的偏移地址; BP:基址指针寄存器,常用于在访问内存时存放内 存单元的偏移地址。
BX与BP在应用上的区别
作为通用寄存器,二者均可用于存放数据; 作为基址寄存器,BX通常用于数据段,一般与DS 或ES搭配使用;BP则通常用于堆栈段,与SS搭配 使用。
变址寄存器
SI:源变址寄存器 DI:目标变址寄存器 变址寄存器常用于指令的间接寻址或变址寻址.
段寄存器
用于存放逻辑段的段基地址。 CS:代码段寄存器 DS:数据段寄存器 ES:附加段寄存器 SS:堆栈段寄存器 堆栈段用于存放返回地址,保存寄存器内容,传递参 数。
指令指针寄存器
IP:指令指针寄存器,其内容为下一条 要执行的指令的偏移地址;
2.1.2 8088CPU的存储器组织
物理地址
● 8088/8086:20根地址线,可寻址220(1MB)个存储单元。
● CPU送到AB上的20位的地址称为物理地址。
低地址
物理地址
. . 60000H 60001H 60002H 60003H 60004H . . .
段基址
F0H 12H 1BH 08H
段i-1
代码段
段基址 段i 段基址 段i+1 段基址
最大64KB, 最小16B
微机原理与接口技术第2章微处理器

(1)进行算术和逻辑运算 (2)接受存储器和I/O接口发来的数据及发送数据给存储器和 I/O接口。 (3)可以少量暂存数据。 (4)能对指令系统进行寄存、译码并执行指令所规定的操作。 (5)能提供整个系统所需的定时和控制信号。 (6)可响应I/O设备的中断请求。 程序设计角度,其功能:
(1)赋值和算术表达式。(2)无条件转移。(3)条件转移 以及关系和逻辑表达式。(4)循环。(5)数组和其他数据结 构。(6)子程序。(7)输入、输出。
2、主频
主频即CPU的时钟频率(CPU的工作频率),用来表 示微处理器的运行速度,单位MHZ。
一个时钟周期完成的指令数是固定的,故主频越高, CPU的速度越快。
外频:系统总线的工作频率,外频越高说明微处理 器与系统内存数据交换的速度越快。 倍频是CPU主频和外频之间的比例关系,一般为:
主频=外频*倍频 超频:就是通过人为的方式将CPU、显卡等硬件的工作 频率提高(实际就是提高电压),让它们在高于其额定 的频率状态下稳定工作。以Intel P4C2.4GHz的CPU为例, 它的额定工作频率是2.4GHz,如果将工作频率提高 2.6GHz,系统仍然可以稳定运行,那这次超频就成功了。
2.2 8086CPU的内部结构
8086:16位微处理器 ,16根数据线、20根地址线, 可寻址1M字节;
8088:准16位微处理器 ,其内部寄存器、内部运算部 件以及内部操作均按16位设计,但对外的数据总线只有 8条。
8086CPU内部结构由总线接口部件(BIU,Bus Interface Unit)和执行部件(EU, Execution Unit)组成。
4、iCOMP指数(英特尔微处理器性能比较指数 )
1993年,为评价386、486SX、486DX、486DX2等 各种CPU的性能,Intel公司提出了一种简单、单一的 指标——iCOMP指数,即Intel COMPARATIVE MICROPROCESSOPERMANCE。
微机原理与接口技术第2章8086微处理器

EU 控 制系统
执行单元 EU
指令队列 队列总线 (8位) 1 2 3 4 5 6
8088
总线接口 单元BIU
8086
8086 CPU 工作特点
8位微处理器的程序执行方式
8086程序的执行过程
BIU中的指令队列为FIFO. 6个中有2个以上为空闲时,BIU会自动把指令 放到指令队列中
2.1.2 8086 CPU 的寄存器配置
AD15~AD8 AD7~AD0
传输的字节
高低字节同时传送(从偶地址传 送一个字) 从奇数地址传送高字节
从偶数地址传送低字节 无操作 从奇地址传送一个字 第一次传送低8位(于奇地址) 第二次传送高8位(于偶地址)
2.存储器的分段结构
8086CPU的内部寄存器是16位的,寄存器直接寻址的 内存空间只能是64KB。8086是采用地址分段的方法 把1MB的存储空间分为若干段来使用,每段最多 64KB,在段内寻址仍可采用传统的16位地址寻址方 法。每个段不一定都是64KB,可以小于它,段与段 之间可以是连续的、分开的、部分重叠的,也可以是 完全重叠的。
① 状态(条件)标志:OF、SF、ZF、CF、AF、PF② 控 制标志位:DF、IF、TF。
① 条件码标志
条件码标志用来记录程序中运行结果的状态信息,它们是根据有关指令 的运行结果由CPU自动设置的。由于这些状态信息往往作为后续条件转 移指令的转移控制条件,所以称为条件码。
进位标志:CF,记录运算时最高有效位产生的进位 值。 符号标志:SF,记录运算结果的符号。结果为负时 置1,否则置0。 零标志: ZF,运算结果为0时ZF位置1,否则置0。
最大模式:多CPU模式,指系统中有两个或者两个以上的微处理器,其中 一个是主处理器8086,而其它的都是协处理器,控制信号是通过8288总线 控制器提供的。
《微机原理与接口技术》课件——第2章8086微处理器(2-1)

15 0
二、寄存器结构
*
AX BX CX DX
AH
BH
CH
DH
AL
BL
CL
DL
通用寄存器
15 8 7 0
累加器
基址寄存器
计数寄存器
15 0
段寄存器
*
CS
DS
SS
ES
AX BX CX DX
SP
BP
SI
DI
AH
BH
CH
DH
AL
BL
CL
DL
累加器
基址寄存器
计数寄存器
数据寄存器
代码段寄存器
数据段寄存器
堆栈段寄存器
附加段寄存器
堆栈指针寄存器
基址指针寄存器
源变址寄存器
目的变址寄存器
IP
PSW
*
寄存器的作用 存放运算过程中所需要的操作数地址、操作数及中间结果。
寄存器的特点 存取速度比存储器快得多。
寄存器的分类
通用寄存器组 指针和变址寄存器 段寄存器 指令指针及标志位寄存器。
CS
DS
SS
ES
AX BX CX DX
SP
BP
SI
DI
AH
BH
CH
DH
AL
BL
CL
DL
累加器
基址寄存器
计数寄存器
堆栈段寄存器
附加段寄存器
堆栈指针寄存器
基址指针寄存器
源变址寄存器
目的变址寄存器
IP
PSW
指令指针寄存器
标志寄存器
指令指针和标志寄存器
指针和变址寄存器
段寄存器
通用寄存器
微机原理与接口技术_028086微处理器剖析

– 1.时钟发生器8284 – 8086典型配置中有一个时钟发生器8284A,它的功能为:产生 系统的时钟信号,对准备信号READY及复位信号RESET进行同 步。 – 2.地址锁存器8282/8283 – 8282是8位地址锁存器,三态传输。它有8个输入端DI0~DI7和8 个输出端DO0~DO7。
2018/10/11
15
2.2.2 存储器分段
• •
1.分段 8086程序把1MB的存储空间看成为一组存储段,各段的 功能由具体用途而定,分别为代码段、堆栈段、数据段 和附加段。一个存储段是存储器的一个逻辑单位,其长 度可达64K字节,每个段都由连续的存储单元构成,并 是存储器中独立的、可分别寻址的单位。
2018/10/11
7
2.1.2 8086的外部结构
• • 1.引脚结构 8086 CPU芯片都是双列直插式集成电路芯片,40条引 脚,其中20条地址线和16条数据线复用,另4条地址线 与状态信号线复用,再加上控制信号、电源、地线等, 芯片的引脚比较多。40个引脚中,32个引脚在两种不同 的工作模式下的名称和功能是相同的,还有8个引脚在 不同的工作模式下,具有不同的名称和功能。
2018/10/11
8
• 2.引脚功能 • 1)地址总线和数据总线(21条) • (1)AD15~AD0:分时复用的地址数据线,双向,输 入/输出,三态。 • ( 2 ) A19/S6 ~ A16/S3 :地址 / 状态复用引脚,输出, 三态。 • (3)/S7:高8位允许/状态复用引脚,输出,三态。
– 2)控制标志位
• DF(Direction Flag)方向标志位 • IF(Interrupt Flag)中断允许标志位 • TF(Trap Flag)陷井标志位
微机原理第二章8086微处理器

▪ 这些引脚就是微处理器级总线。微处理器通过微处理器 级总线沟通与外部部件和设备之间的联系。这些总线及 其信号必须完成以下功能:
▪ (1)和存储器之间交换信息; ▪ (2)和I/O设备之间交换信息; ▪ (3)为了系统工作而接收和输出必要的信号,如输入
▪ 时钟信号输入端。19 CLK(输入) ▪ 8086和8088为5MHz。 ▪ 8086/8088的CLK信号必须由8284A时钟发生器产生。 ▪ 微处理器是在统一的时钟信号CLK控制下,按节拍进行
工作的。
2021/6/12
16
8086/8088微处理器——微处理器的引脚功能
▪ 工作方式控制线 33
指令执行示例
2021/6/12
1
第二章:8086/8088微处理器
1. 微处理器ห้องสมุดไป่ตู้结构 2. 微处理器的内部寄存器 3. 微处理器的引脚功能 4. 微处理器的存储器组织 5. 最大模式和最小模式 6. 微处理器的时序
2021/6/12
2
2021/6/12
▪ 存储器分段
▪ 由于CPU内部的寄存器都是16位的,为了
2021/6/12
7
第二章:8086/8088微处理器
1. 微处理器的结构 2. 微处理器的内部寄存器 3. 微处理器的引脚功能 4. 微处理器的存储器组织 5. 最大模式和最小模式 6. 微处理器的时序
2021/6/12
8
8086/8088微处理器——微处理器的引脚功能
▪ 一、微处理器的外部结构
时钟脉冲、复位信号、电源和接地等。
微机原理与接口技术 第二章 8086微处理器

Intel微处理器的发展
1971年,Intel公司发布了世界上第一个微处理 器Intel 4004,它是4位的。 30多年来,Intel公司的微处理器有了极大发展 4004→8080→8085→8086(8088)→80286→80386→
1971(4) 1989 1997 1976(16) 1993 (64) 1999 2000 1978 1982 1995 1985(32)
2.2.3 8086CPU的引脚特性
• A19/S6~A16/S3(35-38脚) –地址/状态信号,输出,三态 –8086CPU首先发出地址信息锁存,然后读 入状态信息S3~S6 –S3、S4指示当前使用的寄存器
• S4S3=00, 使用ES; • S4S3=10, 使用CS; S4S3=01, 使用SS S4S3=11, 使用DS
1、DEBUG的进入
2、汇编 _a 3、执行 _G 4、单步执行 _T 5、查看寄存器 _R 6、查看内存 _D 7、DEBUG退出 _Q
第二章 微处理器与系统结构
2.1 微处理器的性能指标 2.2 8086微处理器的功能结构 2.2.1 8086微处理器的内部结构 2.2.2 8086微处理器的寄存器结构 2.2.3 8086微处理器的引脚特性 2.2.4 8086微处理器的总线特性 2.2.5 8086与8088微处理器的比较 2.2.6 8086微处理器的工作模式 2.3 8086的总线操作及时序
–S5指示中断允许标志IF的状态,S6始终为 低电平 –当8086CPU工作于DMA时,处于浮空的高阻 状态
课堂提问1
数据/地址线为什么可以使用相同引脚? 使用时必须依靠哪些技术?
【答】 (1)时间分隔技术 (2)地址锁存技术
微机原理与接口技术第02章

第 2 章
3. 状态寄存器
• Intel 8086/8088 CPU的 的 处理器设置了一个16位 处理器设置了一个 位 的状态标志寄存器(Flag 的状态标志寄存器 s)。其中安排了 位用作 。其中安排了9位用作 标志位,包括6个状态标 标志位,包括 个状态标 志位(CF、PF、AF、ZF、 志位 、 、 、 、 SF、OF)和3个控制标志 、 和 个控制标志 位(TF、IF、DF),如图 、 、 ,如图2. 3所示。 所示。 所示
8086/8088微处理器
BIU的功能是 的功能是8086 CPU与存储器或 设备之间的接 与存储器或I/O设备之间的接 的功能是 与存储器或 口部件,负责全部引脚的操作。具体来说, 口部件,负责全部引脚的操作。具体来说,BIU负 负 责产生指令地址,根据指令地址从存储器取出指令, 责产生指令地址,根据指令地址从存储器取出指令, 送到指令队列中排队或直接送给EU去执行 去执行; 送到指令队列中排队或直接送给 去执行 BIU也负责从存储器的指定单元或外设端口中取出 也负责从存储器的指定单元或外设端口中取出 指令规定的操作数传送给EU,或者把EU的操作结 指令规定的操作数传送给 ,或者把 的操作结 果传送到指定的存储单元或外设端口中。 果传送到指定的存储单元或外设端口中。
总线接口单元BIU和执行单元EU BIU和执行单元 2.1.1 总线接口单元BIU和执行单元EU 2.1.2 8086 CPU内部寄存器 CPU内部寄存器
• 2.2
8086/8088 的引脚和工作方式
CPU引脚特性 2.2.1 8086/8088 CPU引脚特性 2.2.2 最小/最大工作方式 最小/
第 2 章
8086/8088微处理器
2.1 8086/8088 微处理器的内部结构
华东理工大学微机原理与接口课件 第02章 8086微处理器

2233FH 1234H:0FFFFH
22340H
段Hale Waihona Puke 址:段起始地 址的高16位. 11
第2章 8086/8088微处理器
4、存储器的分段管理(续)
① 段的起始地址必须是低4位为0的地址: 00000H、00010H、…… FFFE0H、FFFF0H ② 段地址—每个段起始地址的高16位值,存放 在专门的段寄存器中。 ③ 偏移地址—在段内相对于段起始地址的16位 偏移值, 访问一个内存单元只需要给出其偏移 地址即可。 ④ 物理地址—每个存储单元的唯一的20位地址 ⑤ 逻辑地址—段地址:偏移地址
思考问题5:
一个4个字的数据区, 其起始地址为1234H:2B4EH. 计算该数据区首、末字单元的物理地址。 首字单元地址 1234H: 2B4EH 1234H×16D+2B4EH 1234H: 2B4FH =14E8EH 1234H: 2B50H
1234H: 2B51H 1234H: 2B52H 1234H: 2B53H 1234H: 2B54H 1234H: 2B55H
2
第2章 8086/8088微处理器
第2章 8086/8088微处理器
1、存储单元地址与内容
① 存储单元——以字节为基本单位,一 个字节数据占一个存储单元。 ② 存储单元地址——每个字节单元的二 请同学们回忆: 进制编号。 •位Bit ③ 存储单元内容——即一个存储单元中 •字节Byte 存放的数据,表示为: •字Word •双字DWord (存储单元地址)=存储单元内容 •最高有效位 •最低有效位
第2章 8086/8088微处理器
② 数据段寄存器DS (data segment)
代码段也称程序段,用来存放程序的指令序列.一 数据段存放运行程序所用的数据. ④ 附加段寄存器ES (extra 个程序有一个或多个代码段. segment) DS存放数据段的段地址. CS存放正在执行的代码段的段地址. 各种主存寻址方式(有效地址EA)得到存储器 指令指针寄存器IP指示下一条指令的偏移地址. 中操作数的偏移地址. 处理器利用CS:IP取得下一条要执行的指令. 18 处理器利用DS:EA存取数据段中的数据.
微机原理第2章 _8086微处理器

输入/ 输入 输出 控制 电路
外部 总线
指令队列
BIU
指令队列
12
IP:控制CPU指令的 :控制 指令的 执行顺序, 执行顺序,存放指令 代码在内存中的相对 代码在内存中的相对 地址,顺序执行时, 地址,顺序执行时, CPU每取一个指令字 每取一个指令字 自动加1。 节,IP自动加 。 自动加 指令指针 寄存器
20位地址加法器 位地址加法器
∑
段 寄 存
CS DS SS ES IP
内部暂存器
16位 位
8086在执行指令的同时, 器 在执行指令的同时, 在执行指令的同时 从内存中取出下一条或 下几条指令放在指令队 下几条指令放在指令队 这样, 列中,这样,取指和执 值分开操作, 值分开操作,可以节省 时间, 时间,连续执行指令
M / IO
M /IO
2.1 8086/8088 CPU 的内部组成结构
8086/8088 CPU从功能上可分为两个部分 从功能上可分为两个部分 总线接口部件BIU: Bus Interface Unit 总线接口部件 执行部件EU: Execution Unit 执行部件 总线接口部件功能:负责与存储器、 传送数据 传送数据。 总线接口部件功能:负责与存储器、I/O传送数据。 执行部件的功能:完成指令的译码与执行工作。 执行部件的功能:完成指令的译码与执行工作。
运算寄存器
内部总线
ALU
标志寄存器
执行 部件 控制 电路
标志寄存器
EU
14
15 14 13 12 11 10 9
8 7
6
5
4 AF
3
2 PF
1
0 CF
OF DF IF TF SF ZF for( i=0;i<10;i++) s=s+i; 语句标号
微机原理与接口技术第2章

指令指针寄存器IP 地址加法器 指令队列缓冲器 总线控制电路
1、总线接口单元 BIU(Bus Interface Unit) 功能:负责与 M、I/O 端口传送数据。
BIU:是CPU与存储器及I/O的接口,内部由20位地址加法器、指令队 列缓冲器、内部寄存器和总线控制逻辑等组成; 完成取指令、指令排队、读/写操作数、地址转换与总线控制等 工作。
EU由ALU、标志寄存器、8个通用寄存器、暂存器、队列控制逻辑与时序控 制逻辑(EU控制器)等组成;EU没有连接到总线上,对系统总线来说 是“外界”的。
1)算术逻辑单元ALU :是一个16位的算术逻辑运算部件,用来对 16位或8位的二进制操作数进行算术和逻辑运算
2)暂存寄存器:是一个16位的寄存器,其主要功能是暂时保存数 据,并向ALU提供参与运算的操作数
MN / MX
8086 CPU
RESET TEST HOLD HLDA NMI INTR INTA M / IO WR RD
ALE BHE AD0~AD19
DT / R DEN
第二章 8086引脚和最大最小系统
READY
控制总线
STB
8282
OE
地址总线A19~ A0
8286
T OE
数据总线D15~D0
3)标志寄存器:一个16位的寄存器,后面部分详细介绍 4) EU控制器:接收从BIU指令队列中取来的指令代码,经分析、
译码后形成各种实时控制信号,向EU内各功能部件发送相应的 控制命令,以完成每条指令所规定的操作。
【例2-1】 将126与-5进行减法运算,看标志位的变化情况。
【例2.1】将数5439H与数456AH相加,并分析相加运算对标志 位的影响
第二章+8086微处理器

算术逻辑单元(ALU)
对二进制数进行算术和逻辑运算的部件。
4
2.1.1 算术逻辑单元ALU ALU的主要功能
基本运算——硬件实现
加、减、与、或、非、异或、移位等。
乘除法运算
软件编程实现:加、减、移位组合。 专用指令:硬件实现。
浮点运算
专门的浮点处理器+浮点运算指令。
5
2.1.1 算术逻辑单元ALU ALU的构成与工作原理
字节乘,字节除,字节I/O,十进制算术运算
字节乘,字节除 查表(表格的开始地址) 串操作,循环操作的计数器 移位或循环次数 基址寄存器 计数寄存器 数据寄存器
27
DX
字节乘,字节除,间接I/O
2.2.1 8086的寄存器结构 指针和变址寄存器
16位指针寄存器
SP:堆栈指针寄存器,确定堆栈在内存中的位置。 BP:基址指针寄存器,用于存放基地址。
双总线结构
输入总线 + 输出总线。 输入:各寄存器→ALU,输出:ALU→各寄存器。
多总线结构
15
2.1.3 总线与总线缓冲器 片外总线
在微处理器与各外部部件之间传送信息的总线。
数据总线(Data Bus) 地址总线(Address Bus) 控制总线(Control Bus)
可编程逻辑阵列
通过程序设计来 执行特定逻辑功能 的组合逻辑结构。 兼顾速度与灵活 性。
13
2.1 微处理器的基本结构
1. 算术逻辑单元ALU
2. 控制器
3. 总线与总线缓冲器
4. 寄存器阵列
14
2.1.3 总线与总线缓冲器 片内总线
在微处理器内部各单元之间传送信息的总线。
单总线结构
微处理器内部各部件都挂在内部总线上。 同一时刻,只能传送一个操作数。
微机原理与接口技术第2章8086系统结构

第二章8086体系结构与80x86CPU1.8086CPU由哪两部分构成?它们的主要功能是什么?答:8086CPU由两部分组成:指令执行部件(EU,Execution Unit)和总线接口部件(BIU,Bus Interface Unit)。
指令执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU控制器等4个部件组成,其主要功能是执行指令。
总线接口部件(BIU)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等。
2.8086CPU预取指令队列有什么好处?8086CPU内部的并行操作体现在哪里?答:8086CPU的预取指令队列由6个字节组成,按照8086CPU的设计要求,指令执行部件(EU)在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在CPU 内部,EU从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
3.8086CPU中有哪些寄存器?各有什么用途?答:指令执行部件(EU)设有8个16位通用寄存器AX、BX、CX、DX、SP、BP、SI、DI,主要用途是保存数据和地址(包括内存地址和I/O端口地址)。
其中AX、BX、CX、DX主要用于保存数据,BX可用于保存地址,DX还用于保存I/O端口地址;BP、SI、DI主要用于保存地址;SP用于保存堆栈指针。
标志寄存器FR用于存放运算结果特征和控制CPU操作。
BIU中的段寄存器包括CS、DS、ES、SS,主要用途是保存段地址,其中CS代码段寄存器中存放程序代码段起始地址的高16位,DS数据段寄存器中存放数据段起始地址的高16位,SS堆栈段寄存器中存放堆栈段起始地址的高16位,ES扩展段寄存器中存放扩展数据段起始地址的高16位。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
AD2
DT/R (S1)
AD2
DT/R(S1)
AD1
DEN (S0)
AD1
DEN(S0)
AD0
ALE (QS0)
AD0
ALE(QS0)
NMI
INTA (QS1)
NMI
INTA(QS1)
INTR
TEST
INTR
TEST
CLK
READY
CLK
READY
地
RESET 引脚对比图
地
RESET
2020/3/11
第二章 8086/8088微处理器
微处理器的内部逻辑结构 微处理器的外部引脚及功能 存储器组织 系统配置 工作时序
2.1 8086的内部逻辑结构
微处理器 8086, 8088结构类似。从程序员和使用角度来 看的结构, 即编程结构从功能上分为两部分:总线接口 部件,执行部件。
段 基 址 16 位
0000
偏 移 地 址 16 位
+
物 理 地 址 20 位
2.1.3 执行部件EU
执行指令所得结果或执行指令所需的数据,都 由EU向BIU发出命令,对存储器或I/O接口进行 读/写操作。
1. EU完成以下几个主要任务: (1)指令译码 (2)执行指令 (3)向BIU传送偏移地址信息 (4)管理通用寄存器和标志寄存器
DH
DL
数据寄存器
通用
SP
堆栈指针寄存器
BP
基址指针寄存器
SI
源变址寄存器
DI
目的变址寄存器
IP
指令指针寄存器
FR
标志寄存器
CS
代码段寄存器
DS
数据段寄存器
SS
堆栈段寄存器
ES
扩展段寄存器
地址 寄存器
控制寄存器 段寄存器
寄存器
返回
2.2.1 工作模式
8086/8088CPU有两种模式:最小模式和最大模式 最小模式
2.BIU的组成
(1)4个16位的段地址寄存器 代码段寄存器CS 、数据段寄存器DS、堆栈段寄存 器SS、扩展段寄存器ES (2)1个16位的指令指针IP(Instruction Pointer) (3)20位的地址加法器 (4)指令队列 (5)总线控制逻辑
物理地址的产生过程
总线接口部件 (BIU)
流水线和非流水线操作过程图
非流水线操作
取指令1 执行指令1 指取令2 执行指令2
流水线操作
取指令1
执行指令1 取指令2
执行指令2 取指令3
执行指令3
——————————————————————〉 时间t
BIU与EU并行操作示意图
BIU 取指令1 取指令2 取指令3 取数据 取指令4
两部分各自执行自己的功能并行工作,这种工作方式与
传统的计算机在执行指令时的串行工作相比极大的提高了 工作效率。
传统 计算机执行程序时,CPU的工作顺序是:
取指令
执行指令
再取指令
行指令...
再执
CPU串行工作。
8086CPU工作顺序是:取指令,执行指令同时进 行。并行工作。
AH AL
通 BH BL
CPU 8088 由于只有8位数据线,地址顺序排列。
两个存储体内的地址表示
偶地址存储体地址
二进制表示 十六进制表
示
0000000 0
00H
0000001 0
02H
0000010 0
04H
0000011 0
06H
.
.
.
.
.
.
奇地址存储体地址
二进制表示 十六进制表
示
0000000 1
01H
0000001 1
AD9
6
BHE/S7
A9
8
SS0(HIGH)
AD8
MN/MX
A8
MN/MX
AD7
RD
AD7
RD
AD6
HOLD (RQ/GT0)
AD6
HOLD(RQ/GT0
AD5
HLDA (RQ/GT1)
AD5
HLDA(RQ/GT1)
AD4
WR (LOCK)
AD4
WR(LOCK)
AD3
M/IO (S2)
AD3
M/IO(S2)
2.EU的组成
(1)算术逻辑运算单元ALU 执行算术和逻辑运算
(2)通用寄存器 8个16位的通用寄存器AX,BX,CX,DX,BP,
SP,SI,DI。 AX,BX,CX,DX也可单独拆成两个8位的寄存
器,分别为AH、AL、BH、BL、CH、CL、DH、 DL。 (3)标志寄存器 FR(F1ags Register)
标志寄存器FR的格式
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
OF DF IF TF SF ZF
AF
PF
CF
溢方中跟符零
辅
较
进
出向断踪号标
助
验
位
标标标标标志
进
志志志志志
位
8086寄存器结构
AX
AH
AL
累加器
BX
BH
BL
基址寄存器
CX
CH
CL
计数寄存器
数据寄存器
DX
常用的协处理器有
专门用于数值运算的8087 专门用于输入/输出操作的8089
地
Vcc(5V)
地
Vcc(5V)
AD14
AD15
A14
A15
AD13
A16/S3
A13
A16/S3
AD12 AD11
8 0
A17/S4 A18/S5
AD10
8
A19/S6
A12
8
A11
0
A10
8
A17/S4 A18/S5 A19/S6
系统中只有8086/8088一个微处理器,也叫单处理器模式。 所有的总线控制信号都直接由8086/8088产生。适合于较小规 模的系统。
最大模式
包含两个或两个以上的微处理器,其中一个主处理器 8086/8088,其他的处理器称为协处理器,它们是协助主处理 器工作的。适合于中等规模或大型的8086/8088系统中。
用 CH CL
寄 DH DL
存
SP
器
BP DI
SI
数据总线
运 算 寄 存器
ALU
标志寄存器
AX BX CX DX
16 位
地址加法器
20 位
段 寄
CS DS
存
SS
器
ES
指令指针 I P
内部暂存器
16 位
外部总线
输入输出 控制
执行 控制 电路
指令对列
12 34
8086为 6 字节
电路
8086 16位
执行部件 (EU)
EU 等待
等待 执行指令1 执行指令2 执行指令3
2.1.2 总线Байду номын сангаас口部件BIU
总线接口部件BIU主要包括:四个16位段地址寄 存器、一个16位指令指针寄存器IP,一个6字节指 令队列缓冲器20位地址加法器,总线控制电路。
1. BIU完成以下几个主要任务:
(1)取指令和预取指令 (2)配合EU执行的指令,传送数据 (3)形成物理地址
8086用两个存储体来组织实际存储空间
8086
A0 ~ A19 BHE
BHE
A0
00001H 00003H
奇地址
00000H 00002H
偶地址
地址交叉 排列
…. ….
D8 ~ D15
FFFFFH D0 ~ D7
FFFFEH
D0 ~ D15
规则字: 偶地址作为字的地址 非规则字: 奇地址作为字的地址