网站大量收购独家精品文档,联系QQ:2885784924

微型计算机原理PPT电子课件教案-第4章 80x86指令系统.ppt

微型计算机原理PPT电子课件教案-第4章 80x86指令系统.ppt

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

第4章 80x86指令系统 ;4.1 8086/8088指令系统 ; 8086/8088指令系统的指令类型较多,功能很强。各种指令由于功能不同,需要指令码提供的信息也不同。为了满足不同功能的要求又要尽量减少指令所占的空间,8086/8088指令系统采用了一种灵活的、由1~6个字节组成的变字长的指令格式,包括操作码、寻址方式以及操作数三个部分,如图4.1所示。 通常指令的第一字节为操作码字节(OPCODE),规定指令的操作类型;第二字节为寻址方式字节(MOD),规定操作数的寻址方式;接着以后的3~6字节依据指令的不同而取舍,可变字长的指令主要体现在这里,一般由它指出存储器操作数地址的位移量或立即数。 ;图4.1 8086/8088不同字长的指令码格式 ;操作码/寻址方式字节格式如下: ; REG字段规定一个寄存器操作数,它作为源操作数还是目的操作数已由第一字节中的D位规定。由REG字段选择寄存器的具体规定如表4.1所示。 ; MOD字段用来区分另一个操作数在寄存器中(寄存器寻址)还是在存储器中(存储器寻址),在存储器寻址的情况下,还用来指出该字节后面有无位移量,有多少位位移量。MOD字段的编码如表4.2所示。 ; R/M字段受MOD字段控制。MOD=11为寄存器方式,R/M字段将指出第二操作数所在的寄存器编号;MOD=00,01,10为存储器方式,R/M则指出如何计算存储器中操作数的偏移地址。MOD与R/M字段组合的寻址方式见表4.3。 ;表4.3 MOD与R/M字段组合的寻址方式 ;例4.1 MOV AH,[BX+DI+50H] 代码格式: ; 例 4.2 ADD disp[BX][DI],DX ;disp=2345H 代码格式: ;4.1.2 8086/8088指令系统的寻址方式 1.操作数的种类 ; 2) 地址操作数 这类操作数是与程序转移地址有关的操作数,即指令中操作的对象不是数据,而是要转移的目标地址。它也可以分为立即数操作数、寄存器操作数和存储器操作数,即要转移的目标地址包含在指令中,或存放在寄存器中,或存放在存储单元之中。 对于数据操作数,有的指令有两个操作数:一个称为源操作数,在操作过程中其值不改变;另一个称为目的操作数,操作后一般被操作结果代替。有的指令只有一个操作数,或没有(或隐含)操作数。 对于地址操作??,指令只有一个目的操作数,它是一个供程序转移的目标地址。 ; 2.寻址方式 所谓寻址方式,就是指指令中给出的寻找操作数(包括数据操作数和地址操作数)的方法。根据操作数的种类,8086/8088指令系统的寻址方式分为两大类:数据寻址方式和地址寻址方式。 1) 数据寻址方式 数据寻址方式可分为立即数寻址方式、寄存器寻址方式、存储器寻址方式和I/O端口寻址方式四种类型。 ; (1) 立即数寻址方式(Immediate Addressing)。立即数寻址方式所提供的操作数直接包含在指令中,紧跟在操作码之后,它作为指令的一部分,这种操作数称为立即数。立即数可以是8位的,也可以是16位的。如果是16位数,则高位字节存放在高地址存储单元中,低位字节存放在低地址存储单元中。例如: MOV BL,80H MOV AX,1090H 则指令执行情况如图4.2所示。执行结果为:(BL)=80H,(AX)=1090H。 ;图4.2 立即数寻址方式指令的执行情况 ; (2) 寄存器寻址方式(Register Addressing)。寄存器寻址方式的操作数存放在指令规定的寄存器中,寄存器的名字在指令中指出。对于16位操作数,寄存器可以是AX、BX、CX、DX、SI、DI、SP或BP。对于8位操作数,寄存器可以是AH、AL、BH、BL、CH、CL、DH或DL。例如: MOV CL,DL MOV AX,BX 如果(DL)=50H,(BX)=1234H,则指令执行情况如图4.3所示。执行结果为:(CL)=50H,(AX)=1234H。 ;图4.3 寄存器寻址方式的指令执行情况 ; (3) 存储器寻址方式(Memory Addressing)。存储器寻址方式的操作数存放在存储单元中。在第3章中已经知道,操作数在存储器中的物理地址是由段地址左移4位与操作数在段内的偏移地址相加得到的。段地址在实模式和保护模式下可从不同途径取得。本节要讨论的问题是指令中是如何给出存储器操作数在段内的偏移地址的。偏移地址又称为有效地址(Effective Addres

文档评论(0)

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

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

1亿VIP精品文档

相关文档