8086/8088CPU的编程结构

编程结构是指从程序员和使用者的角度看到的结构,亦可成为功能结构。

功能结构 8086/8088由两部分组成,总线接口部件BIU和执行部件EU

8086/8088CPU的编程结构_第1张图片

BIU负责与存储器及I/O接口之间的数据传送操作。

四个段寄存器

CS  DS SS ES

16位的指针寄存器IP

20位地址加法器,产生20位地址

指令队列

8088指令队列4字节(8086为6字节),总线接口部件BIU从内存中去除指令,放在指令队列中;执行部件EU从指令队列中取指令并执行。

总线控制逻辑

发出读写信号,总线控制信号

EU负责指令的执行

通用寄存器

AX BX CX DX

指针和变址寄存器

SP 堆栈指针

BP 基址指针,构成段内偏移量

SI 原变址寄存器

DI 目的变址寄存器

算术逻辑单元(ALU)

标志寄存器

8086/8088CPU的编程结构_第2张图片

处理器内部是如何工作的?

1.每当取指令队列有空字节时,BIU开始进行取指令操作

2.首先地址加法器根据CS:IP产生20位地址,通过地址总线访问指定的存储器单元,然后由输入/输出控制电路向存储器发出读控制信号。

3. 当存储器得到读控制信号,存储器将指令的存储单元的指令取出,通过数据总线放入指令队列中。

4.每当EU准备执行一条指令时,他会从BIU部件的指令队列前部取出指令的代码,经过译码分析后启动各个运算部件

5.当指令队列已满,且EU又没有总线访问请求时,BIU便进入空闲状态。

6.在执行转移指令、调用指令和返回指令时,实际上是修改CS和IP。由于待执行指令的顺序发生了变化,则指令队列中已经装入的字节被自动消除,BIU会接着往指令队列装入转向的另一程序段的指令代码。

谢谢我的唐老师。

你可能感兴趣的:(8086/8088CPU的编程结构)