微机原理课件:8086系统结构
微机原理(杭州电子科技大学【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
1 80868088微处理器的内部结构
微机原理第2章8086/8088系统结构8086/8088微处理器的内部结构微机原理8086是Intel系列的16bit微处理器,属第三代。
它有16bit数据总线和20bit地址线,可寻址1M空间。
8088有8bit数据总线和20bit地址线,可寻址1M空间。
其内部有16bit数据总线。
AH AL BH BL SI ALU 运算数暂存器标志寄存器EU控制电路16位CSDSSS ES IP 内部暂存器8位1 2 3 4 5 6执行部件(EU )总线控制电路 指令队列缓冲器总线接口部件(BIU )通用寄存器加法器80888086累加器基址寄存器计数寄存器数据寄存器堆栈指针基址指针目的变址源变址AX BX CX DX微机原理CPUEUBIU •16位通用寄存器组(AX、BX、CX 、DX、SP、BP、SI、DI)•算术逻辑单元—ALU•暂存器•EU控制器•标志寄存器—FLAG•段寄存器组(CS,DS,SS,ES),指令指针—IP •地址加法器•指令队列•总线接口控制逻辑微机原理EU 部件不直接与外部总线相连。
它从BIU的指令队列中取指令和数据。
EU 负责指令的执行。
BIU 根据EU 的请求,完成CPU 与存储器或I/O 之间的数据传送。
功能:符号名称高8位符号低8位符号AX累加器AH AL BX基址寄存器BH BL CX计数寄存器CH CL DX数据寄存器DH DL这里的寄存器可以8位或16位参与操作。
符号名称SP堆栈指针寄存器BP基址指针寄存器SI源变址寄存器DI目的变址寄存器这里的寄存器只能以16位参与操作。
符号名称CS代码段寄存器DS数据段寄存器ES附加段寄存器SS堆栈段寄存器IP指令指针寄存器D15D14D13D12D11D10D9D8 x x x x OF DF IF TF D7D6D5D4D3D2D1D0 SF ZF x AF x PF x CF符号名称定义CF进位标志运算中,最高位有进位或借位时CF=1,否则CF=0 PF奇偶标志运算结果低8位“1”个数为偶数时PF=1,否则PF=0 AF辅助进位D3有向D4进(借)位时AF=1,否则AF=0ZF零标志运算结果每位均为“0”时ZF=1, 否则ZF=0SF符号标志运算结果的最高位为1时SF=1,否则SF=0OF溢出标志运算中产生溢出时OF=1, 否则OF=0符号名称功能TF陷阱标志TF=1将使CPU进入单步执行指令IF中断标志IF=1允许CPU响应可屏蔽中断DF方向标志DF=1将从高地址向低地址处理字符串所以:CF=0PF=1AF=1ZF=0SF=1OF=0微机原理下次课见。
80868088 系统结构
︙
FFFFFH
︙
存储器分段示意图
5. 逻辑地址与物理地址
微机原理
逻辑地址:由段基址和段内偏移地址两部分组成, 表示为段基址:段内偏移地址。 物理地址:存储空间中唯一识别存储单元的地址, 用20位二进制数表示。 物理地址=段基址×16+段内偏移地址
微机原理 例1:段基址:偏移地址分别为1200H:0345H和1 10H:1245H 的逻辑地址对应的物理地址是什么? 解:物理地址1=1200H×16+0345H=12345H
微机原理
IBO CLK
S1 DT/R ALE
AEN MRDC AMWC MWTC
GND
1
20
2
19
3
18
4
17
5
16
6 8288 15
7
14
8
13
9
12
10
11
VCC S0 S2 MCE/PDEN DEN CEN INTA IORC AIOWC IOWC
8. 最小模式下的系统总线
微机原理
9. 最大模式下的系统总线
GND
CEN:命令允许
1
20
2
19
3
18
4
17
5
16
6 8288 15
7
14
8
13
9
12
10
11
VCC S0 S2 MCE/PDEN DEN CEN INTA IORC AIOWC IOWC
7. 总线接口器件
8288控制器的主要输出信号
MRDC:读存储器命令 MWTC:写存储器命令 AMWC:提前写存储器命令 IORC:读I/O端口命令 IOWC:写I/O端口命令 AIOWC:提前写I/O端口命令
微机原理课件第二章 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。
微机原理16位32位CPU(8086)
中 断 允 许
半 进 借 位 标 志
奇 偶 标 志
进 借 位 标 志
1-有进、借位 0-无进、借位
1-低4位向高4位有进、借位 0-低4位向高4位无进、借位
④标志寄存器
根据功能,标志可以分为两类:状态标志和控制标志
状态标志:表示前面的操作执行后,ALU所处的状态,这种状态像某 种先决条件一样影响后面的操作。 控制标志:表示对某一种特定的功能起控制作用。指令系统中有专门 的指令用于控制标志的设置和清除。 状态标志有6个,即SF、ZF、AF、PF、CF和OF ①符号标志SF(Sign Flag) 和运算结果的最高位相同。表示前面运
若TF=0 正常执行程序
返回
④标志寄存器
举例:
+ 0101 0100 0011 1001 0100 0111 0110 1010
3.8086的总线周期的概念
为了取得指令或传送数据,就需要CPU的总线接口部件执行一个 总线周期。 总线周期(机器周期):CPU通过总线与存储器或I/O接口进行一 次数据传输所需的时间。 在8086/8088中,一个最基本的总线周期由4个时钟周期组成,将4
80386
80486 Pentium Pentium IV
32
32 32 32
27.5万
120万 310万 4200万
12.5M,后提高到 20M,25M,33M
25MHz逐步提高到 33MHz、50MHz 60MHZ和66MHZ, 后提高到200MHZ 2.4G
0.1us
2.1 16位微处理器8086
式下各位引脚功能,如出现功能不同的引脚再具体讲解 。
DIP双列直插式封装
QFP塑料方型扁平式封装
Pentium4 3.2GHz LGA775 栅格阵列封装
微机原理5_8086指令系统08
• 指令中的操作数:
– 可以是一个具体的数值 – 可以是存放数据的寄存器 – 或指明数据在主存位置的存储器地址
6
双操作数指令
MOV dst, src ; (dst) (src) ↑ ↑ ↑ 助记符 目的 源操作数 操作数 例: MOV AH,BL MOV AX,1234H
ADD dst, src ; (dst) (dst)+(src) ↑ ↑ ↑ 助记符 目的 源操作数 操作数 例: ADD AL,36H ADD BX,CX 大多数运算型指令都是双操作数指令,对这种指令, 有的机器(大中型)使用“三地址”指令:除给出参加 运算的两个操作数外,还要指出运算结果的存放地址 7
18
寄存器寻址
19
特 点
(1) 操作数就在寄存器中,不需要访问存
储器来取得操作数(指令执行时,操作就在 CPU的内部进行),因而执行速度快。
(2)寄存器号比内存地址短 * 在编程中,如有可能,尽量使用这种寻址 方式的指令。 * 寄存器寻址方式既可用于源操作数,也可 用于目的操作数,还可以两者都用于寄存器寻 址方式(如 MOV BX , AX )
物理地址 = 16d (DS) +
BP (SS)
(SI)
(DI)
28
物理地址 = 16d (SS) + (BP)
例:
MOV AX, [BX] MOV ES:[BX] , AX MOV DX, [BP] • MOV AX , [BX] ;
设 ( DS) = 2000H ,(BX) = 1000H PA =20000H + 1000H =21000H 指令的执行结果为: (AX) = 50A0H *指令中也可以通过“段跨越前缀”取 得其他段中的数据, 例如: MOV AX,ES: [BX] PA = 16d (DS) + (BX) PA = 16d (ES) + (BX) PA = 16d (SS) + (BP)
微机原理第三章:8086微处理器结构
4.8086 和8088 二者的指令系统完全兼容
(1)有24 种寻址方式,具有乘、除法指令等。 (2)取指令和执行指令的操作并行运行,运行速度大大提高。
(3)具有最小模式和最大模式,应用领域宽广,适应性强。
(4)可方便地和数据处理器8087、I/O 处理器8089 或其它处理器 组成多处理机系统,提高数据处理能力和输人输出能力。
代码段寄存器 CS 标 志 寄 存 器
数据段寄存器 DS
堆栈段寄存器 SS
附加段寄存器 ES
由于8086/8088 CPU 可直接寻址的存储器空间是1M字节,直接寻址需要 20位地址码,而所有的内部寄存器都是16位的,用这些寄存器只能寻址 64K字节,为此需要采取分段技术来解决这个问题。
表3.1
通用寄存器的隐含使用
程序调试过程中。
3.1.2 8086/8088 的寄存器结构
四、指令指针寄存器 IP ★ 16 位的指令指针寄存器 IP 用来存放将要执行的下一条 指令在代码段中的偏移地址。 ★ 在程序运行过程中,BIU 可修改 IP 中的内容,使它始终 指向将要执行的下一条指令。 ★ 程序不能直接访问 IP,但可通过某些指令修改 IP 内容。 ★ 如遇到转移类指令,则将转移目标地址送人IP中,以实 现程序的转移。
★ 规则字的读/写操作可以一次完成。由于两个存储体上的地址
线 A19~A1 是连在一起的,只要使 A0=0,BHE=0,就可 以实现一次在两个存储体中对一个字的读/写操作。 ★ 读写的是从奇地址开始的字(高字节在偶体中,低字节在奇体 中),这种字的存放规则称为“非规则字”或“非对准字”。 ★ 非规则字的读/写,需要两次访问存储器才能完成。 第一次访问存储器读/写奇地址中的字节;
三、标志寄存器 FR
微机原理第二章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-8088系统结构
段地址 偏移地址(偏移量)
格式为:段地址:偏移地址 偏移地址 60000H
段首地址
=0002H
60002H 00H
12H
××× ••• ××× 0000
段基地址(16位)
物理地址=段基地址×16+偏移地址
16位
微机原理
段基址
0000
+
段内偏移
物理地址
20位
BIU中的地址加法器用来实现逻辑地址到物理地址的变 换
8088
AD7~AD0
S0 S1 8288 S2 DT/R DEN ALE
8282
STB OE
8282
STB OE
8282
S
OE
AIOWC AMWC IOWC IORC MRDC
A19~A16
A15~A8
A7~A0 D7~D0
图
8088 最大模式下总线形成
微机原理
微型计算机基本原理与接口技术
STB
OE
IO/M RD WR
A19~A16
A15~A8
A7~A0
DT/R DEN
A
B
8286
T
OE
D7~D0
8088 系 统 总 线 信 号
图
8088 最小模式下总线形成
微机原理
2. 最大模式下的系统总线
时钟 发生器
8284
MN/MX
S0
S1
CLK
S2
READY RESET
A19~A16
A15~A8
3.存储器的分段
微机原理
逻辑段:每个逻辑段容量不超过64K字节, 可用16位地址码直接寻址。
段间关系:各个逻辑段之间可在实际存储空 间中完全分开,也可以部分重叠,甚至可以 完全重叠。 物理地址定位:通过段地址 和相对地址确定。
微机原理第3章 8086微型计算机系统
2、总线接口部件BIU
BIU组成: 4个16位段寄存器(DS、CS、ES、SS); 指令指针寄存器(IP); 20位的地址加法器; 6字节指令队列缓冲器; 内部暂存器和总线控制逻辑。 BIU功能:负责CPU与存储器、I/O设备之间的 数据传送。具体包括: 取指令送指令队列,配合EU从指定的内存 单元或者外设端口中取数据,将数据传送 给EU,或者把EU的操作结果传送到指定的 内存单元或外设端口中。第3章 8086微型计算机系统
第3章 8086微型计算机系统
4、内存操作
读:将内存单元的内容取入CPU,原单元内容不改变; 写:CPU将信息放入内存单元,单元中原内容被覆盖; 刷新:对CPU透明,仅动态存储器有此操作 内存的读写的步骤为: 1)CPU把要读写的内存单元的地址放到AB上 2) 若是写操作, CPU紧接着把要写入的数据放到DB上 3) CPU发出读写命令 4) 数据被写入指定的单元或从指定的单元读出到DB 若是读操作, CPU紧接着从DB上取回数据
第3章 8086微型计算机系统
3、8086的存储器的地址
内存包含有很多存储单元(每个内存单元包含 8bit),为区分不同的内存单元,对计算机中 的每个内存单元进行编号,内存单元的编号 就称为内存单元的地址。
内存单 元地址
. . .
Bit 7 6 5 4 3 2 1 0 01011000
内存单 元内容
段基地址(16位)
第3章 8086微型计算机系统
段地址说明逻辑段在主存中的起始位置 8086规定段地址必须是模16地址:xxxx0H 省略低4位0000B,段地址就可以用16位数据 表示,就能用16位段寄存器表达段地址 偏移地址(也称有效地址EA)说明主存单元 距离段起始位置的偏移量 每段不超过64KB,偏移地址也可用16位数据 表示
微机原理 第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
微机原理ch2
第二章第二章 8086 8086系统结构系统结构主要内容:§2-1 8086CPU 系统结构§2-2 8086CPU 的引脚功能和系统配置 §2-3 8086存储器组织 §2-4 8086CPU 时序 §2-1 1 8086CPU 8086CPU 系统结构系统结构 一、引言1、8086:Intel 系列的16位微处理器,16条数据线、20条地址线,可寻址地址范围220=1MB,8086工作时,只要一个5V 电源和一个时钟,时钟频率分别有5MHz,8MHz 和10MHz。
2、8088:内部与8086兼容,也是一个16位微处理器,只是外部数据总线为8位,所以称为准16位微处理器。
8088有20条地址线,所以可寻址的地址空间达220即1M 字节。
图2-1 8086CPU 内部结构框图(★)二、8086CPU 的内部结构1、总线接口部件BIU(Bus Interface Unit)它是8086CPU 与外部(存储器和I/O 端口)数据交换的接口。
它提供了16位双向数据总线和20位地址总线,通过它们完成所有外部总线操作。
图2-2 总线接口部件(★)(1)总线接口部件的功能地址形成、取指令、指令排队、读/写操作数和总线控制。
(2)组成部分① 四个段地址寄存器(主要用于存放各段的首地址) CS:16位代码段寄存器; DS:16位数据段寄存器; ES:16位附加段寄存器; SS:16位堆栈段寄存器。
② 16位指令指针寄存器IP(PC)。
存放下一条要执行指令的偏移地址。
③ 20位的地址加法器。
将16位的逻辑地址转换成访问存储器的20位的物理地址。
④ 六字节的指令队列缓冲器。
功能:可存储6字节指令代码,在执行指令的同时,将取下一条指令,当指令队列有2个或2个以上的字节空余时,BIU自动将指令取到指令队列中。
CPU执行完一条指令后,可以指向下一条指令(流水线技术)。
微机原理第05讲
4. DMA控制信号引脚 DMA传输是一种不经过CPU,在内存和I/O设备之间直 接传输数据的方法。进行DMA传输之前要向CPU申请使用 总线并取得认可。 (1)HOLD(Hold Request) 总线请求信号。输入,高 电平有效,表示有其他设备向CPU请求使用总线。 (2)HLDA(Hold Acknowledge) 总线请求响应信号。 输出,高电平有效。 CPU在每个时钟周期都检测HOLD引 脚,当检测到该信号,并且CPU允许其它部件占用总线, 则在当前总线周期的T4 状态发送HLDA信号,同时让出总 线使用权(所有三态总线处于高阻态,从而不影响外部的 存储器与I/O设备交换数据)。总线申请部件接到HLDA有 效信号后即可接管总线进行操作,直到操作完成、撤销 HOLD信号,CPU才重新接管总线。
5
2. 时钟发生器8284与8086的连接
8284通过外接晶振芯片产生时钟信号,并对这个信号 3分频,产生占空比为1/3的时钟信号CLK送往8086 CPU。 8284还对外部输入的 RESET和READY信号 进行同步,产生与CLK 同步的复位信号RESET 和准备就绪信号READY 送往8086。
2
二、 最小模式系统 1. 典型配置: 1. 8086CPU 2. 1片时钟发生器8284 3. 3片地址锁存器8282 4. 2片总线驱动器8286(总线数据收发器)
3Байду номын сангаас
4
CPU及其外围芯片合称为CPU子系统。 外围芯片的作用是: (1)为CPU工作提供条件:提供适当的时钟信号,对 外界输入的控制/联络信号进行同步处理; (2)分离CPU输出的地址/数据分时复用信号,得到独 立的地址总线和数据总线信号,同时还增强它们的驱 动能力; (3)对CPU输出的控制信号进行组合,产生稳定可靠、 便于使用的系统总线信号。
微机原理_8088(8086)工作原理
8088/8086寄存器结构 8088/8086寄存器结构
15 AH BH CH DH 8 7 AX AL BX BL CX CL DX DL SP BP DI SI IP FLAGS CS DS ES SS 0 累加器 基址变址 计数 数据 堆栈指针 基址指针 目的变址 源变址 指令指针 标志 代码 数据
AX(Accumulator BX(Base
CX(Count DX(Data
指针寄存器
堆栈指针SP(Stack Pointer): 堆栈指针SP(Stack Pointer):用于实现内存中的堆栈
存储方式(FILO),指示栈顶的偏移地址; ),指示栈顶的偏移地址 存储方式(FILO),指示栈顶的偏移地址;
总线接口部件 (Bus Interface Unit)
执行部件 用来存放计算的中间结果, 用来存放计算的中间结果, (Execution Unit) CPU从寄存器中存取数据比从 CPU从寄存器中存取数据比从
负责指令的译码、 负责指令的译码、 存储器中存取数据要快得多。 存储器中存取数据要快得多。 与微处理器外部总线连接, 与微处理器外部总线连接,负责 执行等。 BIU 执行等。 大量使用寄存器能提高计算机 与存储器、I/O接口进行数据交换 接口进行数据交换, 与存储器、I/O接口进行数据交换, 运行速度, 运行速度,但也提高了成本 存取指令、操作数等。 存取指令、操作数等。
指令指针IP(Instruction Pointer): 指令指针IP(Instruction Pointer):计算机之所以
能自动地一条一条地取出并执行指令,是因为CPU中 能自动地一条一条地取出并执行指令,是因为CPU中 有一个跟踪指令地址的电路,其核心就是指令指针IP, 有一个跟踪指令地址的电路,其核心就是指令指针IP, 它用于指明当前应该调用内存中哪个地址位置的指令 CPU中来运行 中来运行, 到CPU中来运行,从而实现计算机自动运行程序员事 先安排好的软件。 先安排好的软件。
微机原理与接口技术第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)。
EU
执指1 执指2 执指3 执指4 执指5 t
8086 BIU 取指1 取指2 取指3 取指4 取指5
t
BUS 忙 忙 忙 忙 忙 忙 t
6
第二章
工 作 过 程 动 画 演 示
7
第二章
三、寄存器结构
u 寄存器:用于存放运算过程中所需要操作数 地址、操作数及中间结果;
13
第二章
标志位寄存器PSW具体格式:
u 状态标志:存放运算结果的特征
• 6个状态标志位(CF,PF,AF,ZF,SF, OF)
u 控制标志:控制某些特殊操作
• 3个控制标志位(TF,IF,DF)
14
第二章
状态标志位的名称和定义如下:
CF(进位标志):保存加法的进位和减法的借 位,有进位或借位时CF=1,否则CF=0
组
SS
堆栈段寄存器Stack Segment
CS
代码段寄存器Code Segment
段寄存器
IP PSW
指令指针寄存器Instruction Pointer 状态标志寄存器Program Status Word
9
控制寄存器
第二章
1、通用寄存器组
常用来存放参与运算的操作数或运算结果 特殊用途见 P26表2-1
10
第二章
2、指针和变址寄存器
可作通用寄存器,存放一般操作数或运算结果 作指针和变址寄存器,用于存放某段地址偏移量
11
第二章
3、段寄存器
用于存放逻辑段的段基地址
12
第二章
4、指令指针和标志位寄存器 IP存放下一条指令在现行代码段中的偏移地址
PSW用来存放运算结果的特征,常用作后续条 件转移指令的转移控制条件。
OF(溢出标志):溢出是在两个带符号数相加 、减时可能产生的。溢出则OF=1,否则 例O:F=P028 例2.2
对无符号数操作则不用考虑溢出标志。
16
第二章
例2.2 将5394H与-777FH两数相加,并说明标志位状态:
解:设X=5394H,Y=-777FH,由:[X+Y]补=[X]补+[Y]补 [X]补=0101 0011 1001 0100B [Y]补=[1111 0111 0111 1111B]补=1000 1000 1000 0001B
通
SI
源变址寄存器 Source Index
用 变址寄存器 寄
DI
目的变址寄存器 Destination Index
存
BP
基址指针寄存器 Base Pointer
器
指针寄存器
寄
SP
堆栈指针寄存器 Stack Pointer
存
DS
数据段寄存器Data Segment
器
ES
附加段寄存器Extra Segment
u 最大模式:有两个或多个微处理器,系统中所需要的控制信 号由总线控制器8288提供(多机系统)
19
2
第二章
二、8086CPU的内部结构 8086CPU内部按功能可分为两部分: 1、BIU(总线接口部件) 功能:地址形成、取指令、指令排队、
读/写操作数、总线控制 2、EU(执行部件) 功能:指令译码、指令执行
组成部件见下页图(教材P23 图2-1 )
3
第二章
8086CPU的内部组成
1、BIU
执行单元(EU)
u 特点:在CPU内部;
•
存取速度比存储器快得多;
•
容量小;
u 8086CPU内部有4组16位寄存器(P24 图2-2 )。
8
第二章
8086CPU
AH AL AX 累加器 Accumulator
BH BL BX 基数寄存器Base CH CL CX 计数寄存器Count
数据寄存器
DH DL DX 数据寄存器Data
第二章 8086系统结构1
2.1 8086CPU结构 2.2 8086CPU的引脚及其功能 2.3 8086存储器组织 2.4 8086系统配置 2.5 8086CPU时序 2.6 小结
1
第二章
2.1 8086CPU结构
一、Intel 8086CPU主要特性
u 数据总线:16位 u 地址总线:20位 u 内存空间:CPU可直接寻址1MB内存空间 u 端口地址线:16位 u 时钟频率: 5MHz、 8MHz、 10MHz u 工作模式:单处理器工作模式、多处理器工作模式 u 流水线工作方式:取指令、执行指令并行进行 u 兼容性:与8080、8085兼容
PF(奇偶标志):表示计算结果低8位 ‘1’ 的个数是奇数还是偶数. 偶数个PF=1, 否则,PF=0
AF(辅助进位):保存加法或减法结果第4、5
位之间的进位或借位。有则AF=1,否则,
AF=0
15
第二章
ZF(零标志):表示运算结果是否为零,为零则 ZF=1
SF(符号标志):保存运算结果的算术符号。 SF=1,表示本次运算结果的最高位(第8位 或第16位)为“1”,否则SF=0。
0101 0011 1001 0100B + 1000 1000 1000 0001B
1101 1100 0001 0101B [X+Y]原= [[X+Y]补]补=[[X]补+[Y]补]补=1010001111101011B 所以: X+Y=-010 0011 1110 1011B=-23EBH 标志位:CF=0,PF=0,AF=0,ZF=0,SF=1,OF=0
或递减方式. D=1,寄存器内容自动递减;
D=0,则相反。
18
第二章
2.2 8086CPU的引脚及
一、概述
其功能
• 1、8086CPU芯片:40引脚、双列直插式封装、由于工艺限制
,部分引脚采用分时复用技术;
• 2、8086CPU有两种工作模式:
u 最小模式:Hale Waihona Puke 有8086CPU一个处理器(单机系统)
① 总线控制逻辑 ③ 段寄存器 ⑤ 指令队列缓冲器
4
总线接口单元(BIU)
② 指令指针寄存器IP ④ 地址加法器
第二章
8086CPU的内部组成
执行单元(EU)
总线接口单元(BIU)
2、EU ① 算术逻辑单元(ALU) ② EU控制电路
③ 寄存器组
5
第二章
3、8086的内部结构特点: 指令的提取与执行分别由BIU和EU两部件完成,
17
第二章
控制标志位的名称和定义如下:
• TF(单步标志):T=1可使微处理器进入跟踪 方式,即单步调试状态。
• IF(中断允许标志):用来控制CPU是否能够 响应可屏蔽中断。IF=1表示允许CPU响应
可屏蔽中断。
• DF(方向标志):在串操作指令中,通过 D
可选择对 DI / SI 寄存器的内容进行递增