8086 微处理器 微型计算机技术教学PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第2章 8086 微处理器
2020/11/6
1
8086 微处理器
• 2.1 8086微处理器的结构 • 2.2 8086微处理器的引脚功能 • 2.3 8086微处理器的基本时序
2020/11/6
2
2.1 8086微处理器的结构
• 2.1.1 执行部件和总线接口部件
• 2.1.2 8086 的编程结构
• 2.1.3 8086 系统中的存储器组织及
•
物理地址的形成
2020/11/6
3
2.2 8086 微处理器的引脚功能
• 2.2.1 引脚功能说明 • 2.2.2 8088 引脚与8086 引脚的不同之处
2020/11/6
4
2.3 8086 微处理器的基本时序
• 2.3.1 指令周期、总线周期和时钟周期 • 2.3.2 几种基本时序的分析
2020/11/6
12
2.1.2 8086 的编程结构
• 可供程序员使用的有16个16位寄存器。
• 1.通用寄存器(General‐Purpose Register ,GPR)
• 可分为两组。
• 1) 数据寄存器
• 累加器AX(Accumulator) 、
• 基址寄存器BX(Base Register) 、
• 计数寄存器CX(Count Register) 、
• 数据寄存器DX(Data Register) 。
2020/11/6
13
通用寄存器
AX AH BX BH CX CH DX DH
SP BP SI DI
2020/11/6
AL BL CL DL
14
数据寄存器
• 特点是: • 每个16位寄存器可分为 • 高8位( AH 、BH 、CH 和DH) • 低8位(AL 、BL 、CL 和DL) , • 这两组8位寄存器可分别寻址、独立操作。既可以
• 8086 微处理器被设计为两个独立的功能 部件,
• 总线接口部件和执行部件, • 并在大多数情况下,能使大部分 • 的取指令和执行指令重叠进行。 • 提高了程序的执行速度,充分利用总线,
2020/11/6
7
功能部件
2020/11/6
8
总线接口部件 (Bus Interface Unit ,BIU)
存器(Index Register)
• 堆栈指针寄存器SP( Stack Pointer) 、 • 基址指针寄存器BP(Base Pointer) 、 • 源变址寄存器SI(Source Index) • 目的变址寄存器DI(Destination Index) • 用来形成操作数的地址,用于堆栈操作 • 和变址运算中计算操作数的有效地址。 • SP 、BP 用于堆栈操作 • SI 、DI 用于变址操作
• 总之,BIU 的功能ຫໍສະໝຸດ Baidu:同外部总线连接,为EU 和内 存(及外设接口)之间提供信息通路。并形成20位的 内存物理地址。
2020/11/6
9
执行部件(Execution Unit ,EU)
• 由通用寄存器、标志寄存器、算术逻辑单元 ( ALU)和EU 控制系统等组成。EU 从BIU 的 指令队列中获得指令,然后执行该指令,完成 指令所规定的操作。
2020/11/6
17
通用寄存器
• 在8086 的指令系统中,许多情况下,某些指令只 能用一个特定的寄存器或寄存器组来完成其功能,
• 对这些用来完成特定操作的8086 指令, • 上述通用寄存器具有一些隐含用法
2020/11/6
18
通用寄存器的隐含用法
2020/11/6
19
2. 指令指针 (Instruction Pointer ,IP)
• 由段寄存器、指令指针、地址形成逻辑、总线控制逻 辑和指令队列等组成。
• BIU 负责从内存指定区域取出指令送到指令队列中排 队;执行指令时所需要的操作数(内存操作数和I/O 端口操作数)也由BIU 从相应的内存区域或I/O 端口 中取出,传送给执行部(EU) 。指令执行的结果如 果需要存入内存或I/O 端口,也由BIU 写入相应的内 存区域或I/O 端口。
2020/11/6
20
3. 标志寄存器FR(Flag Register)
2020/11/6
5
2.1.1 执行部件和总线接口部件
微处理器执行程序的步骤 • ① 从内存储器中取出一条指令,分析指令操作码; • ② 读出一个操作数(如果指令需要操作数) ; • ③ 执行指令; • ④ 将结果写入内存储器或输出设备(如果指令
需要) 。
2020/11/6
6
执行部件和总线接口部件
将数据寄存器作为一个16 位寄存器进行操作,又 可用做两个8 位寄存器进行操作。
2020/11/6
15
数据寄存器
• 可以存放 • 参加操作的数据、 • 操作的中间结果, • 也可以是操作数的地址。 • 大多数算术和逻辑运算指令都可以使用这些数据寄
存器。
2020/11/6
16
2)指针寄存器(Pointer Register、变址寄
• 16 位专用寄存器,它指向当前需要取出的指令字 节,当BIU 从内存中取出一个指令字节后,IP 就 自动加1 ,指向下一指令字节。注意,IP 指向 的是指令地址的段内地址偏移量,又称偏移地址 (Offset Address)或有效地址(Effective Address ,EA) 。
程序员不能对IP 进行存取操作,程序中的转移指 令、返回指令以及中断处理能对IP 进行操作。
• EU 用来对寄存器内容和指令操作数进行算术 和逻辑运算,以及进行内存有效地址的计算。
• EU负责全部指令的执行,向BIU 提供数据和所 需访问的内存或I/O 端口的地址,并对通用寄
存器、标志寄存器和指令操作数进行管理。
2020/11/6
10
取指令和执行指令重叠进行
2020/11/6
11
8088与8086 的区别
• 8088微处理器是一种准16位微处理器,内部采 用16位结构,实质上与8086基本上是相同的, 其内部功能部件EU 与8086一样,而BIU 略有 区别。
• 第一, 8086 的指令队列是6字节长,而8088 的指令队列为4字节长;
• 第二, 8086 是真正的16位机,同BIU 相连的 8086 总线中的数据总线是16 位总线,而8088 是准16位机,同BIU 相连的8088 总线中的数 据总线为8位总线。
2020/11/6
1
8086 微处理器
• 2.1 8086微处理器的结构 • 2.2 8086微处理器的引脚功能 • 2.3 8086微处理器的基本时序
2020/11/6
2
2.1 8086微处理器的结构
• 2.1.1 执行部件和总线接口部件
• 2.1.2 8086 的编程结构
• 2.1.3 8086 系统中的存储器组织及
•
物理地址的形成
2020/11/6
3
2.2 8086 微处理器的引脚功能
• 2.2.1 引脚功能说明 • 2.2.2 8088 引脚与8086 引脚的不同之处
2020/11/6
4
2.3 8086 微处理器的基本时序
• 2.3.1 指令周期、总线周期和时钟周期 • 2.3.2 几种基本时序的分析
2020/11/6
12
2.1.2 8086 的编程结构
• 可供程序员使用的有16个16位寄存器。
• 1.通用寄存器(General‐Purpose Register ,GPR)
• 可分为两组。
• 1) 数据寄存器
• 累加器AX(Accumulator) 、
• 基址寄存器BX(Base Register) 、
• 计数寄存器CX(Count Register) 、
• 数据寄存器DX(Data Register) 。
2020/11/6
13
通用寄存器
AX AH BX BH CX CH DX DH
SP BP SI DI
2020/11/6
AL BL CL DL
14
数据寄存器
• 特点是: • 每个16位寄存器可分为 • 高8位( AH 、BH 、CH 和DH) • 低8位(AL 、BL 、CL 和DL) , • 这两组8位寄存器可分别寻址、独立操作。既可以
• 8086 微处理器被设计为两个独立的功能 部件,
• 总线接口部件和执行部件, • 并在大多数情况下,能使大部分 • 的取指令和执行指令重叠进行。 • 提高了程序的执行速度,充分利用总线,
2020/11/6
7
功能部件
2020/11/6
8
总线接口部件 (Bus Interface Unit ,BIU)
存器(Index Register)
• 堆栈指针寄存器SP( Stack Pointer) 、 • 基址指针寄存器BP(Base Pointer) 、 • 源变址寄存器SI(Source Index) • 目的变址寄存器DI(Destination Index) • 用来形成操作数的地址,用于堆栈操作 • 和变址运算中计算操作数的有效地址。 • SP 、BP 用于堆栈操作 • SI 、DI 用于变址操作
• 总之,BIU 的功能ຫໍສະໝຸດ Baidu:同外部总线连接,为EU 和内 存(及外设接口)之间提供信息通路。并形成20位的 内存物理地址。
2020/11/6
9
执行部件(Execution Unit ,EU)
• 由通用寄存器、标志寄存器、算术逻辑单元 ( ALU)和EU 控制系统等组成。EU 从BIU 的 指令队列中获得指令,然后执行该指令,完成 指令所规定的操作。
2020/11/6
17
通用寄存器
• 在8086 的指令系统中,许多情况下,某些指令只 能用一个特定的寄存器或寄存器组来完成其功能,
• 对这些用来完成特定操作的8086 指令, • 上述通用寄存器具有一些隐含用法
2020/11/6
18
通用寄存器的隐含用法
2020/11/6
19
2. 指令指针 (Instruction Pointer ,IP)
• 由段寄存器、指令指针、地址形成逻辑、总线控制逻 辑和指令队列等组成。
• BIU 负责从内存指定区域取出指令送到指令队列中排 队;执行指令时所需要的操作数(内存操作数和I/O 端口操作数)也由BIU 从相应的内存区域或I/O 端口 中取出,传送给执行部(EU) 。指令执行的结果如 果需要存入内存或I/O 端口,也由BIU 写入相应的内 存区域或I/O 端口。
2020/11/6
20
3. 标志寄存器FR(Flag Register)
2020/11/6
5
2.1.1 执行部件和总线接口部件
微处理器执行程序的步骤 • ① 从内存储器中取出一条指令,分析指令操作码; • ② 读出一个操作数(如果指令需要操作数) ; • ③ 执行指令; • ④ 将结果写入内存储器或输出设备(如果指令
需要) 。
2020/11/6
6
执行部件和总线接口部件
将数据寄存器作为一个16 位寄存器进行操作,又 可用做两个8 位寄存器进行操作。
2020/11/6
15
数据寄存器
• 可以存放 • 参加操作的数据、 • 操作的中间结果, • 也可以是操作数的地址。 • 大多数算术和逻辑运算指令都可以使用这些数据寄
存器。
2020/11/6
16
2)指针寄存器(Pointer Register、变址寄
• 16 位专用寄存器,它指向当前需要取出的指令字 节,当BIU 从内存中取出一个指令字节后,IP 就 自动加1 ,指向下一指令字节。注意,IP 指向 的是指令地址的段内地址偏移量,又称偏移地址 (Offset Address)或有效地址(Effective Address ,EA) 。
程序员不能对IP 进行存取操作,程序中的转移指 令、返回指令以及中断处理能对IP 进行操作。
• EU 用来对寄存器内容和指令操作数进行算术 和逻辑运算,以及进行内存有效地址的计算。
• EU负责全部指令的执行,向BIU 提供数据和所 需访问的内存或I/O 端口的地址,并对通用寄
存器、标志寄存器和指令操作数进行管理。
2020/11/6
10
取指令和执行指令重叠进行
2020/11/6
11
8088与8086 的区别
• 8088微处理器是一种准16位微处理器,内部采 用16位结构,实质上与8086基本上是相同的, 其内部功能部件EU 与8086一样,而BIU 略有 区别。
• 第一, 8086 的指令队列是6字节长,而8088 的指令队列为4字节长;
• 第二, 8086 是真正的16位机,同BIU 相连的 8086 总线中的数据总线是16 位总线,而8088 是准16位机,同BIU 相连的8088 总线中的数 据总线为8位总线。