第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内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086系统中物理地址的形成过程。
8086系统中的物理地址最多有多少个?逻辑地址呢?答:8086系统中的物理地址是由20根地址总线形成的。
8086系统采用分段并附以地址偏移量办法形成20位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是16位二进制数。
通过一个20位的地址加法器将这两个地址相加形成物理地址。
具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址。
由于8086CPU的地址线是20根,所以可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。
微机原理(杭州电子科技大学【4】8086系统结构[2-3]
15:28
22
二、系统的复位与启动
【8086CPU时序】
① 复位信号:通过RESET引脚上的触发信号来引起8086系统复位和启
动,RESET至少维持4个时钟周期的高电平。
② 复位操作:当RESET信号变成高电平时,8086/8088CPU结束现行
操作,各个内部寄存器复位成初值。
标志寄存器
清零
指令寄存器 CS寄存器 DS寄存器 SS寄存器 ES寄存器
的比例倍频后得到CPU的主频,即: CPU主频 = 外频 × 倍频系数
⑥ PC机各子系统时钟(存储系统,显示系统,总线等)是由系统频率按 照一定的比例分频得到。
15:28
5
内频 550MHz Pentium III
倍频系数5.5
L1 Cache
L2 550MHz Cache
处理机总线 100MHz
微机原理与接口技术
第四讲
15:28
第二章 8086系统结构
内容提要
z微型计算机的发展概况 z8086CPU内部结构 z8086CPU引脚及功能 z8086CPU存储器组织 z8086CPU系统配置 z8086CPU时序
15:28
2
※有关概念介绍
z 主频,外频,倍频系数 z T状态 z 总线周期 z 指令周期 z 时序 z 时序图
总线操作
读存储器操作 (取操作数)
写存储器操作 (将结果存放到内存)
读 I/O 端口操作 (取 I/O 端口中的数)
写 I/O 端口操作 (往 I/O 端口写数)
中断响应操作
总线周期
存储器读周期 存储器写周期 I/O 端口读周期 I/O 端口写周期 中断响应周期
15:28
第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]
应用例子:发光二极管接口
+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
微机原理课件第二章 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/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系统结构
执行下面两个数相加:
1010 0011 0100 1101
+ 0011 0010 0001 1001
1101 0101 0110 0110 分析其结果对下列标志位有何影响: (SF)= 1 1 (ZF)=
(PF)=
(CF)=
0 (AF)= 0 (OF)=
1 0
11
习题 CH2 8086系统结构
数据线和地址线是以 分时复用 方式轮流使用的。
1
习题 CH2 8086系统结构
8086的ALE引脚的作用是
锁存地址
。
8086/8088CPU构成的微机中,每个主存单元对应
两种地址: 逻辑地址 和 物理地址 。 CPU访问存储器时,在地址总线上送出的地址我们 物理 地址。 8086CPU的最小工作模式是 称为
7
习题 CH2 8086系统结构
当M/IO#=0,RD#=0,WR#=1时,CPU完成的
B 。 A. 存储器读 C.存储器写
操作是
B. I/O读
D.I/O写
8088/8086CPU的复位信号至少维持 D 个时钟
周期的高电平有效。 A.1 B.2 C.3 D.4
8
习题 CH2 8086系统结构
3
习题 CH2 8086系统结构
8086系统中,存储器分为奇、偶两个存储体,
其中,奇地址存储体的数据信号线固定与数据总 线的 相连,偶地址存储体数据 高八位 总线的 低八位 相连。 8086CPU从偶地址读出两个字节时,需要 1 个 总线周期;从奇地址读两个字节时,需要 2 个 总线周期。 8086/8088CPU上电复位后,执行第一条指令的 地址是 FFFF0 H。
8086对存储器的管理为什么采用分段的办法?
第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不直接提供控制信 号 。
微机原理课件第二章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系统结构
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
微机原理与接口技术(第三版)课本习题答案
第二章 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内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086系统中物理地址的形成过程。
8086系统中的物理地址最多有多少个逻辑地址呢答:8086系统中的物理地址是由20根地址总线形成的。
8086系统采用分段并附以地址偏移量办法形成20位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是16位二进制数。
通过一个20位的地址加法器将这两个地址相加形成物理地址。
具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址。
由于8086CPU的地址线是20根,所以可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。
2.第二章 8086系统结构
总线接口部件BIU SI:(Source Index):SI含有源地址意思,产 生有效地址或实际地址的偏移量。 总线接口部件BIU内部设 有四个16位段地址寄存器: DI:(Destination Index):DI含有目的意思, 代码段寄存器CS、数据段寄 产生有效地址或实际地址的偏移量。 存器DS、堆栈段寄存器SS和 播 音 附加段寄存器ES,一个16位 : 指令指针寄存器IP,一个6字 16位字利用了9位。 标志分两类: 节指令队列缓冲器,20位地 状态标志(6位):反映刚刚完成的操作结果情况。 址加法器和总线控制电路。
志(结果低8 CLC(复位), 位1的个数 CMC(求反)。 为偶数 PF=1) 。
15
14
13
12
11
10
9
8
3
2
1
0
OF DF IF TF
SF ZF
AF
PF
CF
DF:方向标志 .DF=1使串 操作按减地址进行,DF=0按 增地址进行。指令: CLD(复位), STD(置位).
TF:陷阱标志或单步操作标志 IF:中断允许 标志 图 2-6 8086CPU标志寄存器 目录
通用寄存器(数据寄存器) : AX 累加器 BX 基址寄存器 CX 计数寄存器 DX 数据寄存器
SP BP SI DI
IP
地址指针和变址寄存器: SP 堆栈指针寄存器 BP 基址指针寄存器 SI 源变址寄存器 控制寄存器: DI 目的变址寄存器 IP 指令指针寄存器
FLAGS
CS DS SS ES
段寄存器: CS 代码段寄存器 DS 数据段寄存器 SS 堆栈段寄存器 ES 附加段寄存器
EU 总线 忙
执行1 忙
执行2 忙
第2章 80888086系统硬件结构
OF DF IF TF SF ZF
AF
PF
CF
条件码标志:
OF SF ZF CF AF PF
控制标志:
方向标志
系统标志位:
IF 中断标志 TF 陷阱标志
溢出标志 DF 符号标志 零标志 进位标志 辅助进位标志 奇偶标志
第2章 8088/8086系统硬件结构
程 序 状 态 字 ( ) PSW
第2章 8088/8086系统硬件结构
第2章 8088/8086系统硬件结构
1、存储器地址的分段
•每个段的最大长度可达
64KB,段内地址是连续的、 线性增长的,允许单个逻辑 段在整个1MB存储空间内浮 动。
•可以有相连的段(如:C和D
段)、不相连的段(如:A和B 段)以及相互重叠的段(如:B 和C段)
第2章 8088/8086系统硬件结构
第2章 8088/8086系统硬件结构
2、段寄存器(CS、 DS、 SS、 ES、 FS、GS)
存放段地址,确定一个段的的起始地址. 用途各不相同:
代码段(CS):存放当前正在运行的程序 数据段(DS):存放当前运行程序所用的数据 ,或串处理指令
中的源操作数
堆栈段(SS):定义堆栈(后进先出)的所在区域 附加段(ES):附加的数据区,或串处理指令中的目的操作数
-)
79000H
2450H
即SP值为2450H.
第2章 8088/8086系统硬件结构
2.1.2 8088CPU的两大功能结构
8088CPU的两大功能结构为总线接口单元 BIU(BusInterfaceUnit)和指令执行单元 EU(ExecutionUnit),如图2.4所示。 U单元负责指令的执行,由算术逻辑单元ALU、标 志寄存器F、通用寄存器及EU控制器等组成,主要进 行16位的各种运算及有效地址的计算。EU不与计算机 系统总线(外部总线)相关,而从BIU中的指令队列取得
微机原理与接口技术(第三版)&电子工业出版社&课本习题答案
&电子工业出版社&第二章 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内部的并行操作体现在指令执行的同时,待执行的指令也同时从内存中读取,并送到指令队列。
5.简述8086系统中物理地址的形成过程。
8086系统中的物理地址最多有多少个?逻辑地址呢?答:8086系统中的物理地址是由20根地址总线形成的。
8086系统采用分段并附以地址偏移量办法形成20位的物理地址。
采用分段结构的存储器中,任何一个逻辑地址都由段基址和偏移地址两部分构成,都是16位二进制数。
通过一个20位的地址加法器将这两个地址相加形成物理地址。
具体做法是16位的段基址左移4位(相当于在段基址最低位后添4个“0”),然后与偏移地址相加获得物理地址。
由于8086CPU的地址线是20根,所以可寻址的存储空间为1M字节,即8086系统的物理地址空间是1MB。
微机原理与接口技术第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)。
2.2.2 执行单元(Execution Unit EU)
1 指令译码(EU控制器)
● ● ●
从指令队列取出指令进行译码 对不同的指令码产生相应的控制信号 控制系统完成该指令所规定的操作 MOV SP, BX SP BX
例:
2 执行指令
(1)ALU (2)标志寄存器PSW
3 内部寄存器
(1) 通用寄存器组
指令指针寄存器
指令指针寄存器
IP
堆栈段寄存器 附加段寄存器
PSW
11
OF
10
DF
9
IF
8
7
6
5
4
AF
3
2
PF
1
0
CF
TF SF ZF
OF CF AF ZF PF
溢出标志
OF=C7
C6 ( C15 C14) N (C15 N) N Σ6
… …
进(借) 位标志 CF=C7 半(借)进位标志 AF= C4 零标志 奇偶标志 ZF= Σ7
BHE 地址总线 20位
8286 或8287 T OE
存储器 DATA
I/O芯片 DATA 16位
数据总线
图2.4
8086最小方式系统配置 (MN/MX接+5V )
DI0 DI1 DI2 DI3 DI4 DI5 DI6 DI7 OE GND
1 20 2 19 3 18 4 17 5 16 6 8282 15 7 14 8 13 9 12 10 11 8282引脚
[–23EBH]补 = [0010 0011 1110 1011] + 1 = 1101 1100 0001 0101
(3) 状态标志
溢出(复习) 有符号数运算结果超出其表示范围
1、有符号数的表示范围
单字节数 -128 ~ +127 双字节数 - 32768 ~ +32767
2、符号扩展:符号位向左重复至所需位数 8位 16位
指令周期 执行一条指令所需的时间
由一个或若干个总线周期组成
2.4.1 系统的复位与启动
• 当信号变为高电平时,8086进行复位操作,复 位信号至少维持4个时钟周期的高电平 表2.14 复位时各内部寄存器的值 PSW IP CS DS SS ES 指令队列 其他寄存器 清零 0000H FFFFH 0000H 变空 0000H
。 。
JMP XX
。 。 XX: 。
。 。 CALL YY
。 YY : 。
。
RET
通过BIU读写操作数
例: MOV AL, (2018H)
RD 存储器 总线控制 电路
0000 1101
0 0 0 0 110 1
已知DS=1000
12018H
12018H
1000 DS
0
2018 偏移地址
AL
0000 1101
CLK
图2-3
8086CPU外引脚定义
VCC G(2) CLK MN/MX 地址/数据、地址/状态引脚: AD0~AD15 A16/S3~A19/S6 BHE/S7 控制引脚: M / IO控制: 系统配置 DEN DT/R ALE M/IO控制 M/IO RD
MN/MX
33
40 38— 34 31
VCC
GND
1,20
A16/S3—A19/S6 BHE/S7
HOLD HLDA RD WR M/IO DT/R DEN
AD15— AD0
30 2—16 32 29
NMI INTR
17,18
28
27, 26
24 25 19 23— 21
INTA
ALE TEST READY RESET
⑵ 在ALU中,将所读取的16位数据与AX的内容相加
⑶ 将相加结果送回21000H开始的两个存储单元 — 总线写
8086是16位CPU,允许进行字节操作与字操作
以字节(8位)为单位存储信息 一个字按相邻两个字节存放在存储器中 高字节在高地址,低字节在低地址 以低地址作为字地址
例 已知 DS=2000H MOV (1000H),7458H MOV (1003H),9516H
例: ADD
(1000H),AX
已知: (DS)=2000H (21000H)=74H (21001H)=58H (AX)=3269H
指令操作:将DS:1000开始的两个存储单元中存放的一个字 与AX内容相加,结果送回原存储单元
执行过程:已知(DS)=2000H 操作数的物理地址为21000H
⑴ 从偶地址21000H开始读出一个字 —— 总线读
0 1 IORC
WR IOWC
MRDC MWTC
CPU控制:
总线控制 HOLD HLDA 中断控制 NMI INTR INTA 时序控制 RESET READY TEST
VCC VCC 8284 RES 时钟 发生器
8086最小模式系统配置
MN/MX CLK RD READY WR RESET M/IO 8086 STB CPU ALE 地址 A19~A16 8282 BHE 地址/数据 或8283 AD15~AD0 OE DEN DT/R
编程结构 第2章 8086 CPU
本章重点讲授的章节: 2.1 8086CPU的结构特点 2.2 8086CPU的编程结构 2.3 8086系统配置 2.4 8086CPU时序 2.5 8086存储器组织
2.2 8086CPU的编程结构
8位机采用串行工作方式:
取一条指令——(取操作数)——执行指令
CS DS SS ES IP 内部寄存器
暂存器
总线 8086总线 控制 电路 (16位数据线)
指令队列 ALU
EU控制器
队列总线 标志寄存器 指令执行单元 (8位)
1 2 3 4 5 6
EU
总线接口单元
BIU
图 2-1
8086CPU内部结构框图
2.2.1 总线接口单元(Bus Interface Unit BIU)
VCC(+5V) DO0 DO1 DO2 DO3 DO4 内部结构 DO5 DO6 DO7 STB
DI0 DI1 DI2 DI3 DI4 DI5 DI5 DI7
D Q CLK
DO0 DO1 DO2 DO3 DO4 DO5 DO6 DO7 OE
CSYNC PLCK AEN1 RDY1 REDAY RDY2 AEN2 CLK GND
oE
0 0 1 1
T 1 0 1 0
传送方向 OE AiBi(CPU外部) BiAi(外部CPU) 高阻状态 高阻状态
DEN
T 图2 . 6 8286内部结构 DT/R
8286
2.4 8086 CPU时序
时钟周期
时钟(CLK)频率的倒数 一个时钟周期又称为一个T状态
总线周期
BIU 完成一次访问存储器或端口操作所需要的时间 每个总线周期包含若干个时钟周期
16位机可以并行操作: 取第一条指令——取第二条指令——取第三条指令... 执行第一条指令———执行第二条指令...
一、8086CPU的内部结构
通用寄存器 地址总线(20位)
AX BX CX DX
AH BH CH DH
AL BL CL DL SP BP DI SI
ALU数据址总线 (16位)
数据总线 (16位)
[63]补 0011 1111
[- 63]补 1100 0001
0000 0000 0011 1111
1111 1111 1100 0001
2.3.1 两种工作方式 最小工作方式: 用于单机系统 由8086提供系统中所需要的控制信号 最大工作方式: 用于多处理器系统 由总线控制器提供系统中所需要的控制信号
21000 58 74
21003 16 95
2.5.1 数据存储格式
2、8086CPU有16根数据线 可以同时传送16位数据(字操作,使用AD15 ~ AD0) 也可以只传送8位数据(字节操作,使用AD15~AD8 或AD7~AD0 )
仅当A0为低电平时,CPU使用AD7~AD0 —— 偶地址 字节操作 仅当BHE为低电平时,CPU使用AD15~AD8 —— 奇地址 字节操作
1 20 2 19 3 18 4 17 5 16 6 8286 15 7 14 8 13 9 12 10 11 8286引脚
VCC(+5V) B0 B1 B2 B3 B4 B5 B6 B7 T
A0 B0
A1
A2 A3 A4 A5 A5 A7
B1
B2 B3 B4 B5 B6 B7
表2 . 4 OE与T的功能
1 2 3 4 5 6 7 8 9
18 17 16 15 14 8284 13 12 11 10
VCC X1 X2 TANK EFI F/C OSC RES RESET
STB
ALE
图 2.5
8282内部结构
8282 与8284
8284引脚
A0 A1 A2 A3 A4 A5 A6 A7 OE GND
Σ0 Σ0
PF= Σ7 Σ6
SF
符号标志
Σ7 ( Σ15)
标志寄存器
例: (5394H) + (-777FH) = - (777FH – 5394H) = -23EBH [5394H]补 0101 0011 1001 0100 + [- 777FH]补 1000 1000 1000 0001 ------------------------------------------------------+ [- 23EBH]补 1101 1100 0001 0101 CF=0 C7=0 C6=0 AF=0 SF=1 ZF=0 PF=1 OF=0