微处理器的程序结构.pptVIP

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微处理器的程序结构

第 3 章 8086/8088微处理器;8086微处理器是Intel系列的16位微处理器,内部包含约29000个半导体管。 16根数据线,可以同时处理16位二进制数据 20根地址线,可用20位二进制数码编写地址,存储器以字节(8位二进制数据)为单位组织存储,可寻址的地址空间可达220,即1M字节 时钟频率为5MHz,工作时,只要一个5V电源, 除了数据总线宽度不同外,8088与8086在其他方面几乎完全相同。它们的另一个突出特点是其多重处理的能力,能极方便的和数值数据处理器(NPX)8087,输入输出I/O处理器(IOP)8089或其他处理器组成多处理器系统,大幅度提高系统数据吞吐能力和数据处理能力。;3.1.1 8086/8088的功能结构;一、总线接口部件 BIU ; (1)4个16位的段地址寄存器: CS——16位的代码段寄存器:用来存放当前程序所在段的段基; DS——16位的数据段寄存器:用来存放当前程序所用数据段的段基址; ES——16位的扩展段寄存器:用来存放辅助数据所在段的段基址; SS——16位的堆栈段寄存器:用来存放当前程序所用堆栈段的段基 (2)16位的指令指针寄存器IP:用来存放下一条指令的偏移地址,IP在当前程序运行中能够进行自动加1的修正,使其指向下一条指令; (3)20位的地址加法器:用来形成20位的物理地址; (4)6字节的指令队列缓冲器。 (5)总线控制部件,用来产生并发出总线控制信号,实现对存储器、I/O端口的读写控制,并将内部总线与外部总线相连接。;二、执行部件EU;(1)算术逻辑单元ALU: 进行算术、逻辑运算,以及按照寻址方式计算寻址单元的偏移量。 (2)暂存器: 协助ALU完成运算,暂时存放参加运算的数据。 (3)16位的标志寄存器FR: 存放控制标志和反映CPU运行的状态特征。;(4)通用寄存器组:包括4个通用寄存器,即AX(也称累加器)、BX、CX、DX;以及4个专用寄存器: 基数指针寄存器BP:存放数据段中某一单元的偏移地址;也可指示堆栈段中某一单元的偏移地址;堆栈指针寄存器SP:存放堆栈栈顶偏移地址; 源变址寄存器SI: 与数据段寄存器DS连用,确定数据段中某一存储单元的地址; 目的变址寄存器DI:与数据段寄存器DS连用,确定数据段中某一存储单元的地址; (5)EU控制电路: 由定时电路、控制电路和状态逻辑电路组合而成。;;3.1.2 8086/8088的编程结构;1.通用寄存器 通用数据寄存器 用来存放8位、16位或32位的操作数。由于具有良好的通用性,因而被称为通用寄存器,其中包括AX,BX,CX,DX。通用寄存器主要用来保存算术或逻辑运算的操作数、中间运算结果。它们既可以作为一个16位的寄存器使用,也可以分别作为两个8位的寄存器使用,高位字节的寄存器为AH,BH,CH,DH;低位字节的寄存器为AL,BL,CL,DL。 指针寄存器和变址寄存器 堆栈指针寄存器ESP、 基址指针寄存器EBP 源变址寄存器ESI、 目的变址寄存器EDI;2.指令指针寄存器 EIP;寄存器 ;CX; 标志寄存器共有16位,其中有7位未用,已用的9个标志位按功能可分为6个条件标志和3个控制标志。 (1)条件标志 (条件标志用于存放程序运行的状态信息,由硬件自动设定。控 制标志由软件设定,用于中断、串操作等控制): OF:溢出标志。反映带符号数运算结果是否超过机器所能表示的数值范围,对字节运算为-128~+127,对字运算为-32768~+32767。若超过上述范围称为“溢出”,OF置1。否则,置0。实际机器在进行处理时,是判断最高位的进位(CF)与次高位的进位是否相同,若二者相同,则OF=0。否则,OF=1。;SF:符号标志 反映运算结果的符号。若结果为负数,即最高位为1时,SF置1,否则,置0。SF取值与运算结果最高位一致。 ZF:零标志 反映运算结果是否为零。若结果为零,ZF置1,否则,置0。 AF:半进位标志。反映一个8位量的低4位向高4位有无进位或借位。有则置1,否则,置0。用于BCD码算术运算指令。PF:奇偶标志。反映操作结果的低8位中“1”的个数的奇偶性。若“1”的个数为偶数,PF置1,否则,置0。 CF:进位标志 反映算术运算后最高位出现进位或借位的情况。有则置1,否则,置0。移位和循环指令也会改变CF的值。;(2)控制标志 DF:方向标志 进行字符串操作时,每执行一条串操作指令,对地址会进行一次自动调整,由DF决定地址是增还是减。若DF为1,则为减,否则为增。 IF:中断

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档