第3章第1节..docVIP

  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文档。上传文档
查看更多
第三章 8086/8088 指令系统 基本概念: 指令—规定CPU从事某一特定运算的代码。 指令系统—是微处理器所能执行的各种指令的集合,该指令集定义了计算机硬件所能完成的基本操作。不同的微处理器有不同的指令系统。 8086/8088 CPU指令系统是80X80/Pentium系列微处理器的基本指令集。 §3.1 8086/8088 指令格式与寻址方式 3.1.1 指令格式简介 一:指令通常由操作码与操作数两部分组成。 操作码指出操作的性质,即指示计算机执行什么操作。如:加法、乘法?还是数据比较?等等。 操作数给出操作的对象,即操作过程中所需要的数据。如:加法中的加数、被加数等。 [举例]:ADD AH,30H; 上述指令中:ADD为操作码,AH与30H均为操作数。 二:指令有无操作数指令、单操作数指令及双操作数指令之分。如果是双操作数,要用逗号将两个操作数分开;逗号右边的操作数称为源操作数,左边的称为目的操作数; [举例]:无操作数指令: STI CLD 单操作数指令: PUSH AX INC BX 双操作数指令: ADD AH,30H; AH是目的操作数,30H为源操作数。 MOV AX,BX 三:操作码是非常明确与清晰的,且简单易懂;但操作数的获得是比较复杂的,形式多种多样。这种寻找操作数的问题就是寻址方式问题。 3.1.2 8086/8088的寻址方式 一:寻址方式与有效地址 ▲ 寻址方式--就是寻找指令中操作数的方式。 8086/8088CPU指令中,操作数有三种可能存放的位置: 1:操作数包含在指令中,即指令的操作数部分就是操作数本身。这种操作数叫立即数,对应的寻址方式称为立即寻址(立即数寻址)。 2:操作数放在CPU的某个寄存器中;这时,操作数部分只是CPU内部寄存器的一个编码。对应的寻址方式称为寄存器寻址。 3:操作数放在内存的数据区中;此时,指令的操作数部分实际包含的是操作数所在内存的地址。这种寻址方式称为存储器寻址。 ▲ 有效地址—存储器寻址方式中,指令的操作数部分给出的是实际操作数所在内存单元的段内偏移地址,称为有效地址。(EA—Efficient Address)。 有效地址EA由三部分组成,分别是:①基址寄存器(BX,BP)的内容;②变址寄存器(SI,DI)内容;③位移量。 有效地址EA的计算公式如下: EA=[基址寄存器]+[变址寄存器]+位移量 由上述公式可组合出多种存储器寻址方式。望牢记! 注意:由于我们只学习8086/8088指令系统,因此,我们不讲述32位寻址的情况。 二:各种寻址方式详细介绍 1:立即寻址--Immediate Addressing; 特点:(1)立即寻址方式下,操作数作为立即数直接包含在指令中,它跟在操作码之后一起放在代码段;(2)立即数可以总是和操作码一起被取入CPU的指令队列,在指令执行时,不需再访问存储器;(3)立即数可以是8位或16位的(对8086/8088系统而言)。若是16位的,则低字节放在相邻两单元的低地址单元; (4)立即寻址只用于源操作数。 [举例]:MOV BL,12H 该指令执行后, BL=12H MOV AX,1234H 指令执行后, AX=1234H (AH=12H, AL=34H) 2: 寄存器寻址-- Register Addresssing 所谓寄存器寻址就是实际操作数存放在指令规定的8位或16位寄存器中; [举例]:MOV DX,AX; 设指令执行前,AX=5678H, DX=1234H; 则执行后,DX=5678H,AX内容不变。 注意:源操作数与目的操作数的长度必须一致,否则就会出错。 优点:指令实行过程中,CPU不需访问总线周期,速度快。 3:存储器寻址方式-- Memory Addressing 在上一部分内容中,我们已经知道,存储器寻址的关键是获得实际操作数所在内存单元的有效地址EA,而EA是由几个部分组合得到的,因此,存储器寻址又分为好几种类型。但无论哪种存储器寻址,实际操作数都是在存储区中。 (1)直接寻址—Direct Addressing 直接寻址是存储器直接寻址的简称,是最简单的存储器寻址方式,在该方式中,指令的操作数部分直接给出实际操作数的有效地址EA,也即:EA只由其计算公式的最后一项(位移量)组成。 段寄存器的认定: ① 一般情况下,实际操作数默认在数据段中(DS段中)。 ② 可以在指令中中增加段前缀以规定段寄存器名,称为段超越。 [举例]:MOV AX,[2000H];将数据段中2000H和2

文档评论(0)

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

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

1亿VIP精品文档

相关文档