串操作类指令幻灯片.pptVIP

  1. 1、本文档共19页,可阅读全部内容。
  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.4 串操作类指令 1.串操作指令特点 用一条指令实现对一串数据的操作; 源操作数和目标操作数都在存储器中; 共同点: 源操作数由DS:SI指定; 目标操作数由ES:DI指定。 串长:CX 自动修改地址指针:SI和DI 重复操作前缀 无条件 REP ; CX≠0重复 有条件 REPE/REPZ; CX≠0且ZF=1重复 REPNE/REPNZ; CX≠0且ZF=0重复 加重复操作前缀后串操作执行动作: 1.执行规定动作 2.修改SI、DI 3.CX-1 4.根据ZF,决定是否重复执行 1.串传送指令 格式1:MOVSB 操作:(ES:DI)←(DS:SI)字节传送 每执行一次串传送操作,SI±1,DI±1。 DF=0时+1, DF=1时-1。 格式2:MOVSW 操作:(ES:DI)←(DS:SI)字传送 每执行一次串传送操作,SI±2,DI±2。 DF=0时+2, DF=1时-2。 1.串传送指令 REP MOVSB REP MOVSW 字符或数据的个数预先放在CX寄存器中; 每执行一次操作,CX自动减1,直到CX=0串操 作自动停止。 1、串传送指令 DS:SI ES:DI DS:SI ES:DI DS:SI ES:DI 1.串传送指令 例如:将源串STAR中的100个字节数据传送到目标串NEXT中。 LEA SI, STAR LEA DI, NEXT MOV CX, 100 CLD MOVSB MOVSB …… MOVSB LEA SI, STAR LEA DI, NEXT MOV CX, 100 CLD REP MOVSB 例1.将2000H:1200H地址开始的100字节传送到6000H:0000H 开始的内存单元去 MOV AX,2000H MOV DS,AX MOX AX,6000H MOV ES,AX MOV SI,1200H MOV DI,0000H MOV CX,100 CLD REP MOVSB HLT 格式1:CMPSB 操作:(ES:DI)-(DS:SI)字节比较 每执行一次串比较操作,SI±1,DI±1。 DF=0时+1, DF=1时-1。 比较后影响标志ZF。 2.串比较指令 格式2:CMPSW 操作:(ES:DI)-(DS:SI)字比较 每执行一次串比较操作,SI±2,DI±2。 DF=0时+2, DF=1时-2。 [REPZ/ REPNE] CMPSB [REPNZ/ REPE] CMPSW REPE相等时继续寻找,直到寻找到第一个不相等的字符或寻找完所有的字符(CX=0)。 REPNE不相等时继续寻找,直到寻找到第一个相等的字符或寻找完所有的字符(CX=0)。 CX是否为零不影响ZF状态 例2.比较两个字符串是否相同,并找出其中第一个字符不相等的地址,将该地址送BX,不相等的字符送 AL,两个字符串的长度均为200个字节,M1为源串首地址,M2为目标串地址。 LEA SI, M1 LEA DI, M2 MOV CX,200 CLD REPE CMPSB JZ STOP DEC SI MOV BX, SI MOV AL, [SI] STOP: HLT 3. 串装入指令 格式:LODSB AL←(DS:SI) LODSW AX←(DS:SI) 功能:将位于DS段SI所指的存储单元的内容取到AL 或AX中。 用LODSB时,每次取一个字节,取完后,地 址自动加1或减1; 用LODSW时,每次取一个字,取完后,地址 自动加2或减2。 3. 串装入指令 该指令一般不用重复前缀,否则,AL或AX中 的内容会被后一次操作覆盖,最后只能得到内 存中字符串的最后一个字节或字。 AL LODSB DS:SI DS:SI DS:SI DS:SI 4.串存储指令 格式: [REP] STOSB (ES:DI)← AL [REP] STOSW (ES:DI)← AX 功能:把AL或AX中的数据存放到位于ES段DI所指的 存储单元中,并自动修改地址指针。 例如: 要对附

文档评论(0)

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

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

1亿VIP精品文档

相关文档