第四讲 80X86寻址方式与指令系统.pptxVIP

  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文档。上传文档
查看更多
第四讲 80X86寻址方式与指令系统

微机原理及应用第四讲 8086的寻址方式(1)内容概要指令格式与寻址方式8086指令系统相关概念用来指挥和控制计算机完成指定操作的命令称为指令。不同的微处理器具有各自不同的指令。机器指令:指令的二进制代码形式。如:89D8H汇编指令:助记符形式的指令。如:MOV AX,BX每种微处理器能够识别和执行的所有指令的集合称为该微处理器的指令系统。指令格式 [标号:] 操作码 [操作数],[操作数] ;注释]1).标号 指令的标号表示一条指令的符号地址2).操作码操作码规定操作的性质,表示指令所要执行的操作 指令操作码→动作:做什么?3).操作数操作数表示指令执行过程中操作的对象(操作数/地址码),提供操作数的地址或操作数本身,即从何处获得操作数以及运算结果存在何处。 指令操作数→对象:针对什么做动作?4).注释注释是用于解释程序使之便于阅读的任何说明文字或字符。寻址方式所谓寻址方式,就是寻找操作数或操作数地址的方式。与数据有关的寻址方式有:立即数寻址寄存器寻址直接寻址寄存器间接寻址存储器相对寻址基址变址寻址基址变址相对寻址立即数寻址立即数,操作数直接包含在指令中,作为指令的一部分存放在代码段中MOV AX,2004H;(AH)=20H,(AL)=04HMOV BL, 5AH;(BL)=5AH立即数常用于给寄存器赋初值,只能作源操作数,不能作目的操作数 立即数寻址示意图寄存器寻址操作数存放在指令指定的8位、16位或32位通用寄存器中。MOV AX,BX; 将BX中的内容送入AX中,BX中的内容保持不变MOV SI,DI;将DI中的内容送入SI中,DI中的内容保持不变MOV AL,BH ;将BH中的内容送入AL中存储器寻址有效地址由3部分组成:位移量:存放在质量中的一个8位或16位的数,但他不是立即数,而是一个地址;基址:存放在基址寄存器(BX、BP)中的内容。他是有效地址中的基址部分,通常用于指向数据段中数组或字符串的首地址;变址:存放在变址寄存器(SI、DI)中的内容。通常用来指向某个元素或者字符串的某个字符。EA = 基址 + 变址 + 位移量直接寻址直接寻址指的是操作数在存储器中的有效地址EA直接包含在指令中,书写时有效地址加上中括号MOV AX,[1000H];将DS段的1000H和1001H两个单元的内容送入AX寄存器中MOV AL,ES:[2000H];将ES段的2000H~2002H两个单元的内容送入AL寄存中,其中ES为段超越前缀指令中直接给出操作数的偏移地址(形式上为一个16位二进制数)直接寻址过程示意图寄存器间接寻址操作数的有效地址EA放在基址寄存器BX,BP,或变址寄存器SI,DI中。操作数的物理地址为:(DS)×16+(SI/DI/BX)或(SS)×16+(BP)假定(DS)=2000H,(SI)=3600H,(23600H)=6022HMOV AX,[SI] ;先将DS中的值左移4位,然后与SI中的值相加,形成物理地址是23600H,再将该物理地址中的数据6022H送入AX寄存器中假定(SS)=3000H,(BP)=1100H,(31100H)=5E28HMOV BX,[BP] 操作数的偏移地址放在寄存器中只有SI、DI、BX和BP可作间址寄存器寄存器间接寻址过程示意图寄存器相对寻址简称为寄存器相对寻址,在这种寻址方式中,操作数存放在存储器中,而其偏移地址等于指令中给出的间址寄存器的内容与给出的8/16位的位移量之和。操作数的段由哪个段寄存器指定,仍由所使用的间址寄存器决定。位移量也可看作相对值,故把这种带位移量的寄存器间接寻址方式称为寄存器相对寻址。EA = [BX] V [BP] V [SI] V [DI] + 位移量操作数的偏移地址 = 间址寄存器的内容加上8/16位的位移量只有SI、DI、BX和BP可作间址寄存器寄存器相对寻址过程示意图基址变址寻址基址加变址寻址方式中,操作数的偏移地址是由一个基址寄存器(BX或BP)的内容和一个变址寄存器(SI或DI)的内容相加而得到。注:1)在默认的情况下,指令中若用BX作基址寄存器,则段地址在DS中;而如果用BP作基址寄存器,则段地址在SS中。——但可以使用段超越覆盖此规则。2)指令中不允许同时出现两个基址寄存器或两个变址寄存器。操作数的偏移地址由一个基址寄存器的内容和一个变址寄存器的内容相加得到地址表达式中只允许出现一个变址寄存器(SI或DI)和一个基址寄存器(BX或BP)基址变址寻址过程示意图相对基址变址寻址这种寻址方式事实上是基址加变址寻址方式的扩充。指令中指定了一个基址寄存器和一个变址寄存器,同时还给出一个8位或16位的位移量,将三者内容相加就得到操作数的偏移地址。至于默认的段寄存器,仍由所使用的基址寄存器决定。指令允许使用段超越。操

文档评论(0)

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

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

1亿VIP精品文档

相关文档