第二章 8086微处理器

合集下载

第2章-8086微处理器part2

第2章-8086微处理器part2

8086 CPU在最小模式中引脚定义
M/#IO:Memory/Input & Output,三态输出
存储器或I/O端口访问信号 。指示8086的访问对象,发 给MEM或I/O接口。 M/# IO为高电平时,表示 当前CPU正在访问存储器;
M/# IO 为低电平时,表 示当前CPU正在访问I/O端 口
数据驱动器数据流向控制信 号,输出,三态。
在8086系统中,通常采用 74LS245、8286或8287作 为数据总线的驱动器,用 DT/#R信号来控制数据驱动 器的数据传送方向。 当DT/#R=1时,进行数据 发送; 当DT/#R=0时,进行数据 接收。
8086 CPU在最小模式中引脚定义
READY:准备就绪信号 由外部输入,高电平有效 ,表示CPU访问的存储器 或I/O端口己准备好传送 数据。 当READY无效时,要求 CPU插入一个或多个等待 周期Tw,直到READY信 号有效为止。
S3 0 1 0 1
当前正在使用的段寄存器 ES SS CS或未使用任何段寄存器 DS
8086 CPU在最小模式中引脚定义
#BHE/S7:高8位总线允许(Bus High Enable)
T1:指示高8位数据总线上的数据 是否有效 (#BHE:AD0)配合:00时读写字 ,01时读写奇地址字节,10时读写 偶地址字节 其他T周期:输出状态信号S7(S7 始终为逻辑1,未定义) DMA方式下,该引脚为高阻态。
最大模式引脚信号(续)
LOCK# :总线封锁(优先权锁定) 三态输出,低电平有效。 LOCK有效时表示CPU不允许其它总线主控者占用 总线。 ห้องสมุดไป่ตู้ 这个信号由软件设置。 • 当在指令前加上LOCK前缀时,则在执行这条 指令期间LOCK保持有效,即在此指令执行期 间,CPU封锁其它主控者使用总线。 在保持响应期间,LOCK#为高阻态。

第二章 8086 CPU[2-3]

第二章 8086 CPU[2-3]
除了74LS373,还有74LS273、74LS374等
应用例子:发光二极管接口
+5V
D0~D7 A0~A15
IOW
20:49
D|0 Q0
1
R
D7
...
...
...
...


CP

R
Q7
1
74LS273
12
§2-4 8086的工作模式和总线操作
3、时钟发生器8284A
产生CLK信号,作为8086CPU的内部和外部的时间基准信号 提供系统时钟(CLK)、READY同步和RESET同步信号
第二章 8086 CPU
内容提要
引言 8086 CPU的内部结构 8086/8088 CPU的引脚功能 8086的存储器组织 8086的工作模式和总线操作
20:49
2
§2-4 8086的工作模式和总线操作
1、电源要求
8086/8088微处理器都是用+5.0V电源电压,其允许偏差为±10%。
OE
地址总线
存储器
I/O芯片
20:49
T 74LS245 /8286/82 87
OE
数据总线
15
§2-4 8086的工作模式和总线操作
2.4.3 总线操作时序
相关概念介绍
➢时钟周期
➢总线周期
➢指令周期
➢时序 ➢时序图
时序就是指系统中各总线信号(即地址、 数据和控制信号)产生的先后次序。
20:49
16
在8086/8088CPU中,一个总线周期至少包括4个时钟周期。
1~2个
若干个
T1 T2 T3 T4 Ti Ti T1 T2 T3 Tw Tw Tw T4 Ti Ti

第2章8086微处理器与汇编语言(下)

第2章8086微处理器与汇编语言(下)

第二章微处理器与汇编语言(下)
2.3 指令系统
2.4 汇编语言
2.5 汇编语言程序设计
2.6 系统功能调用
2.7 宏指令、条件汇编及上机过程 2.8 模块化程序设计与混合编程
三、指令系统
1. 传送类指令
2. 算术运算类指令
3. 位操作类指令
4. 串操作指令
5. 循环和转移指令 6. 子程序的调用和返回指令 7. 输入输出指令
4. 表达式与运算符 (3)关系运算符 表2-4-3列出的关系运算符。
2. 汇编语言数据
(2)变量(续) ④ 带DUP表达式 DUP是定义重复数据操作符。格式如下:
表达式1是重复次数,表达式2是重复的内 容。例如: D_STR DB3)标号
标号是一条指令目标代码的符号地址。具 有以下三个属性: ● 段属性(SEG) ● 偏移量属性(OFFSET)
1. 传送类指令 (4)标志传送指令(续)

标志位进栈
格式:PUSHF
将标志寄存器压入堆栈。标志寄存器中各 标志位本身不受影响。

标志位出栈
格式:POPF
将堆栈顶部的内容弹入标志寄存器。
1. 传送类指令 (5)地址传送指令 ① 装入有效地址 格式:LEA DEST,SRC 指令对标志寄存器各位无影响。 ② 装入地址指针 格式:LDS DEST,SRC 或 LES DEST,SRC 指令对标志寄存器各位无影响。
第二章 8086微处理器与汇编语言
(下)
学习目标
1、识记80X86汇编语言指令集、伪指 令和宏、MASM表达式。 2、理解程序设计中顺序、分支、循环、 子程序的基本结构,以及实现方法。 3、识记汇编语言编程、上机调试的基 本方法。 4、识记DOS功能调用和BIOS中断调 用的方法和应用,以及混合编程的概念。

【教学课件】第2章 8086微处理器

【教学课件】第2章  8086微处理器

控制 电路
局部总线 接口
SYSB/RESB
1
20
2
19
3
18
4
17
5
8289 16
6
15
7
14
8
13
9
12
10
11
INIT
BCLK BREQ BPRN BPRO BUSY CBRQ
总线仲裁 信号
AEN
V CC S1 S0 CLK
LOCK
CRQLCK ANYRQST
AEN CBRQ BUSY
2021/8/17
DEN CEN
INTA IORC AIOWC IOWC
2021/8/17
23
2.总线仲裁控制器8289
仲裁电路
状态
S2
信号
S1
S0
状态 译码器
多路总线 接口
控制 输入
LOCK CLK
CRQLCK
RESB ANYRQST
IOB
S2 IOB
RESB BCLK INIT BREQ BPRO BPRN
GND
数据总线
2021/8/17
S0
S1
S2
INTR R Q / G T0
R Q / G T1
8288 总线控制器
IN T A
8259A 及有关电路
控制总线 中 断 请 求
22
1.总线控制器8288
状态
S2
信号
S1
S0
状态 译码器
控制 输入
CLK
AEN CEN IOB
控制 电路
命令 信号 发生器
控制信号 发生器
2.3.1 最小模式和最大模式的概念

第二章 8086体系结构

第二章  8086体系结构

8086微处理器概览
标志位寄存器(FR) • 16位标志位寄存器FR,共有9个
标志位。其中6个是状态标志位, 3个是控制标志位,用于反映 CPU运行过程中的某些状态特征。
标志位寄存器
3、标志寄存器FR
标志寄存器FR中共有9个标志位,可分成两类: ➢状态标志 表示运算结果的特征,它们是 CF、PF、AF、 ZF、SF和OF ➢控制标志 控制CPU的操作,它们是IF、DF和TF。
IP :BIU要取指令的地址。
IP
三、8086CPU的管脚及功能
8086是16位CPU。它采用高性能的N— 沟道,耗尽型负载的硅栅工艺(HMOS)制 造。由于受当时制造工艺的限制,部分管 脚采用了分时复用的方式,构成了40条管 脚的双列直插式封装
1、 8086的两种工作方式
最小模式:系统中只有8086一个处理器,所有的控制信号都 是由8086CPU产生(MN/MX=1)。
最大模式:系统中可包含一个以上的处理器,比如包含协处 理器8087。在系统规模比较大的情况下,系统控 制信号不是由8086直接产生,而是通过与8086配 套的总线控制器等形成(MN/MX=0)。
三总线结构 数据线DB 地址线AB 控制线CB
微机的三总线结构
➢ 最小模式下的引脚说明
( 1 ) AD15 ~ AD0 (Address Data Bus):
堆栈指针用于存放栈顶的逻辑偏移地 址,隐含的逻辑段地址在SS寄存器中。
寄存器的特殊用途和隐含性质
在指令中没有明显的标出,而这些寄存器参 加操作,称之为“隐含寻址”。
具体的:在某类指令中,某些通用寄存器有指 定的特殊用法,编程时需遵循这些规定,将某些 特殊数据放在特定的寄存器中,这样才能正确的 执行这些指令。采用“隐含”的方式,能有效地 缩短指令代码的长度。

第二章 8086微处理器

第二章 8086微处理器

第二章8086/8088微处理器及其系统结构内容提要:1.8086微处理器结构:CPU内部结构:总线接口部件BIU,执行部件EU;CPU寄存器结构:通用寄存器,段寄存器,标志寄存器,指令指针寄存器;CPU引脚及其功能:公用引脚,最小模式控制信号引脚,最大模式控制信号引脚。

2.8086微机系统存储器结构:存储器地址空间与数据存储格式;存储器组成;存储器分段。

3.8086微机系统I/O结构4.8086最小/最大模式系统总线的形成5.8086CPU时序6.最小模式系统中8086CPU的读/写总线周期7.微处理器的发展学习目标1.掌握CPU寄存器结构、作用、CPU引脚功能、存储器分段与物理地址形成、最小/最大模式的概念和系统组建、系统总线形成;2.理解存储器读/写时序;3.了解微处理器的发展。

难点:1.引脚功能,最小/最大模式系统形成;2.存储器读/写时序。

学时:8问题:为什么选择8088/8086?•简单、容易理解掌握•与目前流行的P3、P4向下兼容,形成x86体系•16位CPU目前仍在大量应用思考题1、比较8086CPU与8086CPU的异同之处。

2、8086CPU从功能上分为几部分?各部分由什么组成?各部分的功能是什么?3、CPU的运算功能是由ALU实现的,8086CPU中有几个ALU?是多少位的ALU?起什么作用?4、8086CPU有哪些寄存器?各有什么用途?标志寄存器的各标志位在什么情况下置位?5、8086CPU内哪些寄存器可以和I/O端口打交道,它们各有什么作用?6、8086系统中的物理地址是如何得到的?假如CS=2400H,IP=2l00H,其物理地址是多少?思考题1.从时序的观点分析8088完成一次存储器读操作的过程?2.什么是8088的最大、最小模式?3.在最小模式中,8088如何产生其三总线?4.在最大模式中,为什么要使用总线控制器?思考题1.试述最小模式下读/写总线周期的主要区别。

第二章 8086微处理器(1)

第二章  8086微处理器(1)

16位微处理器概述
5. 第五代微处理器 • (1993年)Pentium(奔腾)— 32位微处理器 - 5级超标量结构、分支预测技术 64条数据线、32条地址线 - 64条数据线、32条地址线 - 常用指令硬件化,使用微程序设计
16位微处理器概述
6. 第六代微处理器 • Pentium Pro(高能奔腾) — 32位 - 64条数据线、36条地址线 64条数据线、36条地址线 - 实现了动态执行技术(乱序执行) • (1997年)Pentium II(奔腾2)— 32位微处理器 - 是Pentium Pro + MMX - 双独立总线结构 • (1999年)Pentium III(奔腾3) — 32位微处理器 - 增加了70条SSE指令(流水式单指令多数据扩充) - 首次内置序列号
3)方向标志DF(Direction Flag) 用于串操作指令中的地址减量修改(DF=1)还是增量修改 (DF=0)。 两条专门的指令可以置“1”或置“0”分别为STD,CLD。 M1 (ABC0) M2

SI-3 SI-2 SI-1 SI
0 C B A
0 0 C C B A A
DI-3 DI-2 DI-1 DI
高 DF=1 DF=0
(2)总线接口部件BIU )总线接口部件BIU
功能: 负责与内存(M)、输入/输出(I/O)接口之间指令或数据的传送: 1) 从内存M取指令存入指令队列,供EU使用。 2)EU执行指令需读数据/送结果时,都经过BIU。
EU
BIU存中由于各部分存放的数据性质不同,分为代码段、数据段、 堆栈段、扩展数据段。
20
差 别
2、8086与8088的编程结构 、 与 的编程结构

内 部 寄 存 器

第二章-8086微处理器

第二章-8086微处理器

答案:A
思考题
8086/8088的状态标志有 A)3 B)4 C)5 答案:D 个。 D)6
思考题
8086/8088的控制标志有 A)3 B)4 C)5 答案:A 个。 D)6
三、引脚信号和功能(图2-5 )
8086总线周期的概念: 为了取得指令或传送数据,就需要CPU的总线接 口单元(BIU)执行一个总线周期。 一个最基本的总线周期由4个时钟周期组成。 习惯上将4个时钟周期分别称为4个状态,即T1状 态、T2状态、T3状态和T4状态。 图2-17
2.方向标志DF(Direction Flag) 用于串操作指令中的地址增量修改(DF =0)还是减量修改(DF=1)。 STD使DF=1 CLD使DF=0
(三)标志寄存器-控制标志(续)
3.跟踪标志TF(Trap Flag) 若TF=1,则CPU按跟踪方式(单步方式) 执行程序,否则将正常执行程序。
思考题
指令队列的作用是 A)暂存操作数地址 。 B)暂存操作数
C)暂存指令地址
D)暂存预取指令 答案:D
思考题
8086的指令队列的长度是 A)4个 B)5个 C)6个 D)8个 字节。
答案: C
思考题
8088的指令队列的长度是 A)4个 B)5个 C)6个 D)8个 字节。
答案:A
思考题
第二章 8086/8088微处理器
8086/8088微处理器的结构 8086/8088典型时序分析

简 介
8086:16位微处理器 数据总线宽度16位:可以处理8位或16位数据 地址总线宽度20位:可直接寻址1MB存储单元和 64KB的I/O端口 8088:准16位处理器 内部寄存器及内部操作均为16位,外部数据总线8位 8088与8086指令系统完全相同,芯片内部逻辑结构、芯片引 脚有个别差异。 设计8088的目的主要是为了与Intel原有的8位外围接口芯片 直接兼容

第2章 16位微处理器8086

第2章 16位微处理器8086

计算机原理讲义
执行单元EU
4) 标志寄存器 FLAG
6位状态标志,3位控制标志IF、DF、TF,剩下7位保留 位状态标志, 位控制标志IF、DF、TF,剩下7 IF 15 14 13 12 11 10 9 IF 8 7 6 5 4 AF 3 2 PF 1 0 CF
OF DF
TF SF ZF
Flag) 位标志, CF(Carry Flag)进(借)位标志,加法运算最高位产生进位或减法运算 最高位产生借位, 否则置0 最高位产生借位,则CF置1,否则置0 Flag)辅助进位标志,加法运算时第3位往第4 AF(Auxiliary Carry Flag)辅助进位标志,加法运算时第3位往第4位 有进位,或减法运算时第3位往第4位有借位, AF置 否则置0 有进位,或减法运算时第3位往第4位有借位,则AF置1,否则置0 Flag)零标志, 若当前运算结果为零, ZF置1,否则置 否则置0 ZF(Zero Flag)零标志, 若当前运算结果为零, 则ZF置1,否则置0 SF( Flag)符号标志,与运算结果最高位相同,若为负数, SF(Sign Flag)符号标志,与运算结果最高位相同,若为负数,则SF 否则置0 SF指示了当前运算结果是正还是负 置1,否则置0,SF指示了当前运算结果是正还是负 Flag)溢出标志,有符号数算术运算结果溢出, OF置 OF(Overflow Flag)溢出标志,有符号数算术运算结果溢出,则OF置1, 否则置 否则置0 PF(Parity Flag)奇偶标志,运算结果低8位所含1的个数为偶数则PF Flag)奇偶标志,运算结果低8位所含1的个数为偶数则PF 置1,否则置0 否则置 计算机原理讲义
总线接口单元(BIU) 一. 总线接口单元(BIU) 1. 具体功能

第2章8086微处理器1-2

第2章8086微处理器1-2
来自忙碌忙碌忙碌
忙碌
1)CPU执行指令时总线处于空闲状态 ) 执行指令时总线处于空闲状态 2)CPU访问存储器 存取数据或指令 时要等待总线操作的完成 访问存储器(存取数据或指令 ) 访问存储器 存取数据或指令)时要等待总线操作的完成 缺点: 缺点:CPU无法全速运行 无法全速运行 解决:总线空闲时预取指令, 解决:总线空闲时预取指令,使CPU需要指令时能立刻得到 需要指令时能立刻得到
6
结论
指令预取队列的存在使EU和 指令预取队列的存在使 和BIU两个部 两个部 分可同时进行工作, 分可同时进行工作,从而 提高了CPU的效率; 降低了对存储器存取速度的要求
7
8088/8086 CPU的特点
采用并行流水线工作方式 对内存空间实行分段管理: 对内存空间实行分段管理:
每段大小为16B~ 每段大小为16B~64KB 16B 用段地址和段内偏移实现对1MB空间的寻址 用段地址和段内偏移实现对1MB空间的寻址 设置地址段寄存器指示段的首地址
支持多处理器系统; 支持多处理器系统; 片内没有浮点运算部件, 片内没有浮点运算部件,浮点运算由数学协处 理器8087支持(也可用软件模拟) 理器 支持(也可用软件模拟) 支持 注:80486DX以后的CPU均将数学协处理 器作为标准部件集成到CPU内部
8
二、8086CPU的内部结构
8086内部由两部分组成: 内部由两部分组成: 内部由两部分组成 执行单元(EU) 执行单元( ) 总线接口单元(BIU) 总线接口单元( )
2
指令预取队列(IPQ)
指令的一般执行过程: 指令的一般执行过程: 取指令 指令译码 读取操作数 执行指令 存放结果
3
串行工作方式:
8086以前的CPU采用串行工作方式: 8086以前的CPU采用串行工作方式: 以前的CPU采用串行工作方式

第2章8086CPU的原理

第2章8086CPU的原理

(2)DS:数据段段寄存器,在数据段寻址时,与BX、SI、DI 合用。 (3)SS:堆栈段段寄存器,在栈操作时,与SP合用对栈顶数据进 行存取。在对栈中数据存取时与BP合用。 (4)ES:附加数据段段寄存器,在串操作时,存放目标串,与DI 合用。也可以用来存放数据。 2 标志寄存器FLAGS FLAGS是16位寄存器,包含9个标志,标示CPU的状态和某些操 作特性。
其中:AH、AL寄存分别表示AX寄存器的高8位和低8位,如下图: 1Fh AH 50h AL AX
AH=1Fh AL=50h AX=1F50h
但AH和AL都可以作为8位的寄存器独立使用, 如 MOV BL,AH 指令执行后, BL=1Fh
其余的8位寄存器如上所述。 8086的4个数据寄存器,通常都是用来存储供CPU处理的数据或 保存结果的,但在特定的场合里,它们又有自己的特殊用途。 (1)AX、AL---累加器:在乘法、除法和符号扩展指令中,有一 个操作数预先放在累加器中;在I/O操作时,通过它CPU与接口交 换数据。累加器也是所有寄存器中执行速度最快的。
IF 中断允许标志: IF 的值决定CPU是否响应外部的可屏蔽中断。 当 IF=1 时,CPU可以响应外部的可屏蔽中断,否则相反。IF 的值 由专门的指令控制,即:STI 指令置 IF=1 CLI 指令置 IF=0 当 IF=0 时,CPU不能屏蔽非屏蔽中断和CPU内部中断。 TF 跟踪标志: TF=1 时,CPU进入单步程序执行方式,TF的控 制没有专用的指令,要通过其它方式设置。
图(3.5)8086/8088的引脚信号
最小方式 用于单个微处理器组成的系统,由8086产生系 统所需的全部控制信号。 最大方式 用于多处理器系统中,8086不直接提供控制信 号 。

[工学]第2章8086微处理器与汇编语言上

[工学]第2章8086微处理器与汇编语言上
寄存器构成。
表2-1-2 段寄存器和现行段的对应关系
寄存器 CS DS SS ES
含义 代码段寄存器 数据段寄存器 堆栈段寄存器 附加段寄存器
隐含识别的现行段 现行代码段 现行数据段
现行堆栈段 现行附加段
2021/8/26
19
2.寄存器组
(2)段寄存器组(续)
8086通过CS得到执行指令的段基地址,加上 指令指针IP中的指令偏移量,产生20位的存储 器地址。例如CS=4000H、IP=004AH。那么, 20位物理地址应该是4004AH单元。
2021/8/26
22
2.寄存器组
(4)标志寄存器(续)
① 条件标志位(续)
● AF辅助进位标志位:在运算结果的低4位向 高4位有进位或借位时,AF为“1”;反之, AF为“0”。
● OF溢出标志位:运算结果超出机器表示范 围时,OF为“1”;否则,OF为“0”。带符 号数的操作,若字节运算结果超过-128~+127 范围或者字运算结果超过-32768~+32767范围 时,OF为“1”。
2021/8/26
15
2.寄存器组
(1)通用寄存器组
通用寄存器组由八个16位寄存器构成,按用 途可分为数据寄存器和指针/变址寄存器两大 类 。它们都可以参加算术和逻辑运算。
① 数据寄存器
由四个16位的AX、BX、CX和DX寄存器组 成。每个寄存器可作为一个独立的16位寄存器 使用,也可以分别编址成两个8位寄存器使用。 这样,每个数据寄存器对应的高8位寄存器是 AH、BH、CH和DH;低8位寄存器是AL、BL、 CL和DL。
指令队列状态(输出)。
31
第四节 总线周期
4.总线周期
8086的时钟脉冲(CLK)由时钟发生器(如 8284A)来提供,例如若机器的主频为10MHz, 那么一个时钟周期为100ns。

第二章 8086 8088微处理器

第二章  8086 8088微处理器
(一)、 总线接口单元BIU
1、指令队列缓冲器 2、地址加法器和段寄存器
3、 16位的指令指针寄存器IP
IP中存放的是BIU要取的下一条指令(字 节)的偏移地址,BIU取过后,IP自动加1。 与IP相配的段寄存器是代码段寄存器CS。
扬州大学信息工程学院
第一节 8086/8088 微处理器的结构 一、8086/8088的内部结构
扬州大学信息工程学院
(一)最小工作模式
在最小工作模式,8086/8088 第24~31引脚的含义: 5、M/IO存储器/输入,输出控 制信号,输出。 为1时与存储器数椐传送; 为0时输入,输出接口进 行数据传送。T1~T4有效
6、WR写信号,输出。 在总线周期的T2~T4状态 输出低电平。 7、HOLD总线保持请求信号, 输入。其它主模块要求占用总线 时通过HOLD向CPU发高电平请 求。若“允许”,CPU在T4状态 从HLDA发出高电平后,就得到 总线控制权。
扬州大学信息工程学院
第二章 8086/8088微处理器
第一节 8086/8088 微处理器的结构 一、8086/8088的内部结构
从功能上,8086分为两部分:
1、 总线接口单元BIU (Bus Interface Unit)。 2、执行单元EU (Execution Unit)。 说明:这两个单元在CPU内部担负着不同的任务。 两个单元并行地工作,能使大部分取指令操作与执 行指令操作重叠的进行 (即所谓“流水线”结构)。
扬州大学信息工程学院
第一节8086/8088的微处理器结构
三、8086/8088的引脚信号和功能 (一)地址/数椐总线
AD15~AD0(复用的)
总线周期的状态 T1:输出地址; T2:浮置成高阻; T3:输入/输出数椐;

计算机原理_2 8086微处理器

计算机原理_2 8086微处理器

READY RDY1 AEN1 RDY2 AEN 2
3 复位信号产生 输入RES经过斯密特触发器分频以后,在时钟同频下产生RESET信号 送给CPU的RESET引脚,进行复位。 通常有以下两种情况会产生硬件复位信号: a 电源开关打开 b 按下机箱上的Reset按钮 电路如下所示:
例:CS的内容是89ABH,IP 的内容是0201H,则生成的地
址是89AB0H+0201H=89CB1H


20位的地址加法器 段地址左移4位+偏移量 → 20位的实际物理地址 段地址*16+偏移量 → 20位的实际物理地址 6个字节的指令队列

执行部件(EU)

16位的算术逻辑单元ALU 4个16位的通用寄存器 AX,BX,CX,DX,它们又可以分成8个8位的寄存器使用 AH,AL,BH,BL,CH,CL,DH,DL AL AH 4个16位的专用寄存器 SP——堆栈指针寄存器 BP——基址指针寄存器 SI ——源变址寄存器 DI ——目的变址寄存器
(二)时钟发生电路8284A 1 产生时钟信号 OSC 内部时钟同频信号 CLK 内部时钟三分频信号,占空比1/3 PCLK 内部时钟六分频信号,占空比1/2 CSYNC 外部时钟的同频信号 X1、X2 外接晶体,供内部振荡器产生震荡频率 EFI 外接时钟入端 F/C 时钟输入选择 PC机中14.31818MHz的外接晶体 CLK=4.77MHz 2 准备就绪信号 ASYNC为低电平时,表示READY输出时插入一个时钟周期延时。
三、常用的数据管理方式


LIFO FIFOቤተ መጻሕፍቲ ባይዱ
1
2
堆栈:按照后进先出(LIFO)的原则组织的存储器空间(栈)。

第2章 8086微处理器1

第2章  8086微处理器1

例3 已知逻辑地址,指出下列存储器地址的段内偏 移量、段基址、物理地址。 1)1123H:0015H 2)1124H:0005H
一个物理地址可以对应多个逻辑地址
例如:设当前有效的代码段、数据段、堆栈段、附加段的段基址分别 为1066H、251BH、900CH、F001H,则各段在内存中的分配情况如 图2-5所示。
VCC AD15 A16/S3 A17 /S4 A18 /S5 A19 /S6 (HIGH) (SSO) MN/MX RD RQ/GT0 (HOLD) RQ/GT1 (HLDA) LOCK (WR) S2 (IO/M) S1 (DT/R) S0 (DEN) QS0 (ALE) QS1 (INTA) TEST READY RESET
六个状态标志含义如下: 1.进位标志CF或C 运算结果的最高位产生进位或借位时,则 CF=1,否则CF=0(字节操作D7、字操作D15、 双字D31) 2.奇偶标志PF 运算结果中1的个数为偶数,则PF=1,否 则PF=0 3.辅助进位标志AF 运算时当 D3 向D4 有进位或有借位时 ,则 AF=1,否则AF=0
DS:数据段寄存器 ES:附加段寄存器
数据段和附加段用来存放操作数
SS:堆栈段寄存器
堆栈段用于存放返回地址,保存寄存器内容, 传递参数
3、控制寄存器

IP:指令指针寄存器,其内容为下一条 要执行的指令的偏移地址 FLAGS:标志寄存器
状态标志:存放运算结果的特征
控制标志:控制某些特殊操作
四、存储器寻址

物理地址
8086:20根地址线,可寻址220(1MB)
个存储单元,1M字节的存储器单元编 址为00000H~FFFFFH(16进制) CPU送到AB上的20位的地址称为物理 地址

第2章 8086微处理器2

第2章 8086微处理器2

等待周期中仍然要监测 READY信号,确定 是否继续插入等待周期
3. 控制总线(续)
TEST*
测试,输入、低电平有效 使用协处理器8087时,通过该引脚和WAIT 指令,可使8088与8087的操作保持同步
3. 控制总线(续)
INTR(Interrupt Request)
可屏蔽中断请求,输入、高电平有效 有效时,表示请求设备向 CPU 申请可屏蔽 中断 该中断请求是否响应受控于 IF (中断允许 标志)、可以被屏蔽掉
3. 控制总线(续)
NMI(Non-Maskable Interrupt)
不可屏蔽中断请求,输入、上升沿有效 有效表示外界向CPU申请不可屏蔽中断 该中断请求不能被 CPU 屏蔽,所以优先级 别高于INTR(可屏蔽中断)
主机与外设进行数据交换通常采用可屏蔽中断
不可屏蔽中断通常用于处理掉电等系统故障
引脚小结
CPU 引脚是系统总线的基本信号,除电源 和地外可分成三类信号: 16位数据线:D0 ~ D16 20位地址线:A0 ~ A19 控制线:
ALE、IO/M*、WR*、RD*、READY INTR、INTA*、NMI,HOLD、HLDA RESET、CLK
2.2
8086/8088微处理器外部引脚及系统构成
低 高
RD* 低
高 低
I/O写



读写控制信号的组合(续)
M/IO*
I/O读 I/O写 存储器读 存储器写
5. 其他控制线(24-31脚)
HOLD
总线保持(即总线请求),输入、高电平 有效 有效时,表示总线请求设备向 CPU 申请占 有总线 该信号从有效回到无效时,表示总线请求 设备对总线的使用已经结束,通知 CPU 收 回对总线的控制权
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

考点一:掌握8086/8088CPU的功能构成及流水线技术,理解流水线管理规则。

考点二:掌握8086/8088CPU寄存器的组成及其应用。

考点三:理解8086/8088CPU的内存分配,掌握实地址模式下的存储器地址变换方法。

考点四:掌握8086/8088CPU的引脚构成,理解其引脚复用的特性。

2.18086/8088CPU的功能构成1、8086/8088是Inter公司的第三代位处理器芯片。

其特点:(1)具有20条地址总线,直接寻址能力为1MB。

(2)8086有16条数据总线,为16位微处理器;8088有8条数据总线,为准16位微处理器。

(3)片内总线和ALU均为16位,可进行8位和16位操作。

(4)8086/8088片内均由两个独立的裸机单元组成,即总线接口单元(BIU)和执行单元(EU)2、总线接口单元BIU(1)组成部件14个16位段寄存器(CS、DS、SS、ES);216位指令偏移地址寄存器(IP);3指令队列寄存器(8086CPU:6字节;8088CPU:4字节);4形成20位物理地址的加法器5与EU通讯的内部寄存器;6总线控制逻辑;(2)功能:实现CPU与存储器或I/O口之间的数据传送1自动按CS值和IP值组成20位实际地址的存储器中去取指令,一次取两个字节指令存放到指令队列中。

2由EU从指令队列中取指令,并根据EU请求,BIU将20位操作地址传送给存储器;3取来操作数经总线控制逻辑传送到内部EU数据总线,由EU完成内部操作;4操作结果:若EU提出请求,则由BIU负责产生20位实际目的地址,将结果存入存储器里;3、执行单元EU(1)组成部分:116位算术逻辑单元(ALU);216位状态标志寄存器FLAG;38个16位通用寄存器组(AX,BX,CX,DX,SP,BP,SI,DI);416位数据暂存器;5EU控制电路;(2)功能:1从BIU指令队列中取指令;2由EU控制电路对指令进行译码分析,指出操作性质及对象;3在EU中计算出操作数的16位地址偏移量送给BIU,由BIU的加法器形成20位绝对地址;4将取来的操作数经系统数据总线送ALU进行制定的操作;5运算结果经内部总线送到指定位置;4、EU和BIU单元执行过程中,应该满足的规则(1)当指令队列寄存器中无指令时,EU处于等待状态;(2)当指令队列中存满指令,而EU又没有访问存储器或I/O端口的需要,则BIU进入空闲状态;(3)当指令队列中有两个空闲字节,则BIU自动执行取指令的总线周期;(4)在EU执行指令时,需要访问存储器或I/O端口,如果这时BIU正在取指令,则应等待BIU 完成取指令周期,然后BIU进入存储器和I/O端口访问周期;(5)在EU执行转移,子程序调用或返回等指令时,自动清除指令队列的内容。

2.28086/8088CPU的流水线技术1、流水线技术即指令执行的顺序BIU和EU分开,取指令和执行指令可以重叠,大大减少了等待区赤岭所需要的时间,提高CPU的利用率。

2、BIU和EU的动作协调原则BIU和EU按以下流水线技术原则协调工作,共同完成所需要的任务。

(1)每当8086的指令队列中有两个空字节,BIU就会自动把指令取到指令队列中。

其取值的顺序是按指令在程序中出现的前后顺序。

(2)每当EU准备执行一条指令时,它会从BIU部件的指令队列前部取出指令的代码,然后用几个时钟周期去执行指令。

在执行指令的过程中,如果必须访问存储器或者I/O端口,那么EU就会请求BIU,进入总线周期,完成访问内存或I/O端口的操作;如果此时BIU正好处于空闲状态,会立即响应EU的总线请求。

如BIU 正将某个指令字节取到指令队列中,则BIU将首先完成这个取指令的总线周期,然后再去响应EU发出的访问总线的请求。

(3)当指令队列已满,且EU又没有总线访问请求时,BIU便进入空闲状态;(4)在执行转移指令、调用指令和返回指令时,由于待执行指令的顺序发生了变化。

则指令队列中已经装入的字节被自动消除,BIU会接着往指令队列转入转向的另一程序段中的指令代码。

将8086/8088CPU分成两个独立的功能部件使二者能够并行工作,把取指令工作和分析指令、执行指令工作重叠进行,从而提高CPU的工作效率,加快指令的执行速度。

指令队列可以被看成是个特殊的RAM,他的工作原理是“先进先出”,写入的指令只能存放在队列尾,读出的指令是队列头存放的指令。

EU和BIU之间就是通过指令队列联系起来,多数情况下,BIU在不停的向队列写入指令,而EU每执行完一条指令后,就向队列读取下一条指令。

二者的动作即独立,又协调。

2.38086/8088CPU寄存器的组成及应用1、通用寄存器8086/8088有4个16位的通用寄存器(AX、BX、CX、DX),可以存放16位的操作数,也可以分为8个8位的寄存器(AL,AH;BL,BH;CL,CH;DL,DH)来使用。

(1)AX称为累加器,多用于存放中间运算结果。

所以I/O指令都通用AX与接口传送信息,中间运算结果也多放于AX中;(2)BX称为基址寄存器,在间接寻址中用于存放基地址;(3)CX称为计数寄存器,用于再循环或串操作指令中存放计数值,即存放循环次数或重复次数。

(4)DX称为数据寄存器,在间接寻址的I/O指令中存放I/O端口地址系统中有两个16位的指针寄存器SP和BP(1)SP是堆栈指针寄存器,由它的堆栈段寄存器SS一起来确定堆栈在内存中的位置,其内容为栈顶的偏移地址;(2)BP是基数指针寄存器,通常用于存放基地址。

BP和BX在应用上的区别:作为通用寄存器,二者都可以用于存放数据,作为基址寄存器,用BX表示所寻找的数据在数据段,用BP表示的数据在堆栈段。

3、变址寄存器系统中有两个16位的变址寄存器SI和DI,其中SI是源变址寄存器,DI是目的变址寄存器,都用于指令的变址寻址方式。

4、控制寄存器IP、标志寄存器是系统中的两个16位控制寄存器(1)IP是指令指针寄存器,用来控制CPU的指令执行顺序,它和代码寄存器CS一起可以确定当前所要取的指令的内存地址。

顺序执行程序时,CPU每取一个指令字节,IP自动加1.指向下一个要读取的字节;当IP单独改变时,会发生段内的程序转移;当CS和IP同时改变时,会产生段间的程序转移。

(2)标志寄存器的内容被称为处理器状态字PSW,用来存放8086CPU在工作过程中的状态。

5、段寄存器系统中有4个16位段寄存器,即代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS和附加段寄存器ES。

这些段寄存器的内容与有效地址编译量一起,可确定内存的物理地址。

通常CS划定并控制程序区,DS和ES控制数据区,SS控制堆栈区。

8086/8088内部标志寄存器的内容,又称为处理器状态字(PSW),共有9个标志位。

可分为两类:一类为状态标志,一类为控制标志。

状态标志表示前一步操作(加、减等)执行以后,ALU所处的状态,后续操作可以根据这些状态标志进行判断,实现转移;控制标志则可以通过指令人为设置,用以对某一种特定的功能起控制作用(如中断屏蔽等),反映了对微机系统工作方式的可控制性。

6个状态标志:表示处理器当前运行状态CF:进位标志,做加法时最高位出现进位或做减法是最高位出现借位,CF=1PF:奇偶标志,低8为中1的个数为偶数个,PF=1AF:辅助进位,低4位向前有进(借)位,AF=1ZF:零标志位,结果为0,ZF=1SF:符号标志,与最高位一致OF:溢出标志,双高位判别法3个控制标志:控制处理器某一特定功能IF:可屏蔽中段允许标志,IF=1表示允许TF:陷阱标志(单步执行)DF:方向标志,DF=0地址增量变化,DF=1地址减量变化2.48086/8088的内存分配1、存储单元的地址和内容(1)存储器按字节编址①一个字节单元占用一个地址码②一个字节单元可存放8位数据。

如字节单元(0002)=34H(2)用MOV指令访问字节单元。

如MOV AL,[0002H];(AL)<--(0002H)(3)一个字占用相继的两个单元。

低字节在前,高字节在后。

(4)同一地址即可以看作字节单元地址,又可看作字单元地址,需要根据使用情况确定。

①字节单元:(0002H)=34H字节访问:MOV AL,[0002H]②字单元:(0002H)=1234H字访问:MOV BX,[0002H](5)字单元又分为两种情况①对准字:字的起始地址是偶地址字单元。

如(0002H)=1234H②非对准字:字的起始地址是奇地址。

如(0003H)=7812H(6)规则存放和非规则存放①只有8086存储器才有规则存放和非规则存放的概念。

②多字节数据从偶数地址开始存放,称为规则存放;从奇数地址开始存放,称为非规则存放。

③字节数据只占1个存储单元,不存在规则存放与非规则存放。

2、地址码宽度与存储容量(1)地址码宽度为n位,则存储器容量为2^n个单元。

如1地址码宽度为10位(A9~A0),则存储器容量为:2^10个单元=1024个单元=1K个单元。

216位地址吗,访问内存64K,0000H~FFFFH3(3、(MOV (16位地址物理地址直接送至A19~A0访问内存。

3内存单元的物理地址是唯一的,但逻辑地址不是唯一的。

4当段地址不变时,改变偏移地址,可访问16KB区域,该区域称为一个段。

5当段地址确定后,改变偏移地址,可访问不同的内存单元。

6一般情况下,访问一个连续的内存区域时,段地址值是不同的,故引入段地址寄存器来存放段地址的值。

78086/8088中4个专用的段地址寄存器,用来分别存放4个段的段地址值。

a)DS:数据段寄存器,用来存放数据段地址值;b)CS:代码段寄存器,用来存放代码段段地址值;c)SS:堆栈段寄存器,用来存放堆栈段段地址值;2.61、I/O2、采用了分时复用地址/数据总线技术,减少了芯片的引脚。

3、最小模式,在系统中只有一个处理器,所有总线控制信号都是直接由该处理器产生,此时系统中的总线接口电路被减到最少。

4、最大模式,是相对最小模式而言的,系统中包含两个或两个以上的微处理器,其中一个是主处理器,其他的处理器是协处理器,协助主处理器工作。

5、8086/8088CPU的最大或最小模式是由硬件决定的。

是通过第33号引脚(MN/MX#)控制的。

6、8086CPU的引脚按其作用可分为5类(1)地址/数据总线AD15~AD0(双向,三态)(2)地址/状态线A19/S6~A16/S3(单向输出,三态)(((7(1)请求做出响应。

低电平表示CPU已经响应外设的中段请求,即将执行中断服务程序。

(2)ALE:地址锁存允许信号,输出。

CPU利用该信号可以把AD15~AD0地址/数据、A19/S6~A16/S3地址/状态线上的地址信息锁存在地址锁存器中。

相关文档
最新文档