微机原理21:8088cpu内部结构、寄存器组、存储器组织.ppt

微机原理21:8088cpu内部结构、寄存器组、存储器组织.ppt

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理21:8088cpu内部结构、寄存器组、存储器组织

一、 8086/8088CPU的内部结构 算术逻辑单元(运算器) 寄存器组 指令处理单元(控制器) 8088/8086的功能结构 16位微处理器也具有以上结构中的基本单元,但更为复杂。 以8088为例讲解16位微处理器的功能结构。 8088是8086的简化版本。 8088的编程结构从功能分成两个单元 总线接口单元BIU (Bus Interface Unit)——管理8088与系统总线的接口,负责CPU对存储器和外设进行访问 执行单元EU (Execution Unit)——负责指令的译码、执行和数据的运算 两个单元相互独立,分别完成各自操作 两个单元可以并行执行,实现指令取指和执行的流水线操作 并行操作的意义 EU执行指令的同时,BIU可以继续读取后续指令,并存入指令队列(first in first out)。这叫做“指令预取”。 8位的CPU没有指令预取功能,执行指令前必须等待“取指”操作完成。 取指操作是CPU最频繁的操作。 这种操作方式节省了CPU大量的取指等待时间。 “指令流水线”。 二、 8088寄存器结构 8088共有8个的通用寄存器,1个标志寄存器,4个段寄存器和1个指令指针寄存器。 1、通用寄存器 ① 数据寄存器 共AX、BX、CX、DX四个,每个寄存器即可作为16位寄存器,又可拆分为两个8位寄存器,此时记为AH、AL、BH、BL等。 AX(AH、AL):累加器accumulator BX(BH、BL):基址寄存器base CX(CH、CL):计数寄存器counter DX(DH、DL):数据寄存器data ②指针和变址寄存器 共BP、SP、SI、DI四个 BP:基址指针寄存器Base Pointer ,默认表示堆栈段基地址; SP:堆栈指针寄存器Stack Pointer,指示栈顶 SI:源变址寄存器Source Index DI:目的变址寄存器Destination Index 标志寄存器(FR:Flag Register)是一个十六位的寄存器,但只利用了其中的9位:六个条件标志和三个控制标志。 进位标志CF(Carry Flag) 当运算结果的最高有效位有进位(加法)或借位(减法)时,进位标志置1,即CF = 1;否则 CF=0。 例如(以8位运算为例,8088中为16位): 3AH + 7CH=B6H 没有进位:CF=0 AAH + 7CH=(1)26H 有进位:CF=1 溢出标志OF(Overflow Flag) 若算术运算的结果有溢出,则OF=1;否则 OF=0。例如: 问题: 什么是溢出? 溢出和进位有什么区别? 处理器怎么处理,程序员如何运用? 如何判断是否溢出? 什么是溢出 处理器内部以补码表示有符号数 8位表达的整数范围是:+127 ~ -128 16位表达的范围是:+32767 ~ -32768 如果运算结果超出这个范围,就产生了溢出 有溢出,说明有符号数的运算结果不正确 溢出和进位的对比 处理器对两个操作数进行运算时,按照无符号数求得结果,并相应设置进位标志CF;同时,根据是否超出有符号数的范围设置溢出标志OF 应该利用哪个标志,则由程序员来决定。也就是说,如果将参加运算的操作数认为是无符号数,就应该关心进位;认为是有符号数,则要注意是否溢出。 全零标志ZF(Zero Flag) 若运算结果为全0,则ZF=1,否则ZF=0。 例如: 3AH + 7CH=B6H 结果不是零:ZF=0 86H + 7CH=00H 结果是全零:ZF=1 符号标志SF(Sign Flag) 运算结果最高位为1,则SF=1;否则SF=0。 例如: 3AH + 7CH=B6H 最高位D7=1:SF=1 86H + 7CH=00H 最高位D7=0:SF=0 有符号数利用最高有效位(MSB)来表示它的符号。所以,运算结果的MSB与符号标志SF相一致。 奇偶标志PF(Parity Flag) 当运算结果最低字节中“1”的个数为零或偶数时,PF=1;否则PF=0(奇校验)。 例如: 3AH + 7CH=B6H, 结果中有5个1,是奇数,则 PF=0 注意:PF标志仅反映最低8位中“1”的个数是偶或奇,即使是进行16位字操作。 辅助进位标志AF(Auxiliary Carry Flag) 运算时D3位(低半字节)有进位或借位时,AF=1;否则AF=0。 这个标志主要由处理器内部使用,用于十进制算术运算的调整,用户一般不必关心。 方向标志DF(

文档评论(0)

sandaolingcrh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档