第二章微处理器 通过本章的学习,读者应该掌握以下内容: 8086/8088微处理器的结构及指令执行的操作 过程 ·8086/8088在最大和最小模式下引脚功能 8086的操作时序 80x86的实地址方式和虚地址方式
第二章 微处理器 通过本章的学习,读者应该掌握以下内容: • 8086/8088微处理器的结构及指令执行的操作 过程 • 8086/8088在最大和最小模式下引脚功能 • 8086的操作时序 • 80x86的实地址方式和虚地址方式
2、180868088微处理器 2、1、18086/8088微处理器的结构及执行程序的操作 过程 8086: Intel系列的16位微处理器,16条数据线、20条 地址线,可寻址地址范围20=1MB,8086工作时,只 要一个5V电源和一个时钟,时钟频率为5MHz。 8088:内部与8086兼容,也是一个16位微处理器,只 是外部数据总线为8位,所以称为准16位微处理器。它 具有包括乘法和除法的16位运算指令,所以能处理16 位数据,还能处理8位数据。8088有20根地址线,所以 可寻址的地址空间达220即M字节
2、1 8086/8088微处理器 2、1、1 8086/8088微处理器的结构及执行程序的操作 过程 8086:Intel系列的16位微处理器,16条数据线、20条 地址线,可寻址地址范围2 20=1MB,8086工作时,只 要一个 5V 电源和一个时钟,时钟频率为5MHz。 8088:内部与8086兼容,也是一个16位微处理器,只 是外部数据总线为8位,所以称为准16位微处理器。它 具有包括乘法和除法的16位运算指令,所以能处理16 位数据,还能处理8位数据。8088有20根地址线,所以 可寻址的地址空间达220即1M字节
AH AL 地址加 BH BL 法器 通用寄存器 CH CI 寄DHDL DS SP BP ES DI 控制 SI 内部寄电路 存器 外 线 运算寄存器 执行部分 23456 控制电路8位指令队列缓冲器 ALU 标志执行部件 总线接口部件
AH AL BH BL CH CL DH DL SP BP DI SI 通 用 寄 存 器 运算寄存器 ALU 标志 执行部分 控制电路 1 2 3 4 5 6 CS DS SS ES IP 内部寄 存器 I/O 控制 电路 地址加 法器 20位 16位 8位 指令队列缓冲器 外 总 线 执行部件 总线接口部件 8086CPU结构图
1、总线接口部件 功能: (1)、从取指令送到指令队列。 (2)、CPU执行指令时,到指定的位置取操作数, 并将其送至要求的位置单元中。 总线接口部件的组成: (1)、四个段地址寄存器 CS,16位代码段寄存器; DS,16位数据段寄存器; ES,16位附加段寄存器 SS,16位堆栈段寄存器
1、总线接口部件 功能: (1)、从取指令送到指令队列。 (2)、CPU执行指令时,到指定的位置取操作数, 并将其送至要求的位置单元中。 总线接口部件的组成: (1)、四个段地址寄存器 CS,16位代码段寄存器; DS,16位数据段寄存器; ES,16位附加段寄存器; SS,16位堆栈段寄存器
(2)、16位指令指针寄存器IP(PC)。 (3)、20位的地址加法器。 (4)、六字节的指令队列缓冲器。 说明: (1)、指令队列缓冲器:在执行指令的同时,将取下 条指令,并放入指令队列缓冲器中。CPU执行完 条指令后,可以指令下一条指令(流水线技术)。提 高CPU效率。 (2)、地址加法器:产生20位地址。CPU内无论是段 地址寄存器还是偏移量都是16位的,通过地址加法器 产生20位地址
(2)、16位指令指针寄存器IP(PC)。 (3)、20位的地址加法器。 (4)、六字节的指令队列缓冲器。 说明: (1)、指令队列缓冲器:在执行指令的同时,将取下 一条指令,并放入指令队列缓冲器中。CPU执行完一 条指令后,可以指令下一条指令(流水线技术)。提 高CPU效率。 (2)、地址加法器:产生20位地址。CPU内无论是段 地址寄存器还是偏移量都是16位的,通过地址加法器 产生20位地址
2、执行部件 作用: (1)、从指令队列中取出指令。 (2)、对指令进行译码,发出相应相应的控制信号。 (3)、接收由总线接口送来的数据或发送数据至接口。 (4)、进行算术运算。 执行部件的组成: (1)、四个通用寄存器AX、BX、CX、DX。 四个通用寄存器都是16位或作两个8位来使用。 (2)、专用寄存器
2、执行部件 作用: (1)、从指令队列中取出指令。 (2)、对指令进行译码,发出相应相应的控制信号。 (3)、接收由总线接口送来的数据或发送数据至接口。 (4)、进行算术运算。 执行部件的组成: (1)、四个通用寄存器AX、BX、CX、DX。 四个通用寄存器都是16位或作两个8位来使用。 (2)、专用寄存器
SP-堆栈指针寄存器 BP-基址指针寄存器 DI-的变址寄存器 SI 源变址寄存器 (3)、算术逻辑单元ALU 完成8位或者16位二进制算术和逻辑运算,计算偏移量。 (4)、数据暂存寄存器 协助ALU完成运算,暂存参加运算的数据 (5)、执行部件的控制电路 从总线接口的指令队列取出指令操作码,通过译码电路 分析,发出相应的控制命令,控制ALU数据流向
SP------堆栈指针寄存器 BP------基址指针寄存器 DI-------目的变址寄存器 SI------- 源变址寄存器 (3)、算术逻辑单元ALU 完成8位或者16位二进制算术和逻辑运算,计算偏移量。 (4)、数据暂存寄存器 协助ALU完成运算,暂存参加运算的数据。 (5)、执行部件的控制电路 从总线接口的指令队列取出指令操作码,通过译码电路 分析,发出相应的控制命令,控制ALU数据流向
(6)、标志寄存器 1-低8位有偶数个1 16位寄存器,其中有7位未用。 0-低8位有奇数个1 D15 DO OFDF IF TF SF ZF AF PF F 方单符零半奇进 向标志 步号标 偶借 中标志 进借位标志 标位 断志 志标 溢中 1-结果为0 志 出断 0-结果不为0 1-有进、借位 标允 0-无进、借位 志许 1-低4位向高4位有进、借位 0-低4位向高4位无进、借位
(6)、标志寄存器 16位寄存器,其中有7位未用。 D15 D0 OF DF IF TF SF ZF AF PF CF 进 借 位 标 志 奇 偶 标 志 半 进 借 位 标 志 零 标 志 符 号 标 志 单 步 中 断 中 断 允 许 方 向 标 志 溢 出 标 志 1-有进、借位 0-无进、借位 1-低8位有偶数个1 0-低8位有奇数个1 1-低4位向高4位有进、借位 0-低4位向高4位无进、借位 1-结果为0 0-结果不为0
3、8086/8088CPU执行程序的操作过程 (1)、20位地址的形成,并将此地址送至程序存储器 指定单元,从该单元取出指令字节,依次放入指令队 列中。 (2)、每当8086的指令队列中有2个空字节,8088指 令队列中有1个空字节时,总线接口部件就会自动取指 令至队列中。 (3)、执行部件从总线接口的指令队列首取出指令代 码,执行该指令。 (4)、当队列已满,执行部件又不使用总线时,总线 接口部件进入空闲状态。 (5)、执行转移指令、调用指令、返回指令时,先清 空队列内容,再将要执行的指令放入队列中
3、8086/8088CPU执行程序的操作过程 (1)、20位地址的形成,并将此地址送至程序存储器 指定单元,从该单元取出指令字节,依次放入指令队 列中。 (2)、每当8086的指令队列中有2个空字节,8088指 令队列中有1个空字节时,总线接口部件就会自动取指 令至队列中。 (3)、执行部件从总线接口的指令队列首取出指令代 码,执行该指令。 (4)、当队列已满,执行部件又不使用总线时,总线 接口部件进入空闲状态。 (5)、执行转移指令、调用指令、返回指令时,先清 空队列内容,再将要执行的指令放入队列中
2、1、28086/8088微处理器的引脚功能 根据所连的存储器和外设规模的不同,使它们可以在 两种模式下工作: 系统的最小模式:只有-80868088CPU。 系统的最大模式:有两个或两个以上的CPU,一个为 主CPU80868088,另一个为协CPU8087/8089 指令周期:执行一条指令所需要的时间 总线周期(机器周期):CPU通过总线与存储器或IO 接口进行一次数据传输所需的时间。 T状态(时钟周期):CPU处理动作的最小单位。 总线周期 T1 T2 T3 TW T4
2、1、2 8086/8088微处理器的引脚功能 根据所连的存储器和外设规模的不同,使它们可以在 两种模式下工作: 系统的最小模式:只有一8086/8088CPU。 系统的最大模式:有两个或两个以上的CPU,一个为 主CPU8086/8088,另一个为协CPU8087/8089。 指令周期:执行一条指令所需要的时间。 总线周期(机器周期):CPU通过总线与存储器或I/O 接口进行一次数据传输所需的时间。 T状态(时钟周期):CPU处理动作的最小单位。 T1 T2 T3 TW T4 总线周期