微机原理与接口技术——2、8088/8086微处理器

第八讲 8088微处理器

CPU的特点

采用并行流水线工作方式
	通过设置指令预取队列实现(CPU内部结构)
对内存空间实行分段管理
	将内存分为4个段并设置地址段寄存器,以实现对1MB空间的寻址(实模式存储器寻址)
支持协处理器/支持多处理器的工作模式
	用于浮点运算

CPU的两种工作模式

最大模式

多处理器模式,部分控制信号由外部总线控制器产生

最小模式

单处理器模式,所有控制信号由微处理器产生。

ALE->地址锁存器

两种工作模式的选择方式

8088是工作在最小还是最大模式由MN/#MX引线的状态决定。

第九讲 8088主要引线及内部结构

8088CPU最小模式下的主要引脚信号

8088最小模式下的主要引脚信号–>4组

完成一次访问内存或接口所需要的主要信号

地址线和数据线

AD0——AD7:低8位地址和低8位数据信号分时复用。在传递地址信号时为单向,传送数据信号时为双向。
A16——A19:高4位地址信号,与状态信号分时复用。
A8——A15:8位地址信号。
#WR:写信号;
#RD:读信号;
IO/#M:为‘0’表示访问内存,为‘1’表示访问接口;
#DEN:低电平有效时,允许进行读/写操作;
DT/#R:数据收发器的传送方向控制;
ALE:地址锁存信号;
RESET:复位信号。
与外部同步控制信号
READY信号(外部同步控制信号):CPU访问一次内存或接口所需要的一次访问周期
完成一次访问约需要4个周期,称为总线周期;但有时也不一定4个就完成。所以在T3时刻检测READY信号,为低电平时,在后插入Tw,知道READY为高电平停止插入Tw。
中断请求和响应信号
INTR:可屏蔽中断请求输入端
NMI:非屏蔽中断请求输入端
#INTA:中断响应输出端
总线保持和响应信号
HOLD:总线保持请求信号输入端。当CPU以外的其他设备要求占用总线时,通过该引脚向CPU发出请求。
HLDA:总线保持响应信号输出端。CPU对HOLD信号的响应信号。

8088和8086CPU引线功能比较

数据总线宽度不同。

8088的外部总线宽度是8位,8086为16位。

访问存储器和输入输出控制信号含义不同

8088——IO/M=0表示访问内存;
8086——IO/M=1表示访问内存。

其他部分引线功能的区别

8088内部结构

微处理器
	运算器
	控制器
	寄存器

8088内部结构

执行单元(RU)
构成

运算器
8个通用寄存器
1个标志寄存器
EU部分控制电路

功能

指令译码
指令执行
暂存中间运算结果
保存运算结果特征

总线接口单元(BIU)
功能:

从内存中取指令到指令预取队列

指令预取队列是并行流水线工作的基础

负责与内存或输入/输出接口之间的数据传送
在执行转移程序时,BIU使指令预取队列复位,从指定的新地址取指令,从指定的新地址取指令,并立即传给执行单元执行。

结论

指令预取队列的存在使EU和BIU两个部分可同时进行工作
实现指令的并行执行
提高了CPU的效率
降低了对存储器存取速度的要求

8088CPU内部寄存器

内部寄存器的类型

含有14个16位寄存器,按功能分三类
	8个通用寄存器
	4个段寄存器
	2个控制寄存器
通用寄存器

通用用法

暂存中间结果
数据寄存器(AX,BX,CX,DX)

8088/8086含4个16位数据寄存器,有可分为8个8位寄存器
AX——AH+AL
BX——AH+AL
CX——AH+AL
DX——AH+AL
特有的习惯用法

AX:累加器
	所有I/O指令都通过AX与接口传送信息,中间运算结果也多放于AX中;
BX:基址寄存器
	在间接寻址中用于存放基地址;
CX:计数寄存器
	用于在循环或串操作指令中存放计数值;
DX:数据寄存器
	在间接寻址的I/O指令中存放I/O端口地址;在32位乘除法运算时,存放高16位数;
地址指针寄存器(SP,BP)
SP:堆栈指针寄存器
	内容为栈顶的偏移地址
BP:基址指针寄存器
	常用于在访问内存时存放内存单元的偏移地址

变址寄存器(SI,DI)
SI:源变址寄存器
DI:目标变址寄存器
变址寄存器在指令后中常用于存放数据在内存中的地址。

总结

BX与BP在应用上的区别
作为通用寄存器,二者均可存放数据;
作为基址寄存器,用BX表示所寻找的数据在数据段;用BP则表示数据在堆栈段。

控制寄存器
IP:指令指针寄存器
内容为下一条要取的指令的偏移地址。
FLAGS:标志寄存器
存放运算结果的特征
6个状态标志位(CF,SF,AF,PF,OF,ZF)
3个控制标志位(IF,TF,DF)
状态标志位

对十六位/八位有效
CF:进位标志位

加(减)法运算时,若最高位有进(借)位则CF=1

OF:溢出标志位

当算数运算的结果超出了有符号数的可表示范围时,OF=1

ZF:零标志位

当运算结果为零时ZF=1

SF:符号标志位
当运算结果最高位为1时,SF=1

对八位有效
PF:奇偶标志位

运算结果的低八位中“1”的个数为偶数时PF=1

AF:辅助进位标志

加(减)操作中,若第三位向第四位有进位(借位),AF=1
控制标志位

TF:陷阱标志位(跟踪标志位)

TF=1时,使CPU处于单步执行指令的工作方式。

IF:中断允许标志位

IF=1使CPU可以响应可屏蔽中断请求

DF:方向标志位

在数据串操作时确定操作的方向。
段寄存器

作用

用于存放相应逻辑段的段基地址

8086/8088内存中逻辑段的类型

代码段-->存放指令代码
数据段-->存放操作的数据
附加段-->存放操作的数据
堆栈段-->存放暂时不用但需保存的数据。

CS:代码段寄存器

存放代码段的段基地址

DS:数据段寄存器

存放数据段的段基地址

ES:附加段寄存器

存放数据的段基地址

SS:堆栈段寄存器

存放堆栈段的段基地址
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值