欢迎来到天天文库
浏览记录
ID:37422275
大小:862.31 KB
页数:86页
时间:2019-05-12
《微处理器及其系统(2010.9)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2章8086微处理器及其系统2.18086微处理器2.28086系统的存储器组织及I/O组织2.38086系统配置2.48086的操作时序2.18086微处理器1978年,Intel公司推出16位微处理器8086。8086CPU具有16位数据总线和20位地址总线,数据总线与地址总线分时复用,寻址范围为1MB。CPU存储器存储器I/O接口I/O接口外部设备ABDBCB2.1.18086CPU的结构8086的内部结构从功能分EU和BIU:AHALBHBLCHCLDHDLSPBPSIDICSDSSSESIP124653标志寄存器总线控制逻辑指
2、令队列EU控制ALU∑BIU单元EU单元AXBXCXDX内部寄存器地址加法器段寄存器指令指针寄存器外部总线EU(执行单元):负责指令的译码、执行和数据的运算BIU(总线接口单元):管理8086与系统总线的接口,负责CPU对存储器和I/O进行访问两个单元相互独立,分别完成各自操作两个单元可以并行执行,实现指令取指和执行的流水线操作EU组成:内部寄存器(8个16位:AX、BX、CX、DX、SP、BP、SI、DI)ALU和标志寄存器:FREU控制电路AHALBHBLCHCLDHDLEU:内部寄存器●8086共有8个16位的内部寄存器,分为两组:
3、SPBPSIDIAXBXCXDX●通用寄存器●指针和变址寄存器SP(StackPointerRegister)堆栈指针寄存器BP(BasicPointerRegister)基址指针寄存器SI(SourceIndexRegister)源变址寄存器DI(DestinationIndexRegister)目的变址寄存器BP、SP:指针寄存器,一般用于存放堆栈段SI、DI:变址寄存器:SI一般用于数据段、DI一般用于数据段或附加段4个16位通用寄存器AX:累加器(AH、AL)BX:基址寄存器(BH、BL)CX:计数寄存器(CH、CL)DX:数据寄
4、存器(DH、DL)EU:标志寄存器FR标志寄存器(FlagRegister)共有16位,其中7位未用。标志寄存器内容如图:OFDFIFTFSFZF―AF―PF―CF15~12111098765432101.条件标志(OF、SF、ZF、AF、PF、CF)-----共6位,用于寄存程序运行的状态信息,这些标志往往用作后续指令判断的依据。根据运算结果由硬件自动产生;2.控制标志(DF、IF、TF)-----共3位,用于控制机器或程序的某些运行过程。需通过指令设置OFDFIFTFSFZF―AF―PF―CF15~1211109876543210●C
5、F(CarryFlag)进位标志-----反映在运算结果的最高位有无进位或借位。EU:标志寄存器OFDFIFTFSFZF―AF―PF―CF15~1211109876543210●PF(ParityFlag)奇偶标志-----反映运算结果中“1”的个数的奇偶性,主要用于判断数据传送过程中是否出错。若结果的低8位中有偶数个“1”,则PF=1,否则PF=0。EU:标志寄存器OFDFIFTFSFZF―AF―PF―CF15~1211109876543210●AF(AuxiliaryFlag)辅助进位标志-----加减运算时,若D3向D4产生了进位或
6、借位则AF=1,否则AF=0。在BCD码运算时,该标志用于十进制调整。EU:标志寄存器OFDFIFTFSFZF―AF―PF―CF15~1211109876543210●ZF(ZeroFlag)零标志-----反映计算结果是否为0。若结果为零则ZF=1,否则ZF=0。EU:标志寄存器OFDFIFTFSFZF―AF―PF―CF15~1211109876543210●SF(SignFlag)符号标志-----反映计算结果最高位即符号位的状态。如果运算结果的最高位为1则SF=1(对带符号数即为负数),否则SF=0(对带符号数即为正数)。EU:标志
7、寄存器OFDFIFTFSFZF―AF―PF―CF15~1211109876543210●OF(OverflowFlag)溢出标志-----反映运算结果是否超出了带符号数的表数范围。EU:标志寄存器OFDFIFTFSFZF―AF―PF―CF15~1211109876543210●DF(DirectionFlag)方向标志-----用于串处理指令中控制串处理的方向。DF=1:对SI、DI自动减量,高-低地址DF=0:对SI、DI自动增量,低-高地址DF标志可由STD置1,CLI清0EU:标志寄存器OFDFIFTFSFZF―AF―PF―CF15
8、~1211109876543210●IF(InterruptFlag)中断允许标志----用于控制CPU是否允许相应可屏蔽中断请求。----IF=1:允许响应可屏蔽中断----IF=0:禁止响
此文档下载收益归作者所有