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

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

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

2010年9月
西南交通大学电气工程学院
26
课后练习
2-5 已知CS=1230H,求代码段中物理地址为13AC0H 的单元的逻辑地址。 2-6已知DS=21FAH,求数据段中偏移地址为0120H的单 元的物理地址。 2-7已知SS=31ABH,SP=0124H,则将AX和BX中的内容推 入堆栈后,SP= 。 2-8已知SS=31ACH,SP=0120H,则从堆栈中弹出数据到 SI后,栈顶单元的物理地址为 。 2-9将数据2EH、AB1CH和逻辑地址1234H:0100H从数据 段中偏移地址为0100H的单元开始依次存放,画出 内存分配图。
2010年9月 西南交通大学电气工程学院 12
第3节 存储器组织 节
物理地址和逻辑地址 ——如何确定段的位置及需要访问的单元? 物理地址:CPU访问存储器时通过20位地址总线输出 的存储器单元的实际地址。 逻辑地址:在程序中给出的存储器单元的地址。 段 基 值:段首单元物理地址的高16位。 偏移地址:指定单元与段首单元物理地址之差。 段基值: 逻辑地址 = 段基值:偏移地址
2010年9月 西南交通大学电气工程学院 16
第3节 存储器组织 节
32位逻辑地址的存放格式: 先偏移地址,后段基值; 偏移地址和段基值再分别按16位数据格式存放。
12H 2000H 34H 2001H
×× 2002H ×× 2003H
12H 2000H
×× 2001H ×× 2002H ×× 2003H
2010年9月
西南交通大学电气工程学院
15
第3节 存储器组织 节
存储器中数据的组织 存储器中各种数据的存放格式。 程序和指令中的数据类型; 字节数据——8位,Byte; 字数据——16位,Word; 双字数据——32位,Double word。 存储单元都为8位,每个单元只能存放8位数据。 多字节数据的存放格式: 从低位到高位,从小地址到大地址。

第二章8086微处理器及其系统结构.

第二章8086微处理器及其系统结构.

中断允许标志IF(Interrupt Flag) 指示是否允许系 统响应外部的可屏蔽中断请求 , 该位为 “ 1”, 表示 允许(开中断),否则表示禁止(关中断)
陷阱标志TF(Trace Flag) 当该位为“1”时,CPU 每执行完一条指令便自动产生一个内部中断,并转 去执行一个中断服务程序,可以借助该中断服务程 序来检查每条指令的执行情况,称为“单步工作方 式”,常用于程序的调试。
返回
总线接口部件BIU
▲ 功 能 : 实 现 8086CPU 与 存 储 器 和 外 部 设 备 之 间的数据传送。 ▲任务:
(1)从内存取指令指令队列缓冲器;
(2) 取数据到运行单元进行运算并将运算结果送 到目的单元(内存或外设端口); (3)重叠实现取指令与执行指令!
返回
指令队列缓冲器
▲结构: 指令队列缓冲器为6字节(8088只有4字节) 容量的FIFO。 设立指令队列缓冲器的目的是为了实现重叠解释指 令。 ▲工作原理:
DEBUG中标志的表示
NV等价于 OF=0, UP等价于 DF=0, DI 等价于 IF =0, PL等价于 SF=0, OV等价于OF=1; DN等价于DF=1; EI 等价于 IF =1; NG等价于SF=1;

NZ等价于 ZF=0, NA等价于 AF=0, PO等价于 PF=0, NC等价于 CF=0,
①缓冲器中只要有一条指令,EU就开始执行; ②缓冲器中只要有两个字节为空 ,BIU便自动执行取指 操作; ③当 EU 执行完转移、调用和返回等切换程序流程的 指令时 ,缓冲器中原来的内容将被清除 ,BIU从内存 中新的位置开始重新预取指令填入队列中。
返回
地址发生器
▲组成: 地址加法器、指令指针IP和段寄存器。

微机原理第2章课后答案

微机原理第2章课后答案

第2章8086微处理器及其系统教材习题解答1. 8086 CPU 由哪两部分构成,它们的主要功能是什么?在执行指令期间,EU 能直接访问存储器吗,为什么?【解】8086CPU由执行部件(EU)和总线接口部件(BIU)两部分组成。

执行部件由内部寄存器组、算术逻辑运算单元(ALU)与标志寄存器(FR)及内部控制逻辑等三部分组成。

寄存器用于存储操作数和中间结果;算术逻辑单元完成16位或8位算术逻辑运算,运算结果送上ALU内部数据总线,同时在标志寄存器中建立相应的标志;内部控制逻辑电路的主要功能是从指令队列缓冲器中取出指令,对指令进行译码,并产生各种控制信号,控制各部件的协同工作以完成指令的执行过程。

总线接口部件(BIU)负责CPU与存储器、I/O设备之间传送数据、地址、状态及控制信息。

每当EU部件要执行一条指令时,它就从指令队列头部取出指令,后续指令自动向前推进。

EU要花几个时钟周期执行指令,指令执行中若需要访问内存或I/O设备,EU就向BIU 申请总线周期,若BIU总线空闲,则立即响应,若BIU正在取一条指令,则待取指令操作完成后再响应EU的总线请求。

2. 8086CPU与传统的计算机相比在执行指令方面有什么不同?这样的设计思想有什么优点?【解】8086 CPU与传统的计算机相比增加了指令队列缓冲器,从而实现了执行部件(EU)与总线接口(BIU)部件的并行工作,因而提高了8086系统的效率。

3. 8086 CPU 中有哪些寄存器,各有什么用途?【解】8086共有8个16位的内部寄存器,分为两组:①通用数据寄存器。

四个通用数据寄存器AX、BX、CX、DX均可用作16位寄存器也可用作8位寄存器。

用作8位寄存器时分别记为AH、AL、BH、BL、CH、CL、DH、DL。

AX(AH、AL)累加器。

有些指令约定以AX(或AL)为源或目的寄存器。

实际上大多数情况下,8086的所有通用寄存器均可充当累加器。

BX(BH、BL)基址寄存器。

【教学课件】第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 最小模式和最大模式的概念

第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章 8086微处理器及其系统PPT课件

第2章 8086微处理器及其系统PPT课件
1.条件标志 -----共6位,用于寄存程序运行的状态信息,这些标 志往往用作后续指令判断的依据。 2.控制标志 -----共3位,用于控制机器或程序的某些运行过程。
5
15 ~12 11 10 9 8 7 6 5 4 3 2 1 0 OF DF IF TF SF ZF ― AF ― PF ― CF
例:对于物理地址01023H单元
可以表为0100H:0023H PA=0100H×10H+0023H =01023H
也可表为0102H:0003H PA=0102H×10H+0003H =01023H
CS DS SS
段 寄
ES 存
IP 器
指令指针寄存器
总线 控制
逻辑 外部总线
123456
指令队列 3
内部寄存器
● 8086共有8个16位的内部寄存器,分为两组:
AX
AH AL
BX
BH
BL
CX DX
CH DH
CL DL
●通用寄存器
SP BP●指针和变址寄来自器SIDI●四S个P(通St用ac数k P据o寄int存er器RAegXis、teBr)X堆、栈C指X针、寄DX存均器可用 ●作B1P6位( B寄as存ic器Po也in可ter用R作eg8is为ter寄)基存址器指。针用寄作存8 位器寄 ●存S器I(分So别ur记ce作In:deAxHR、egAisLte、r)源BH变、址B寄L、存C器H、CL、
第 2 章 80X86微处理器
2.1 8086微处理器 2.2 8086系统的存储器组织及I/O组织 2.3 8086系统配置 2.4 8086的操作时序
1
2.1 8086微处理器
1978年,Intel公司推出16位微处理器8086。

微机原理课件第二章 8086系统结构

微机原理课件第二章 8086系统结构

但指令周期不一定都大于总线周期,如MOV AX,BX
操作都在CPU内部的寄存器,只要内部总线即可完成,不 需要通过系统总线访问存储器和I/O接口。
2021/8/17
17
• 8086CPU的典型总线时序,充分体现了总 线是严格地按分时复用的原则进行工作的。 即:在一个总线周期内,首先利用总线传 送地址信息,然后再利用同一总线传送数 据信息。这样减少了CPU芯片的引脚和外 部总线的数目。
• 执行部件(EU)
• 功能:负责译码和执行指令。
2021/8/17
5
• 联系BIU和EU的纽带为流水指令队列
• 队列是一种数据结构,工作方式为先进先出。写入的指令 只能存放在队列尾,读出的指令是队列头存放的指令。
2021/8/17
6
•BIU和EU的动作协调原则 BIU和EU按以下流水线技术原则协调工作,共同完成所 要求的任务: ①每当8086的指令队列中有空字节,BIU就会自动把下 一条指令取到指令队列中。 ②每当EU准备执行一条指令时,它会从BIU部件的指令 队列前部取出指令的代码,然后译码、执行指令。在执 行指令的过程中,如果必须访问存储器或者I/O端口, 那么EU就会请求BIU,完成访问内存或者I/O端口的操 作; ③当指令队列已满,且EU又没有总线访问请求时,BIU 便进入空闲状态。(BIU等待,总线空操作) ④开机或重启时,指令队列被清空;或在执行转移指令、 调用指令和返回指令时,由于待执行指令的顺序发生了 变化,则指令队列中已经装入的字节被自动消除,BIU会 接着往指令队列装入转向的另一程序段中的指令代码。 (EU等待)
•CF(Carry Flag)—进位标志位,做加法时最高位出现进位或 做减法时最高位出现借位,该位置1,反之为0。

第二章 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微处理器

第二章-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章 8086/8088微处理器及其体系结构2PPT课件

第2章 8086/8088微处理器及其体系结构2PPT课件
14
2.4 8088的工作模式和引脚功能
2.4.1 8086/8088的两种工作模式
• 由上图可知,最大模式配置和最小模 式配置有一个主要的差别: 最大模式下多了8288总线控制器。 详见书中P27至P33。
2.4.2 8088的引脚和功能(P25图2-9)
15
1. 总线控制器8288
8288的框图如图所示:
20
1. 总线控制器8288
总线控制器8288的输出控制信号有ALE,DEN, DT/R和MCE/PDEN。
ALE 为地址锁存允许信号。 DEN 为数据允许信号。 DT/R为数据发送/接收信号。 MCE/PDEN 具有两种功能:当8288为系统总线方 式,用MCE作为级联允许信号;当8288为I/O总线方式, 用PDEN 作为允许信号。
处理器
单处理器 多处理器
控制信号
全部由CPU 部分由外部
产生
电路产生
MN/MX 为1
为0
9
2.4 8088的工作模式和引脚功能
2.4.1 8086/8088的两种工作模式
在设计8086/8088 CPU时,已经考虑使其在 各种不同用途中工作。根据所构成的计算机系 统的复杂程度,规定了两种工作模式,即:最 小模式和最大模式,也称为:最小组态和最大 组态。 最小模式(最小组态):构成的系统较小,系 统中只有一片8086/ 8088,其存储容量不大,所 要连的I/O端口也不多,总线控制逻辑电路被减 到最小。
2
2.1 8086/8088CPU的编程结构
2.1.1 8086/8088CPU的内部结构
EU功能:
•执行指 令(数 据运算、 传送等)
BIU功能:
•传送操作数、 指令

第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采用串行工作方式

微机原理课件第二章8086系统结构

微机原理课件第二章8086系统结构
程序转移指令
介绍8086处理器的程序转移指令,包括无条 件跳转和条件跳转等操作。
8086中断处理
硬件中断
解释硬件中断的工作原理和处 理过程,以及8086处理器与外 部设备之间的中断信号传递。
软件中断
了解软件中断的使用方法和处 理过程,以及如何在程序中触 发软件中断。
异常中断
探索异常中断的发生原因和处 理机制,以及在运行过程中如 何处理异常中断。
3
总线周期和总线控制信号
介绍8086系统的总线周期和各种总线控制信号的含义和作用。
8086寄存器结构
1 通用寄存器
2 段寄存器
了解8086处理器的通用寄存器,包括数据 寄存器、指令寄存器和堆栈指针寄存器。
探索8086处理器的段寄存器,包括代码段 寄存器、数据段寄存器和堆栈段寄存器。
3 指令指针寄存器
4 标志寄存器
了解8086处理器的指令处理器的标志寄存器,包括各个 标志位的含义和影响。
8086系统工作模式
实模式
保护模式
虚拟8086模式
详细介绍8086处理器的实模式, 了解8086处理器的保护模式, 包括内存寻址方式和运行特点。 包括内存管理机制和特权级别。
8086系统结构
本课件介绍了8086微处理器的系统结构,包括处理器的基本特点、逻辑结构、 功能模块、与外部设备的接口与控制,以及与存储器的接口与控制。
8086系统总线结构
1
物理地址与逻辑地址转换
解释如何将物理地址转换为逻辑地址,并且了解逻辑地址和物理地址之间的关系。
2
地址线和数据线
探索8086系统的地址线和数据线的数量、作用和连接方式。
2 寄存器观察
探索如何使用单步执行技术来逐条执行和 调试程序。

第2章8086微处理器硬件结构.ppt

第2章8086微处理器硬件结构.ppt
❖ 执行单元EU 8个通用寄存器 ❖ 1个指令指针寄存器 ❖ 1个标志寄存器 ❖ 4个段寄存器
第2章 80X86计算机组织
1. 8086的通用寄存器
➢ 8086的16位通用寄存器是:
AX BX CX DX
SI
DI BP SP
➢ 其中前4个数据寄存器都还可以分成高 8位和低8位两个独立的寄存器
➢ 8086的8位通用寄存器是:
En d表ia达n时”。, 用 它 的 低 地 址 表 示 多 字 节 数 据 占 据
的地址空间。
图1.7中2号“字”单元的内容为: [0002H] = 1234H
2号“双字”单元的内容为: [0002H] = 78561234H
第2章 80X86计算机组织
数据的地址对齐
视具体情况来确定
➢ 同一个存储器地址可以是字节单元地址、字单元地址、 双字单元地址等等 ➢ 字单元安排在偶地址(xxx0B)、双字单元安排在模4 地址(xx00B)等,被称为“地址对齐(Align)” ➢ 对于不对齐地址的数据,处理器访问时,需要额外的 访问存储器时间 ➢ 应该将数据的地址对齐,以取得较高的存取速度
AH BH CH DH
AL BL CL DL
➢ 对其中某8位的操作,并不影响另外对 应8位的数据
第2章 80X86计算机组织
数据寄存器
➢ 数据寄存器用来存放计算的结果和操作数, 也可以存放地址
➢ 每个寄存器又有它们各自的专用目的
AX--累加器,使用频度最高,用于算术、逻 辑运算以及与外设传送信息等;
3AH + 7CH=B6H,没有进位:CF = 0 AAH + 7CH=(1)26H,有进位:CF = 1
第2章 80X86计算机组织

微机原理 第2章_8086系统结构

微机原理 第2章_8086系统结构

8086 CPU的引脚及其功能

8086 CPU的两种工作模式


最小模式:用于单机系统,系统所需要的控 制信号由8086直接提供,MN/MX=1,CPU 工作于最小模式 最大模式:用于多处理机系统,系统所需的 控制信号由总线控制器8288提供, MN/MX=0,CPU工作于最大模式

8086 CPU在最小模式下的引脚定义 8088与8086的区别
通 用 寄 存 器
AX BX CX DX SP BP SI DI
8086 CPU结构框图
20位地址总线
Σ
数据 总线 16位
ALU数据总线 (16位) 暂存器
队列 总线 (8位)
CS DS SS ES IP 内部寄存器 指令队列
总线 控制 电路 8086 总线
ALU
标志寄存器
EU 控制器
1 3 4 5 6
PSW
存放状态标志、控制标志和系统标 志
PSW格式:
15 11 10
OF DF
9 IF
8
7
6
4 AF
2 PF
0 CF
TF SF ZF
状态标志




状态标志用来记录程序中运行结果的状态信息,它们根据有关指 令的运行结果由CPU自动设置,这些状态信息往往作为后续条件 转移指令的转移控制条件,包括6位: OF:溢出标志,在运算过程中,如操作数超出了机器数的表示范 围,称为溢出,OF=1,否则OF=0 SF:符号标志,记录结果的符号,结果为负SF=1,否则SF=0 ZF:零标志,运算结果为0,ZF=1,否则ZF=0 CF:进位标志,进行加法运算时从最高位产生进位,或减法运算 从最高位产生借位CF=1,否则CF=0 AF:辅助进位标志:本次运算结果,低4位向高4位产生进位或借 位,AF=1,否则AF=0 PF:奇偶标志,用来为机器中传送信息时可能产生的代码出错情 况提供检验条件,当结果操作数中低8位中1的个数为偶数时PF=1, 否则PF=0
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

(增址); 设置DF=1,串操作后存储器地址自动减量 (减址)。
中断允许标志IF(Interrupt-enable Flag)
用于控制外部可屏蔽中断是否可以被处理器响应:
设置IF=1,则允许中断; 设置IF=0,则禁止中断。
陷阱标志TF(Trap Flag)
用于控制处理器是否进入单步执行方式:
③当指令队列已满,且EU又没有总线访问 请求时,BIU便进入空闲状态。
④在执行转移指令、调用指令和返回指 令时,由于待执行指令的顺序发生了变化, 则指令队列中已经装入的字节被自动消除, BIU会接着往指令队列装入转向的另一程序 段中的指令代码。 BIU与EU两者的工作是不同步的,正是 这种既相互独立又相互配合的关系,使得 8086可以在执行指令的同时,进行取指令代 码的操作,也就是说BIU与EU是一种并行工 作方式,改变了以往计算机取指令→译码→ 执行指令的串行工作方式,实现流水线作业 ,大大提高了工作效率。

20位
16位
暂存寄存器
CS DS SS制 电路
8088的指令 队列是4B 执行部分 控制电路
外 部 总 线
12 3 4 5 6
ALU
标志寄存器
8位 指令队列缓冲器
执行部件 (EU)
总线接口部件 (BIU)
从功能上来看,8086CPU可分为 两部分,即总线接口部件BIU(Bus Interface Unit)和执行部件EU (Execution Unit)。在执行指令的 过程中,两个部件形成了两级流水线: 执行部件执行指令的同时,总线接口 部件完成从主存中预取后继续指令的 工作,使指令的读取与执行可以部分 重叠。
总线接口部件(BIU)和执行部件(EU)按 以下流水线技术原则协调工作,共同完成 所要求的信息处理任务. ①每当8086的指令队列中有两个空字 节,BIU就会自动把指令取到指令队列中 。其取指的顺序是按指令在程序中出现的 前后顺序。
②每当EU准备执行一条指令时,它会从 BIU部件的指令队列前部取出指令的代码,然 后用几个时钟周期去执行指令。在执行指令 的过程中,如果必须访问存储器或者I/O端 口,那么EU就会请求BIU,进入总线周期,完 成访问内存或者I/O端口的操作;如果此时 BIU正好处于空闲状态,会立即响应EU的总线 请求。如BIU正将某个指令字节取到指令队列 中,则BIU将首先完成这个取指令的总线周期 ,然后再去响应EU发出的访问总线的请求。
8086的寄存器组
对汇编语言程序员来说,8086内部结构就是
可编程的寄存器组 执行单元EU 8个通用寄存器 1个标志寄存器 1个指令指针寄存器 4个段寄存器
第二章 8086微处 理器及其系统结构
8086的功能结构 8086的寄存器组 8086微处理器引脚信号 8086微处理器典型时序分析
8086的寄存器组
执行单元EU 8个通用寄存器(AX/BX/CX/DX
SI/DI BP/SP)
1个标志寄存器(FR) 1个指令指针寄存器(IP)
4个段寄存器(CS/DS/ES/SS)
零标志ZF(Zero Flag)

若运算结果为0,则ZF = 1; 否则ZF = 0 注意:ZF为1表示的结果是0
3AH + 7CH=0B6H,结果不是零:ZF = 0 84H + 7CH=00 ,结果为零 :ZF =1
符号标志SF(Sign Flag)
运算结果最高位为1,则SF
= 1;否则SF = 0
OF DF IF TF SF ZF
AF
PF
CF
进位标志CF(Carry Flag)
当运算结果的最高有效位有进位(加法)或
借位(减法)时,进位标志置1,即CF = 1; 否则CF = 0。 0AAH + 7CH=(1)26H,有进位:CF = 1 3AH + 7CH= 0B6H , CF = 0
变址寄存器
变址寄存器常用于存储器寻址时提供地址 SI是源变址寄存器
DI是目的变址寄存器
在串操作类指令中,SI和DI具有特别的功

指针寄存器
指针寄存器用于寻址内存堆栈内的数据 SP为堆栈指针寄存器,指示栈顶的偏移地 址。SP不能再用于其他目的,具有专用性 BP为基址指针寄存器,表示数据在堆栈段 中的基地址 SP/BP寄存器与SS段寄存器联合使用以确 定堆栈段中的存储单元地址
总线接口部件BIU
●功能:负责完成取指令送指令队列,配合执行 部件的动作,从内存单元或I/O端口取操作数,或 者将操作结果送内存单元或者I/O端口。BIU由以 下部分组成。 ① 地址加法器和段寄存器 1个20位地址加法器、4个16位段寄存器 ,地 址加法器将16位的段寄存器内容左移4位,与16位 偏移地址相加,形成20位的物理地址。 ② 16位指令指针IP 指令指针IP用来存放下一条要执行指令在代码 段中的偏移地址。

堆栈(Stack)
堆栈是主存中一个特殊的区域
它采用先进后出FILO(First
In Last Out) 或后进先出LIFO(Last In First Out)的 原则进行存取操作,而不是随机存取操作方 式。 堆栈通常由处理器自动维持。在8086中,由 堆栈段寄存器SS和堆栈指针寄存器SP共同指 示
第二章 8086微处 理器及其系统结构
8086的内部结构 8086的寄存器组 8086微处理器引脚信号 8086微处理器典型时序分析
8086 CPU是Intel公司一种16位微处理器 ,是第三代微处理器的代表,是80X86的基本 型。它有16根数据线和20根地址线,所以可 寻址的地址空间是220=1MB,内部总线和ALU 全部为16位,可以进行8位和16位操作。以下 是8086CPU实物图。
8086 CPU内部寄存器如图所示。
数据寄存器
数据寄存器用来存放计算的结果和操作数 每个寄存器又有它们各自的专用目的:
AX——16位累加器,使用频度最高,用
于算术、逻辑运算以及与外设传送信息 等;AL为8位累加器。 BX——基址寄存器,常用来做基址指针, 指向一批连续存放操作数的基地址。 CX——计数器,作为循环和串操作等指 令中的隐含计数器。 DX——数据寄存器,用来存放外设端口 的16位地址,或双字长数据的高16位。
设置TF=0,处理器正常工作;
设置TF=1,处理器每执行一条指令就中断
一次,中断编号为 1 (称单步中断) TF 也被称为单步标志。 单步执行和单步调试 利用单步中断可对程序进行逐条指令的调试。 这种逐条指令调试程序的方法就是单步调试。
标志的分类
指令的执行与标志有很大关系。 标志分成两类: 状态标志——用来记录程序运行结果的状态 信息,许多指令的执行都将自动地改变它。 CF OF AF SF ZF PF 控制标志——可由用户根据需要用指令进行 设置,用于控制处理器的具体工作方式。 DF IF TF
3AH + 7CH=0B6H,最高位D7=1:SF = 1 84H + 7CH=(1)00H,最高位D7=0:SF = 0
奇偶标志PF(Parity Flag)
当运算结果最低字节中“1”的个数为零或偶
数时,PF=1;否则PF=0。
例如:
3AH + 7CH=B6H=10110110B,
结果中有5个1,是奇数,则 PF=0
注意:PF标志仅反映最低8位中“1”的个数 是偶或奇,即使是进行16位字操作。
溢出标志OF(Overflow Flag)
若算术运算的结果有溢出,则OF=1;否则
OF=0。 问题: 什么是溢出? 溢出和进位有什么区别? 程序员如何运用?
什么是溢出
处理器内部以补码表示有符号数 8位表达的整数范围是:+127~-128 16位表达的范围是:+32767~-32768 如果运算结果超出这个范围,就产生了溢出 有溢出,说明有符号数的运算结果不正确

例:
96= 01100000 + 65= 01000001 161= 10100001 CF=0 无进位 OF=1 有溢出
7.有符号数的扩展运算CBW [+96]补= 00000000 01100000 +[+65]补= 00000000 01000001 [+161]补= 00000000 10100001 OF=0(无溢出,结果对)
8086 CPU是Intel公司一种16位微处理器 ,是第三代微处理器的代表,是80X86的基本 型。它有16根数据线和20根地址线,所以可 寻址的地址空间是220=1MB,内部总线和ALU 全部为16位,可以进行8位和16位操作。以下 是8086CPU实物图。
8086内部结构
AH BH CH DH AL BL CL DL SP BP SI DI 通用寄存器
可编程的寄存器组 执行单元EU 8个通用寄存器 1个标志寄存器 1个指令指针寄存器 4个段寄存器
标志寄存器
标志(Flag)用于反映指令执行结果或控制
指令执行形式 8086处理器的各种标志形成了一个16位的标 志寄存器FR
15 12 11 10 9 8 7 6 5 4 3 2 1 0
地址加法器

20位
16位
暂存寄存器
CS DS SS ES IP 内部暂存器
16位
总线控制 电路
8088的指令 队列是4B 执行部分 控制电路
外 部 总 线
12 3 4 5 6
ALU
标志寄存器
8位 指令队列缓冲器
执行部件 (EU)
总线接口部件 (BIU)
8086的寄存器组
对汇编语言程序员来说,8086内部结构就是
小结 CPU内部组成及各完成的功能
8086CPU由总线接口部件BIU和执行部件EU两
部分组成。 总线接口部件负责与存储器和I0端口之 间传送数据,总线口部件主要包括:4个段地 址寄存器;一个指令指针寄存器IP;一个20 位地址加法器;6字节指令队列;内部寄存器; 总线控制电路。 执行部件负责指令的执行,主要包括: 8个16位通用寄存器;标志寄存器;算术逻辑 单元ALU和EU控制电路。
相关文档
最新文档