- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据处理数据传送指令
3.4 数据传送类指令 数据传送 把数据从一个位置传送到另一个位置 计算机中最基本的操作 程序设计中最常使用的指令 除向标志寄存器传送外,数据传送指令标志寄存器传送指令外,均不影响标志位 学习指令的注意事项 指令的功能——该指令能够实现何种操作。通常指令助记符就是指令功能的英文单词或其缩写形式 指令支持的寻址方式——该指令中的操作数可以采用何种寻址方式 指令对标志的影响——该指令执行后是否对各个标志位有影响,以及如何影响 其他方面——该指令其他需要特别注意的地方,如指令执行时的约定设置、必须预置的参数、隐含使用的寄存器等 3.4.1 通用传送指令 将数据从源地址传送到目的地址 ③ 通用寄存器和存储单元之间的数据传送 使用MOV指令需要注意 2.XCHG(Exchange):交换指令 (3) 使用注意事项 可以在两个寄存器、或寄存器与存储器之间交换 不能与段寄存器进行交换, 也不能与立即数进行交换 存储器两单元之间不能进行交换。 3.4.2 堆栈操作指令 注意: 80X86的SP总是指向最后一个压入堆栈的字的存放地址; 80X86的堆栈是向下增长的——每次压入前,先使SP-2,然后将要压入的数据存放到 SS:SP 指定的存储单元。 弹出:先将SS:SP指定的存储单元的内容取出到目的操作数,然后SP+2. 要使用堆栈,需要先设置SP。 每次压入或弹出都以字为单位 (1) 入栈指令 (3) 出栈指令 (4)使用堆栈指令的注意事项 3.4.3 其他传送指令 TABLE DB 3FH, 06H, 5BH, 4FH,66H DB 6DH, 7DH,07H,7FH,6FH MOV AL, 6 MOV BX, OFFSET TABLE;表首地址 XLAT 还可以将一些特定函数造成表,存放在存储器中,例如正弦函数等。 2 地址传送指令 (2) LDS 指令 (3) LES 指令 3 标志寄存器传送指令 对于8086 ,对于标志寄存器FLAGS高8位中的OF,DF,IF有专用的置位和复位指令,但对TF没有,要修改该位,需要将标志寄存器传送到通用数据寄存器,在通用寄存器中修改,然后再传送回标志寄存器FLAGS。但又没有FLAGS与通用寄存器的传送指令,这时只好利用 PUSHF POPF指令 例如:要将TF? “0” PUSHF POP AX AND AH, ;FLAGS的D8(TF)清为0 PUSH AX POPF 对标志寄存器操作指令的附加说明: ① 格式: LDS dst , src ② 功能:把源操作数src指定的连续4个存储单元中存放的32位地址指针(一个16位的段基址,一个16位的偏移量)传送到两个16位的寄存器中,其中低16位是偏移量,送dst,高二字节是段基址,送DS。 例如:(DS)=3200H, (33550h)=1234H, (33552)=5678H 执行 LDS SI, [1550H] 后 -- 从32000+1550=33550H开始取4个字节 (SI)= 1234H, (DS)=5678H ① 格式 LES dst , src ② 功能:与LDS指令相似,只是将段寄存器DS换成了ES。 (1) LAHF 指令 ① 格式: LAHF ② 功能: 将标志寄存器的低8位送AH。 注意:标志寄存器内容不变化。 (2) SAHF指令 ①格式: SAHF ②功能: AH内容送标志寄存器的低8位。 传送到AH,是为了对某些位进行修改 (3) PUSHF指令 ① 格式: PUSHF ② 功能: 16位标志寄存器内容压入堆栈。 (4) POPF 指令 ① 格式: POPF ② 功能: 将当前SP所指的一个字数据送标志寄存器。 全面而准确地理解每条指令的功能和应用 是编写汇编语言程序的关键 也是理解处理器如何进行数据处理的核心 源操作数 src 目的操作数 dest 30H 30H 被传送的数据 包括MOV指令,PUSH 和 POP指令,XCHG指令 1 基本传送指令MOV 指令格式 MOV dst,src 指令功能 将源操作数src复制到目的操作数dst中,结果目的操作数的内容等于源操作数的内容,源操作数src的内容不变。
文档评论(0)