3.BIU和EU的流水线管理(1)每当8086的指令队列中有2个空字节或8088的指令队列有1个空字节,BIU就会自动把后面的指令从存储器取到指令队列中,从而提高了CPU执行指令的速度。(2)每当EU准备执行一条指令时,它会从指令队列前部取出指令,进行译码,然后去执行。在执行指令时,如果必须访问存诸器或I/O端口,EU就会请求BIU去完成访问外部的操作,如果此时BIU正好处于空闲状态,那么会立即响应EU的请求。若EU向BIU发出请求访问时,BIU正在将某条指令取到指令队列中,此时BIU首先完成取指令操作,然后再去响应EU发出的访问外界的请求
3.BIU和EU的流水线管理 (1)每当8086的指令队列中有2个空字节或8088的指 令队列有1个空字节,BIU就会自动把后面的指令从 存储器取到指令队列中,从而提高了CPU执行指令 的速度。 (2)每当EU准备执行一条指令时,它会从指令队列前 部取出指令,进行译码,然后去执行。在执行指令 时,如果必须访问存储器或I/O端口,EU就会请求 BIU去完成访问外部的操作,如果此时BIU正好处于 空闲状态,那么会立即响应EU的请求。若EU向BIU 发出请求访问时,BIU正在将某条指令取到指令队 列中,此时BIU首先完成取指令操作,然后再去响 应EU发出的访问外界的请求
3.BIU和EU的流水线管理(续)(3)当指令队列已满,且EU对BIU又没有总线访问请求时,BIU进入空闲状态(4)在执行转移指令、调用指令和返回指令时如果要执行的指令不在指令队列中,则指令队列中原有内容被自动清除,BIU会重新取指令,把将要转入的程序段的指令装入到指令队列中
3.BIU和EU的流水线管理(续) (3)当指令队列已满,且EU对BIU又没有总线访 问请求时,BIU进入空闲状态。 (4)在执行转移指令、调用指令和返回指令时, 如果要执行的指令不在指令队列中,则指令 队列中原有内容被自动清除,BIU会重新取 指令,把将要转入的程序段的指令装入到指 令队列中
2.1.28086/8088CPU的寄存器结构AHAL累加器BHBL基址寄存器数据寄存器CHCL计数寄存器DHDL数据寄存器通用寄存器SP璀栈指针寄存器BP基址指针寄存器地址指针和变址寄存器SI源变址寄存器DI目的变址寄存器IP指令指针寄存器FR标志寄存器CS代码段寄存器DS数据段寄存器段寄存器SS堆栈段寄存器ES时加段寄存器图2.28086/8088的寄存器结构
2.1.2 8086/8088 CPU的寄存器结构
1.通用寄存器分为:数据寄存器地址寄存器
1.通用寄存器 分为: ◼ 数据寄存器 ◼ 地址寄存器
1)数据寄存器>EU中有4个16位的数据寄存器AX、BX、CX、DX每个数据寄存器又可分为高字节H和低字节I寄存器,即AH、BH、CH、DH和AL、BL、CL、DL两组。>16位数据寄存器主要用于存放数据,也可存放地址,而8位寄存器只能用于存放数据,它们均可以用寄存器名来独立寻址、独立使用
1)数据寄存器 ➢ EU中有4个16位的数据寄存器AX、BX、CX、 DX ➢ 每个数据寄存器又可分为高字节H和低字节L 寄存器,即AH、BH、CH、DH和AL、BL、 CL、DL两组。 ➢ 16位数据寄存器主要用于存放数据,也可存放 地址,而8位寄存器只能用于存放数据,它们 均可以用寄存器名来独立寻址、独立使用