文档详情

第02章 80X86微处理器(新).ppt

发布:2017-09-22约1.58万字共81页下载文档
文本预览下载声明
串行工作方式: 8086以前的CPU采用串行工作方式: 并行工作方式: 8086CPU采用并行工作方式 8086的流水线操作 8086 CPU包括两大部分:EU和BIU BIU不断地从存储器取指令送入指令队列寄存器IPQ,EU不断地从IPQ取出指令执行 EU和BIU构成了一个简单的2工位流水线 指令预取队列IPQ是实现流水线操作的关键(类似于工厂流水线的传送带) 新型CPU将一条指令划分成更多的阶段,以便可以同时执行更多的指令 例如,PIII为14个阶段,P4为20个阶段(超级流水线) 8088/8086 CPU的特点 采用并行流水线工作方式 对内存空间实行分段管理: 每段大小为16B~64KB 用段地址和段内偏移实现对1MB空间的寻址 设置地址段寄存器指示段的首地址 支持多处理器系统; 片内没有浮点运算部件,浮点运算由数学协处理器8087支持(也可用软件模拟) 注:80486DX以后的CPU均将数学协处理器作为标准部件集成到CPU内部 二、8086的内部结构 一 执行单元EU 二、8086的内部结构 二 总线接口单元BIU (一)功能: 从内存中取指令送入指令预取队列 负责与内存或输入/输出接口之间的数据传送 在执行转移程序时,BIU使指令预取队列复位,从指定的新地址取指令,并立即传给执行单元执行。 二、8086的内部结构 三、 8086/8088的内部寄存器 数据寄存器 变址寄存器 (二) 段寄存器 用于存放逻辑段的段基地址 (逻辑段的概念后面将要介绍) CS:代码段寄存器(Code Segment) 代码段用于存放指令代码 DS:数据段寄存器(Data Segment) 用来存放操作数 ES:附加段寄存器(Extra Segment) 用来存放操作数 SS:堆栈段寄存器(Stack Segment) 用于存放返回地址 保存寄存器内容,传递参数 (三) 控制寄存器 IP:指令指针寄存器(Instructiong Pointer) 内容为下一条要执行的指令的偏移地址 FLAGS:标志寄存器 状态标志:存放运算结果的特征 6个状态标志位(CF,SF,AF,PF,OF,ZF) 控制标志:控制某些特殊操作 3个控制标志位(IF,TF,DF) ?状态标志位: CF:进位标志(Carry flag) CF=1表示最高位向前有进位或借位,否则,CF=0 PF:奇偶标志(Parity Flag) 运算结果低8位中1为偶数个时PF=1,否则PF=0 AF:辅助进位标志(Auxiliary Flag) AF=1表示8位运算低4位向高4位的进借位,否则AF=0 ZF:零标志(Zero Flag) 算数逻辑运算结果为0,则ZF=1 SF:符号标志(Sign Flag) 操作运算的最高位 OF:溢出标志(Overflow Flag) OF=1溢出,否则OF=0,OF=C最高位⊕C次高位 存储器的管理: 存储器编址 存储器分段和物理地址生成 堆栈和栈操作指令 二、8086的内部结构 一、存储器编址 二、存储器分段和物理地址的生成 逻辑段的分配 已知CS=1055H,DS=250AH,ES=2EF0H,SS=8FF0H, DS段有一操作数,其偏移地址=0204H, 1)画出各段在内存中的分布 2)指出各段首地址 3)该操作数的物理地址=? 三、堆栈及堆栈段的使用 内存中按LIFO方式操作的特殊区域 每次压栈和退栈均以WORD为单位 SS堆栈段地址,SP段内偏移 SS:SP为堆栈指针 堆栈用于存放返回地址、过程参数或需要保护的数据 常用于响应中断或子程序调用 堆栈操作对标志位的影响 状态标志寄存器进栈指令PUSHF 出栈指令POPF 2.2 8086的引脚信号和工作模式 ■一、8086的引脚信号特点 ?8086芯片共有40个引脚,双列直插式芯片。部分引脚具有双重定义和功能。 ?减少引脚线:地址/数据线分时复用; AD0~AD15 地址/状态分时复用高4位地址 A16/S3、A17/S4、A18/S5、A19/S6 ?实现不同
显示全部
相似文档