第3.3.1 数据传送指令.pptVIP

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3.3.1 数据传送指令

3.3.1 数据传送指令 3.3.1.1 通用数据传送指令 3.3.1.2 累加器专用传送指令 3.3.1.3 地址传送指令 3.3.1.4 标志寄存器传送指令 3.3.1.5 类型转换指令 3.3.1.1 通用数据传送指令 (1)传送指令MOV (2)传送指令MOVSX (3)传送指令MOVZX (4)进栈指令PUSH (5)出栈指令POP (6)进栈指令PUSHA/PUSHAD (7)出栈指令POPA/POPAD (8)交换指令XCHG (1)传送指令MOV 格式:MOV DST,SRC 功能:将源操作数传送入目的地址,源地址内容不变。即(SRC)→(DST)。 其中:DST表示目的操作数,SRC表示源操作数。 MOV指令的机器语言可以有7种格式:(P32) ? MOV mem/reg1, mem/reg2 当然,双操作数指令不允许两个操作数都使用存储器,因而两个操作数中必须有一个是寄存器。这种方式不允许指定段寄存器。 ? MOV reg,data 其中reg指定寄存器,data为立即数。当然,这种方式也不允许指定段寄存器。 ? MOV ac, mem 其中ac为累加器。 ? MOV mem,ac ? MOV segreg, mem/reg 其中,segreg指定段寄存器,但不允许使用cs寄存器。此外,这条指令执行完后不响应中断,要等下一条指令执行完后才可能响应中断。 ? MOV mem/reg, segreg ? MOV mem/reg,data 这种方式的目的操作数只用存储器寻址方式而不用寄存器方式。 注意: 1、立即数不能直接送段寄存器: ? MOV CS,12H; ? MOV DS,12H; ? MOV SS,12H;? MOV ES,12H; 2、目的操作数不能是立即数、CS。 ? MOV 12H,AL; ? MOV CS,AX; 3、不允许在两个段寄存器之间直接传送数据。 ? MOV DS,CS; ? MOV DS,SS;…… 4、不允许在两个存储单元(字或字节)之间直接传送数据。 ? MOV [2000H],[BX]; ? MOV [DI],[BP];……. 5、源操作数和目的操作数的数据类型必须一致。 ? MOV BX,AL; 6、MOV指令不影响标志位。 【例】数据传送指令举例。 MOV DS, AX ;AX中的16位数送DS MOV BL, AL ;AL中的8位数送BL MOV CL, 30 ;立即数30送CL MOV SI, 057BH ;立即数057BH送SI MOV AX, [BX] ;BX和BX+1所指的两内存单元 内容送AX MOV [DI], AX ;AX内容送DI和DI+1所指的两内 存单元 【例】数据传送指令举例。 例3.20 MOV AX, DATA-SEG MOV DS,AX 例3.21 MOV AL,’E’ ;把立即数(E的ASCII码)送AL寄存器 例3.22 MOV BX, OFFSET TABLE 例3.23 MOV AX, Y[BP][SI] 例3.24 MOV EAX, [EBX+ECX*4] MOV AX,BUF ;BUF是变量,源操作数为直接寻址 MOV BH,[DI] ;源操作数为寄存器间接寻址 MOV DI,ES:3[SI] ;源操作数为变址寻址,使用跨段越前缀 MOV BUFA,DL ;BUFA是一字节变量 MOV [BP],AX ;使用SS段寄存器 MOV DS:[BP],DL ;使用跨段越前缀 MOV BUF,DS ;BUF是个字变量 MOV ES ,BUF 【例】判断下列指令的对错。 MOV AX,1000H MOV 1000H,AX MOV AX,BH MOV [BX],AL MOV AL,[BX][SI] MOV [SI+DI],AX MOV ES:[VALUE],DX MOV AX,ES:BX MOV AX,[DX] MOV DS,1000H

文档评论(0)

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

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

1亿VIP精品文档

相关文档