chapter2 8086cpu结构与功能

合集下载

第2章 8086CPU中的寄存器结构与使用

第2章  8086CPU中的寄存器结构与使用
第2章 8086CPU中的寄存器结构与使用
本章要求: ●了解8086CPU的基本结构;
●掌握8086的通用寄存器;
●了解PSW中的相关标志位的使用; ●了解段寄存器的用途。
汇编语言程序设计
第2章 8086CPU中的寄存器结构与使用
计算机通常由五大部分组成:控制器、运算器、存储器、 输入设备和输出设备。其中把控制器和运算器两部分集成在一 个芯片上,称为微处理器,即中央处理器CPU(Central Processing Unit) 。
第7页 第7页
汇编语言程序设计
第2章 8086CPU中的寄存器结构与使用
指针寄存器
堆栈指针(SP)和基址指针(BP)通常用来作为十六
位地址指针。 SP是指向堆栈段栈顶存储单元的偏移量,且总是指向栈 顶,进栈与出栈的操作(字操作)皆由SP来指明偏移地址, 堆栈指针SP就是这样的隐含使用。 用BP作地址指针时,默认的也是堆栈段,用BP作地址指 针可以对堆栈中任何字节存储单元或字单元进行操作,这与 SP所不同之处。但BP 指明的存储单元可允许段跨越。
D15
OF DF IF TF
D7
SF ZF AF PF
D0
CF
第13页 第13页
汇编语言程序设计
第2章 8086CPU中的寄存器结构与使用
状态标志 OF(Overflow Flag)溢出标志,在运算过程中,如操作数超 出了机器所能表示的范围,则称为溢出。此时OF位置“1”, 否则置“0”。
SF(Sign Flag)符号标志,记录运算结果的符号,结果为负 时置“1”,否则置“0”。 ZF(Zero Flag)零标志,运算结果为0时ZF位置“1”,否则 置“0”。 AF(Auxiliary carry Flag)辅助进位标志,记录运算时第3位 (半个字节)产生的进位值。例如,执行加法指令时第3位有进 位时置l,否则置0。 该标志与操作数长度无关。

ch02-8086微处理器内部结构

ch02-8086微处理器内部结构

20
0FFFF h
0FFFE h 0FFFD h
220=FFFFF h+1
00001 h 00000 h
FFFFF h FFFFE h FFFFD h FFFFC h
0FFFF h 00001 h 00000 h
段&内存
四、指令运行
HYPer
操作 : 将内存中2000h单元内容加2,结果在AL中. CS=1000h, DS=3000h.
02h
HLT
1111 0100
F4h
CPU运行
A0h 00h 20h MOV AL,[2000]
04h 02h
ADD AL,02
F4h
HLT
五、指令执行时间
HYPer
• 指令周期 ——执行一条指令所需的时间称为指令周期。 在8088/8086中,由于它的并行处理的特点,一条指令的执行时间为: 取操作数+执行指令+传送结果
状 溢出标志O(Overflow Flag)——在算术运算中,带符号数的运算结果超出了8位或16位

带符号数能表达的范围,则O=1,否则O=0。

8位(字节)运算 --1768 —— +32767 志
符号标志S(Sign Flag)—— 结果的最高位(D15或D7)为1,则S=1,否则 S=0。
代码段
数据段
DS
堆栈段
SS
附加段

段Rs
三 类
ES
二、 功能结构
HYPer
8088从功能上来说分成两大部分,总线接口单元 BIU(Bus Interface Unit)
和执行单元 EU(Execution Unit). • BIU:负责与存储器接口,即8088与存储器之间的信息传送,都是由BIU负责进 行的,

第二章_8086体系结构与8086CPU

第二章_8086体系结构与8086CPU

第二章8086体系结构与8086CPU1.8086CPU由哪两部分构成?它们的主要功能是什么?答:8086CPU由两部分组成:指令执行部件(EU)和总线接口部件(BIU)指令执行部件(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位。

第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#为高阻态。

第2章-8086微处理器及其体系结构

第2章-8086微处理器及其体系结构

执行部件EU功能: 从BIU的指令队列中取 出码规指令向储写执1(用状数部A执6指器定令所B器操行寄态据件位LI行U令译的所需或作U部存标暂的的发)部代码全得的I。,/件器志存控算O出件8部数码后结E,寄寄制接术个命中一U功据,执果存存电口逻1经令包个能,行或6器器路进辑位都指,含1。指执,和。对行单6的由令执一一令行位执存读元通译行E个个所 指的行U/
2.2.2 8086微处理器内部结构组成
总线接口部件BIU 内部设有四个16位段地 址寄存器:代码段寄存 器CS、数据段寄存器 DS、堆栈段寄存器SS 和附加段寄存器ES,一 总根负或个I缓器P线 据 责 I/O,和1冲接执完6一设器总位口行成个备,线指部部C62之控P令字0件件间U位制指节BE与的地电UI针指U存数的址路功寄令储据请加。能存队器传求法:器列, 送。
物理地址:就是存储器的实际地址,它是指CPU和存储器进行数据 交换时所使用的地址(20位)。
逻辑地址:是在程序中使用的地址,它由段地址和偏移地址两部分 组成(16位)。逻辑地址的表示形式为“段地址∶偏移地址”。
段基地址:把段的起始单元的物理地址除以16的结果为段地址,段 的起始单元的物理地址为16的整数倍,即:XXXX0H
DF—方向标志位,若该位置1,则串操作指令的地址修 改为自动减量方向,反之,为自动增量方向。
3.段寄存器
8086CPU共有4个16位的段寄存器,用来存放每一 个逻辑段的段起始地址。
(1)代码段寄存器CS (3)堆栈段寄存器SS
(2)数据段寄存器DS (4)附加段寄存器ES
这些段寄存器的内容与有效的地址偏移量一起,可确 定内存的物理地址。
只晶体管;
使用单一的+5V电源,40条引脚双列直插式封装; 时钟频率为5MHz~10MHz,基本指令执行时间为.3ms~0.6ms 16根数据线和20根地址线,可寻址的地址空间达1MB 8086可以和浮点运算器、I/O处理器或其他处理器组成多处

第2章 8086CPU结构

第2章 8086CPU结构

-4-
目录
上页
下页
结束
2. 总线接口部件
⑴ BIU的组成
总线接口单元BIU由1个20位地址加法器、4个16位段寄存器、1个 16位指令指针IP、指令队列缓冲器和总线控制逻辑电路等组成。8086的 指令队列由6个字节构成。 ① 地址加法器和段寄存器 地址加法器将16位的段寄存器内容左移4位,与16位偏移地址相加,形 成20位的物理地址。 ② 16位指令指针IP 指令指针IP用来存放下一条要执行指令在代码段中的偏移地址。 ③ 指令队列缓冲器 当EU正在执行指令中,且不需占用总线时,BIU会自动地进行预取指 令操作,将所取得的指令按先后次序存入1个6字节的指令队列缓冲 器,该队列缓冲器按“先进先出”的方式工作,并按顺序取到EU中执 行。 ④ 总线控制逻辑电路 将内部总线和外部总线相连,是CPU与内存单元或I/O端口进行数据 交换的必经之路,包括16条DB,20条AB和若干控制总线。
-22-
目录
上页
下页
结束
2.2 8086总线的工作周期
时钟周期(Clock Cycle):执行指令的一系列操作都 是在时钟脉冲CLK的统一控制下逐步进行的,一个 时钟脉冲时间称为一个时钟周期(Clock Cycle)。时 钟周期由计算机的主频决定,是CPU的定时基准, 例如,8086的主频为5MHz则1个时钟为200ns。 8086CPU与外部交换信息总是通过总线进行的。 CPU从存储器或外设存或取一个字节或字所需的时 间称为总线周期(Bus Cycle)。一个基本的总线周 期由四个时钟周期组成,分别称为T1、T2、T3和 T4时钟周期,或T状态(State)。 指令周期:一条指令的执行包括取指令、分析指令和 执行指令。一条指令从开始取指令到最后执行完毕 所需的时间称为一个指令周期 。

汇编第02章8086计算机组织

汇编第02章8086计算机组织

THANKS FCPU指令系统包括算术指 令、逻辑指令、控制指令和输
入输出指令等。
算术指令用于执行加、减、乘 、除等算术运算,逻辑指令用 于执行与、或、非等逻辑运算

控制指令用于控制程序流程, 如跳转、子程序调用和返回等 。
输入输出指令用于控制外部设 备,如输入输出数据和状态等 。
03 8086内存储器的组织
型而异。
输入输出数据的传输方式
程序控制方式
通过程序指令控制数据的输入输出操作,适用于慢速设备。
中断方式
当外部设备需要输入输出时,通过中断请求打断CPU,CPU响应后进 行输入输出操作。
DMA(Direct Memory Ac…
通过专门的DMA控制器实现数据的快速传输,不需要CPU的干预。
并行数据传输方式
01
8086CPU有多个寄存器,包括通 用寄存器、控制寄存器和段寄存 器等。
02
通用寄存器用于存储操作数和中 间结果,包括AX、BX、CX、DX
等。
控制寄存器用于控制CPU的操作 模式和状态,包括标志寄存器和 地址指针寄存器等。
03
段寄存器用于存储内存段地址, 包括CS、DS、SS等。
04
8086CPU的指令系统
序和数据。
内存储器的地址空间
地址空间
是指内存储器中所有存储单元的集合。
地址码
是指每个存储单元的编号,用于唯一标识一个存储单元。
地址空间的大小
由地址码的长度决定,地址码越长,则地址空间越大。
内存储器的访问方式
直接访问
根据地址码直接访问指定的存储单元,获取存储单元 中的数据。
间接访问
通过访问地址码间接访问指定的存储单元,获取存储 单元中的数据。

chap02_Intel 8086系统结构

chap02_Intel 8086系统结构
奇偶标志 PF
若操作结果低8位中“1”的个数为偶数,则P=1; 否则P=0。称之为奇校验,即1的个数始终为奇数。 (注:对字操作亦只考虑低8位) AL=1011,0001B 共有4个1 P=1(补奇)
Байду номын сангаас
2020/1/24
-26-
例子
例1: 0110 0100 + 0110 0100 1100 1000
BIU的功能是负责与存储器、I/O端口之间进 行信息传送。
EU部分负责指令的执行。
2020/1/24
-2-
8086的功能结构示意图
AH AL BH BL 通用寄存器 CH CL DH DL
SP BP SI DI
16位
地址加法器 20位
16位
CS
DS
SS
输入/输出
ES
控制电路
IP

内部寄存器


段寄存器
2020/1/24
-10-
1、通用寄存器
(1)数据寄存器 AX、BX、CX、DX 暂存计算过程中所用到的操作数、结果或其它信
息。(高级语言中的变量)
可以字(16位)的形式访问,也可以字节(8位)的形 式访问。 AX->高位字节AH,低位字节AL
2020/1/24
-11-
(a) 通用寄存器--数据寄存器
两个同号数相加,或异号数相减,产生溢出。
2020/1/24
-23-
溢出标志OF(续)
-120 + -105
-225
1 0 0 0, 1 0 0 0 88H + 1 0 0 1, 0 1 1 1 97H
1 0 0 0 1, 1 1 1 1 负溢出

第2章 8086CPU结构分解

第2章 8086CPU结构分解

主要功能:
① ②
预取指令序列,存放在指令队列中;数据传送。
将访问主存的逻辑地址转换成存储单元的物理地址。
7
cai
一、8086CPU的内部结构 • BIU与EU并行工作(流水线工作方式)
指令执行由取指令、分析指令(指令译码)、执行 指令 (读取操作数 执行指令 存放结果)组成
MPU 等待取指1 执行1 等待取指2 执行2 等待取指3 执行3
11
cai
二、8086CPU的寄存器结构 2. 控制寄存器 • 指令指针寄存器( IP) :是一个16位的寄存器,
存放EU要执行的下一条指令的偏移地址,用以控制
程序中指令的执行顺序,实现对代码段指令的跟踪 。 • 标志寄存器(FLAG) :是一个16位的寄存器,共9 个标志,其中6个状态标志,3个控制标志。 (1)状态标志:状态标志用来反映EU执行算术和逻辑 运算以后的结果特征。 (2)控制标志 :控制标志是用来控制CPU的工作方式 cai
6
一、8086CPU的内部结构 2. 总线接口单元(BIU):负责 CPU 与存储器﹑ I/O 端口之间的数据传送。 组成:20位地址加法器和段寄存器(代码段寄 存器CS、数据段寄存器DS、堆栈段寄存器SS器IP、6字节(8088为
4字节)指令队列缓冲器和总线控制逻辑电路。
通用寄存器
地址指针和 变址寄存器
控制寄存器 段寄存器
cai
8086CPU内部寄存器结构
9
二、8086CPU的寄存器结构
1. 通用寄存器 (1) 数据寄存器
数据寄存器包括4个16位的寄存器AX、BX、CX和DX,一 般用来存放16位数据,故称为数据寄存器。其中的每一个又 可根据需要将高8位和低8位分成独立的两个8位寄存器来使 用,即AH、BH、CH、DH和AL、BL、CL、DL两组,用于存放8 位数据,它们均可独立寻址、独立使用。

第2章 8086CPU结构

第2章 8086CPU结构
指示代码段中指令的偏移地址
它与代码段寄存器CS联用,确定下一条指令的物理地址 物理地址=(CS)×16D + (IP)

计算机通过 CS:IP 寄存器来控制指令序列的执行流程
不能对IP指针直接进行访问
00000H 代码段段基址 偏移量IP
CS + IP CPU 掌握
0000
… … …
00010010 01010010 … … 正在执行的指令 下一条指令


取指时当指令队列缓冲器中存满1条指令后,EU执行。
指令队列缓冲器中只要空出2个 (8088空出1个)指令字节 时,BIU自动执行取指操作,直到填满。

EU执行指令时,需要对M或I/O设备存取数据时,BIU将 在执行完现行取指的存储器周期后的下一个存储器周期, 对内存单元或I/O设备进行存取操作,交换的数据经BIU 由EU进行处理。 当EU执行完转移、调用和返回指令时,要清除指令队列 缓冲器,并要求BIU从新的地址重新执行。
10110101 + 10001111 进位 1 1 1 1 1 1 1 01000100 被加数8位 加数8位 和 8位 被加数 运 运 算 算 器 器
PSW 标志 进位 标志寄存器27
标志寄存器
进位标志CF(Carry Flag)
15 11 10 9 IF 8 7 6 4 AF 2 PF 0 CF OF DF TF SF ZF
24
FFFFFH

3 .专用寄存器—标志寄存器F

标志(Flag)用于反映指令执行结果的情况或控制指令的执行 方式 又称程序状态字寄存器(program status word,PSW)。
25
标志寄存器

汇编语言第2章 8086微处理器硬件结构

汇编语言第2章 8086微处理器硬件结构

OF DF IF TF SF ZF
AF
PF
CF
第2章 8086微处理器硬件结构
标志的分类
状态标志--用来记录程序运行结果的状态
信息,许多指令的执行都将相应地设置它
CF ZF SF PF OF AF
控制标志--可由程序根据需要用指令设置,
用于控制处理器执行指令的方式
DF IF TF
第2章 8086微处理器硬件结构
第2章 8086微处理器硬件结构
1. 8086的通用寄存器
8086的16位通用寄存器是:
AX SI BX DI CX BP DX SP
其中前4个数据寄存器都还可以分成高
8位和低8位两个独立的寄存器 8086的8位通用寄存器是:
AH AL BH BL CH CL DH DL
对其中某8位的操作,并不影响另外对
有符号数据用最高有效位表示数据的符号 所以,最高有效位就是符号标志的状态
3AH + 7CH=B6H,最高位D7=1:SF = 1 84H + 7CH=(1)00H,最高位D7=0:SF = 0
第2章 8086微处理器硬件结构
奇偶标志PF(Parity Flag)
当运算结果最低字节中“1”的个数为零或偶
第2章 8086微处理器硬件结构
2. 标志寄存器
标志(Flag)用于反映指令执行结果或控制
指令执行形式
8086 处理器的各种标志形成了一个 16 位的
标志寄存器 FLAGS (程序状态字 PSW 寄存
器)
程序设计需要利用标志的状态
15 12 11 10 9 8 7 6 5 4 3 2 1 0
第2章 8086微处理器硬件结构

第02章8086微处理器

第02章8086微处理器
在其它时钟周期,输出为状态信号S7。 但8086芯片, S7未定义。
第02章8086微处理器
下面介绍引脚中的控制信号。 4. MN/MX最小/最大模式控制信息
高电平— 8086处于最小模式。 低电平— 8086处于最大模式。
5. RD读信号 (输出,三态) 低电平有效。表示将对内存或I/O端口
读操作。
中断允许标志IF(Interrupt-enable Flag):
IF=1,允许CPU响应外部的可屏蔽中断请 求;IF=0则禁止响应。IF对外部非屏蔽中 断及内部中断不起作用。
第02章8086微处理器
方向标志DF(Direction Flag):
在串操作指令中,DF=0时,变址指针自 动增量,DF=1时,则自动减量。
当队列中有两个以上的指令字节空的时候, BIU会自动地执行总线操作,继续取指令。
在执行指令时,如要取操作数,则也由BIU从
内存或I/O接口指定区域取出,送给EU部件去
执行。
第02章8086微处理器
二、EU部件 由ALU、通用寄存器、标志寄存器和
控制电路组成,负责指令的执行。ALU、寄 存器和数据传输通路均是16bit的。
OF。
进位标志CF(Carry Flag):
当结果的最高位(字节-D7,字-D15)产生 进位(加法运算)或借位(减法运算)时,CF=1; 否则,CF=0,移位和循环指令也影响CF。
第02章8086微处理器
奇偶标志位PF(Parity Flag):
若结果中的低8位含有“1” 的个数为偶数, 则PF=1;否则,PF=0。
第02章8086微处理器
2. 地址/状态信号线A19/S6~A16/S3(输出、三态)
在总线周期的第一个时钟周期(T1)用于输出 地址信号的最高4bit并锁存。 其它时钟周期中用来输出状态信号S6~S3, 其中: S6——低电平,表示8086当前与总线相连。

第2章8086CPU

第2章8086CPU
第2章
8086微处理器及其系统
2.1 8086微处理器简介 2.2 8086系统的存储器组织及I/O组织
2.3 8086系统的工作模式
2.4 8086的操作时序
1
8086 CPU是Intel系列的16位微处理器, 它有16位数据总线和20位地址总线。 可寻址的地址空间是:220=1MB
2
2.1
8086微处理器简介
----- 用于控制CPU是否允许响应可屏蔽中断请求。
IF=1,表示允许CPU响应可屏蔽中断请求。 IF=0, 表示禁止CPU响应可屏蔽中断请求。 IF可通过STI指令置 位(置1),也可通过CLI指令复位(清零)。
14
TF(Trap Flag) 单步标志位 ----- 用于单步操作。 TF=1,控制CPU进入单步工作方式。在这种工作方 式下,CPU每执行完一条指令就会自动产生一次内部中断, 这在程序调试过程中很有用。

15
例1:若AL = 3BH,AH = 7DH,指出AL和AH中的内容相 加后,CF,AF,PF,SF,OF和ZF的状态。
CF=0(无进位) AF = 1(有辅助进位) PF=1(运算结果有4个1) SF = 1(运算结果符号位为1) OF =1 (有溢出) ZF = 0 (运算结果不为0)
16
31
(4)指令队列缓冲器——6字节
BIU从存储器中读出指令送入6字节的指令队列。 一旦指令队列中空出2个字节,BIU将自动进行读指令 的操作以填满指令队列。遇到转移类指令,BIU将指令 队列中剩余的指令作废,重新从存储器新的地址单元 中取指令并送入指令队列。一般情况下应保证指令队 列中填满指令,使得EU可以不断地得到等待执行的指 令。

OF(Overflow Flag) 溢出标志位

第二章 8086系统结构与8086CPU

第二章 8086系统结构与8086CPU

微机原理与接口技术8088CPU第二章8086系统结构与8086CPU8086CPU1主要内容8086CPU的结构8086系统的结构8086系统的配置8086CPU的内部时序2学习重点8086CPU的组成及其编程结构、管脚的意义 8086计算机系统的结构及其工作原理(存储器、接口、工作模式)8086CPU的内部时序(最大、最小模式下的读写时序)348086/8088微处理器——微处理器的结构8086/8088微处理器•8086/8088微处理器是Intel 公司推出的第三代CPU 芯片,它们的内部结构基本相同,都采用16位结构进行操作及存储器寻址,但外部性能有所差异,两种处理器都封装在相同的40脚双列直插组件中。

2.1 8086CPU结构微处理器CPU基本功能算术运算,逻辑运算指令译码、寄存、执行操作与存储器、I/O接口通信数据暂存提供定时控制信号响应中断请求5CPU性能表征:内部寄存器位数及内部数据总线位数4位机、8位、16位、32位、64位表示CPU同时可操作的位数。

67Intel-80x86系列微处理器概述32K 512K64G366464233-350750321997Pentium II8K 8K 64G 366464150-200550321995Pentium Pro(P6)8K 8K 4G 32646460-166310-330321993Pentium (586)8K 4G 32323225-100120-16032198980486Yes 4G 32323212.5-3327.532198680386No 16M 2416166-2013.416198280286No 1M 208164.772.91619798088No 1M 2016164.772.91619788086高速缓存寻址空间地址总线外部总线数据总线主频(MHz)晶体管数(万)字长发布年份型号2.1 8086CPU结构8086/8088微处理器的组成总线接口部件(BIU)组成:①段寄存器(DS、CS、ES、SS);②16位指令指针寄存器IP(指向下一条要取出的指令代码);③20位地址加法器(用来产生20位地址);④6字节(8088为4字节)指令队列缓冲器;⑤总线控制逻辑。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
方向。
完成运算:67A0H+0891H,填写下表中的结果和各 状态标志位的状态: OF DF IF TF SF ZF AF PF CF
练习:5439H+456AH
2.2 8086/88的引脚与功能
8086/808886 GND AD14 AD13 AD12 AD11 AD10 AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 NMI INTR CLK GND 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 VCC AD15 AD16/S3 AD17 /S4 AD18 /S5 AD19 /S6 BHE/S7 MN/MX RD HOLD(RQ/GT0 ) HLDA(RQ/GT1 ) WR(LOCK) M/IO(S2 ) DT/R(S 1 ) DEN(S0 ) ALE(QS0 ) INTA(QS1 ) TEST READY RESET GND AD14 AD13 AD12 AD11 AD10 AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 NMI INTR CLK GND 8088
20位地址
地址加法器
16位
CS DS SS ES IP 内部通讯
16 位 寄 存 器 组
内 存
总 线 接 口 控 制 逻 辑
16位内部总线
外部总线 (三总线)
运算寄存器
ALU
EU 控 制 器
4或6字节指令队列
1 2 3 4 5 6
组成 功能
标志寄存器
工作
EU BIU
指令的一般执行过程: 取指令 数 指令译码 执行指令 读取操作 存放结果
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21
VCC AD15 AD16/S3 AD17 /S4 AD18 /S5 AD19 /S6 SS0 (HIGH) MN/MX RD HOLD(RQ/GT0 ) HLDA(RQ/GT1 ) WR(LOCK) M/IO(S2 ) DT/R(S1 ) DEN(S0 ) ALE(QS0 ) INTA(QS1 ) TEST READY RESET
-----反映在运行结果的最高位有无进位或借位。
2. PF(Parity Flag)奇偶标志
-----反映运算结果中“1”的个数的奇偶性,主要用于判断数据 传送过程中是否出错。
3. AF(Auxiliary Flag)辅助进位标志
-----加减运算时,若D3向D4产生了进位或借位则AF=1。否则 AF=0。在BCD码运算时,该标识用于十进制调整。
4.ZF(Zero Flag)零进位
-----反映计算结果是否为0。若结果为零则ZF=1,否则ZF=0。
5.SF(Sign Flag)符号标志
-----反映计算结果最高位及符号位的状态。如果运算结果的最高位 为1则SF=1(对带符号数即为负数),否则SF=0(对带符号数 即为正数)。
6.OF(Overflow Flag)溢出标志

取指
EU动作

执指
并行工作方式:
• 8088CPU采用并行工作方式
EU
执行1 执行2 执行3
取指令3 取操作数 取指令4
BIU 取指令2 取操作数 存结果 BUS
忙碌 忙碌 忙碌
忙碌
忙碌
忙碌
通用寄存器组(1.数据寄存器) AX:累加器。可分成两个八位寄存器AH、 AL使用。 BX:基址寄存器。可分成两个八位寄存 器BH、BL使用。 CX:为计数器。可分成两个八位寄存器 CH、CL使用。 DX:数据寄存器 。可分成两个八位寄存 器DH、DL使用。
6
ZF
5
4
AF
3
2
PF
1
0
CF
条件标志 -----共6位,用于寄存程序运行的状态信息,这些标志往往用 作后续指令判断的依据。 控制标志 -----共3位,用于控制机器或程序的某些运行过程。
15 14 13 12 11
OF
10
DF
9
IF
8
TF
7
SF
6
ZF
5
4
AF
3
2
PF
1
CF
状态标志 1.CF(Carry Flag)进位标志
2.1 8086/8088微处理器的内部结构 2.2.1 8086/8088 CPU的内部结构
1. 8086CPU的组成
•16位通用寄存器组 (AX、BX、CX、DX、SP、BP、SI、DI) EU负责指令的执行,从BIU的指 •算术逻辑单元——ALU •EU控制器 令队列中取指令和数据,不直接 •控制寄存器 (指令指针 标志寄存器F) 与外部总线相连
整字乘法,整字除法,整字I/O。
字节乘法,字节除法,节字I/O。 十进制算术运算。 字节乘法,字节除法。 翻译。 字符串操作,循环。 变量的移位和循环移位。 整字乘法,整字除法,间接I/O。 堆栈操作。 字符串操作。 字符串操作。 翻译,
3 段寄存器 CS:代码段寄存器 DS:数据段寄存器 SS:堆栈段寄存器 ES:附加段寄存器
串行和并行方式的指令流水线:
• 串行工作方式: 控制器和运算器交替工作,按顺序完 成上述指令执行过程; • 并行工作方式: 运算器和控制器可同时工作。
串行工作方式:
• 8088以前的CPU采用串行工作方式:
CPU
BUS
取指令1
忙碌
执行1
存结果1 取指令2 取操作数 执行2 忙碌 忙碌 忙碌
BIU动作
-----反映运算结果是否超出了带符号数的表数范围。
例:十六进制数0CCCCH与十六进制数5115H相加, 请写出运算后六个标志状态位的值。 解: 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 (0CCCCH) + 0101000100010101 (5115H) 10 0 0 1 1 1 0 1 1 1 1 0 0 0 0 1 从运算结果看出: 最高位D15位往前有进位,所以CF=1; 运算结果不全为0,所以ZF=0; 由于D15=0,所以SF=0; 运算结果的低8位中有4个“1”,所以PF=1; D3有向D4进位,因此AF=1; 两个异号数相加,不可能发生溢出,所以OF=0。
3 8086与8088 CPU的区别
(1)86 CPU的数据外总线宽度为16位,因 此设有BHE;而88 CPU的数据外总线宽度 为8位,把BHE引脚改为SSO; (2)86CPU中的指令预取队列为6个字节, 而88CPU为4个字节; (3)86CPU选通存储器或I/O接口的信号是 M/IO ,低电平时选中I/O设备,高电平时选 中存储器;而88CPU是IO/M信号 ,低电平 时选中存储器,高电平时选中I/O接口。
注意:DS、SS和ES寄存器的内容可由程序 设置,而CS寄存器的内容不能用程序设置
●控制寄存器 1.指令指针寄存器 IP:指令指针寄存器 2.标志寄存器(Flag Register)共有16位,9个标 志其中,7位未用。标志寄存器内容如图:
15 14 13 12 11
OF
10
DF
9
IF
8
TF
7
SF
(2) 控制标志位
TF:陷阱标志位(Trap Flag)。 当TF=1时,将使CPU进入单步执行工作方式, 主要用于程序调试,单步操作; IF:中断标志位(Interrupt Flag)。 控制微处理器响应或禁止外部中断。 DF:方向标志位(Direction Flag)。
控制字节串或字串重复操作指令地址调整的步进
•段寄存器组 (CS、DS、SS、ES) BIU根据EU的请求,完成CPU与存 •指令指针——IP 贮器或I/O设备之间的数据传送 •地址加法器 •指令队列 •总线接口控制逻辑
EU
CPU
BIU
2 8086/8088CPU的功能结构
16 位 通 用 寄 存 器 组 AH AL BH BL CH CL DH DL SP BP SI DI
2. 指针与变址寄存器组
SP(Stack Pointer) : 堆 栈 指 针 寄 存 器
BP(Base Pointer):基地址指针寄存器
SI(Source Index):源变址寄存器
DI(Destination Index):目的变址寄存器
寄存器的隐含用法 寄存器 执 行 操 作
AX AL
AH BX CX CL DX SP SI DI
相关文档
最新文档