第三章 微型计算机的指令系统 1 指令的构成和操作数的类型.ppt

第三章 微型计算机的指令系统 1 指令的构成和操作数的类型.ppt

  1. 1、本文档共92页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
三、直接寻址 操作数的地址包含在指令中。 (注意:此地址为16位偏移地址) 通常操作数一般在数据段区域中,如果要对其他段 寄存器所指出的存贮区进行寻址(所谓段超越), 则在本条指令中,须用前缀指出段寄存器名。 四、寄存器间接寻址 操作数的地址在某寄存器中, 这些寄存器可以为:BX,BP,SI,DI之一。 有效地址: EA=[BX或BP或SI或DI] 注:如果指令前没有用前缀指明具体的段寄存器,则 寻址时默认为DS/SS。 采用寄存器间址允许在指令中指定一个位移量(8位 或16位)。其有效地址EA为寄存器内容加上此位移 量。(称寄存器相对寻址) 有效地址: EA=[( BX或BP或SI或DI )+位移量(带符号数)] 1、数据段基址寻址 用BX寄存器进行间接寻址 。 2、堆栈段基址寻址 用BP寄存器进行间接寻址。 3、变址寻址 用SI,DI寄存器进行间接寻址。 4、基址加变址寻址 用BX、BP和SI、DI寄存器组合起来进行间接寻址。 有效地址EA=[(BX或BP)+(SI或DI)] 注:只要用上BP寄存器,那么默认的段寄存器就是SS, 在其他情况,则为DS。否则应用前缀指出相应段 寄存器名。 附:几种常见的书写形式 MOV AX,VALUE → MOV AX,[VALUE] (VALUE为符号地址) MOV AX,ES:VALUE → MOV AX,ES:[VALUE] MOV AX,COUNT[SI]→ MOV AX,[COUNT+SI] (COUNT为位移量的符号地址) MOV AX,[BX][DI] → MOV AX,[BX+DI] MOV AX,MASK[BX][SI] → MOV AX,MASK[BX+SI] → MOV AX,[MASK+BX+SI] <3> XCHG指令(交换) A、XCHG指令格式与操作 XCHG OPR1, OPR2 OPR1←→OPR2 B、XCHG指令可以在寄存器之间或寄存器与存贮器之 间交换信息。 C、例 注:不允许使用段寄。 该指令不影响标志位。 2、累加器专用传送指令 <1> IN/OUT输入输出指令 A、指令的格式与操作 长格式:IN AL, PORT AL ←(PORT) IN AX, PORT AX ← (PORT+1,PORT) OUT PORT,AL (PORT)← AL OUT PORT,AX (PORT+1,PORT)← AX 短格式:IN AL,DX AL ← (DX) IN AX,DX AX ←(DX+1,DX) OUT DX,AL (DX)← AL OUT DX,AX (DX+1,DX)←AX 注:I/O指令中只能用AX/AL与DX和8位的端口地址。 <2> XLAT换码指令 A、指令格式与操作 XLAT OPR 或 XLAT AL ←[ BX + AL ] B、注:使用XLAT指令,应先建立一个表格。 表格首址存入BX中,需转换的代码应是相对于 表格首址的位移量(即项号)也提前放入AL 中。 表格的内容(即项值)则是所要换取的代码 它将存入AL中。 指令格式中的OPR为表格首址(符号地址)。 2、减法指令 减: SUB DST,SRC DST←DST-SRC 带借位减:SBB DST,SRC OST←DST-SRC-CF 减1: DEC OPR

文档评论(0)

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

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

1亿VIP精品文档

相关文档