第一章 微型计机基础.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
教师联系方式 任课教师:刘 勇 办公室:工程楼 教师办公室 联系电话E-mail: rzliuyong@163.com 在编程结构下,按功能分可将8086分为两个部分:总线接口部件BIU(Bus Interface Unit)和执行部件EU(Execution Unit) 总线接口部件(BIU)的功能和组成: 功能:总线接口部件负责CPU与存储器、输入/输出设备之间的数据传送,包括对存储器读写数据操作、对I/O接口的读写操作以及取指令操作. 执行部件(EU)的功能和组成: 功能:负责指令的执行的部件. Intel 8088的功能结构 BIU和EU协调工作的管理原则: (1)当8086指令队列中有2个字节(8088有1个字节)为空时,BIU自动将指令取到指令队列中. (2)当EU执行一条指令时,它先从指令队列的队首取出指令代码,再用几个时钟周期去执行指令.在指令执行的过程中,如果必须访问存储器或I/O设备,则EU请求BIU进入总线周期去完成访问内存或I/O端口的操作.如果BIU此时正好空闲,则立即响应总线请求;如果此时BIU正在取指令,需完成当前取指令周期,然后去响应EU的总线请求. (3)当指令队列已满,而且EU对BIU无总线请求,BIU进入空闲状态. (4)当执行转移、调用和返回指令时,指令队列清零,BIU再向指令队列中装入另一个程序段的指令.原因是下面要执行的指令不是指令队列中的下一条指令了. 指令队列的存在使8086/8088的EU和BIU并行工作,从而减少了CPU为取指令而等待时间,提高了CPU的利用率,加快了整机的运行速度.在整个程序运行期间,BIU总是忙碌的,效率很高. 执行部件(EU)的组成: 组成:通用寄存器组、算术逻辑运算单元(ALU)、标志寄存器(FLAGS)和内部控制逻辑EU五部分组成. (1)数据寄存器 一般用于存放参与运算的数据或运算的结果.4个数据寄存器AX、BX、CX、DX既可以作为16位寄存器使用,也可以作为8位寄存器使用.用作8位寄存器时分别记为AH、AL、BH、BL、CH、CL、DH、DL. AX(AH、AL):累加器.有些指令约定AX(或AL)寄存器为累加器,如乘法、除法、输入/输出等指令.累加器:既向ALU提供操作数,又接收存放ALU的运算结果. MUL BL:BL×AL--AX BX(BH、BL):基址寄存器.可用作基址寻址的基址寄存器,在计算内存地址时,常用来存放基址. MOV AX,[BX] CX(CH、CL):计数寄存器.循环和串操作中用作计数器. DX(DH、DL):数据寄存器.除用作通用寄存器外,在I/O指令中用作端口地址寄存器,乘除指令中用作辅助累加器. IN AL,DX MUL BX:BX×AX--DX:AX (2)指针寄存器 堆栈指针寄存器SP(Stack Pointer) 基址指针寄存器BP(Base Pointer) BP、SP常用来指示堆栈段中相对于段起始地址的偏移量.BP一般用于访问堆栈段任意单元,SP用于访问堆栈段栈顶单元. MOV AX,[BP] (3)变址寄存器 源变址寄存器SI(Source Index) 目的变址寄存器DI(Destination Index) SI、DI常用于变址寻址方式,访问数据段任意单元. MOV AX,[SI] MOV AX,[DI] (3)标志寄存器(FLAGS) FLAGS共16位,其中7位未用,0~7位与Intel的8位微型机相同. 状态标志: CF(Carry Flag):进位标志.如果加法操作使最高位产生进位,或减法操作从最高位有借位时,CF为1,否则CF为0. PF(Parity Flag):奇/偶标志.如果运算结果中所含的1的个数为偶数,则PF为1,否则为0. AF(Auxiliary Carry Flag):辅助进位标志.字节运算时,低半个字节向高半个字节有进位或有借位时,AF=1,否则AF=0;字运算时,低字节向高字节有进位或有借位时,AF=1,否则AF=0. 状态标志: ZF(Zero Flag):零标志.如果当前运算的结果为零,则ZF为1,否则为0. SF(Sign Flag):符号标志位.当运算结果的最高位为1时SF=1,否则SF=0.指出当前运算执行后的结果是正还是负. OF(Overflow Flag):溢出标志.在运算过程中,如果操作结果超过了带符号数的范围则称为溢出,OF被置为1,否则OF置为0.如果8位带符号数的范围是-128~+127,16位带符号数的范围是-32768~+32767. 控制标志: DF(Direction Flag):方向标志.控制串操作命令方向的标志.如果DF为0,串操作过程中地址自增,DF为1,串操作过程中地址自减。 IF(Interru

文档评论(0)

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

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

1亿VIP精品文档

相关文档