微机原理与接口技术专项培训.ppt

  1. 1、本文档共310页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2、串比较指令 (1)CMPSB/CMPSW 功能是:取数据段源串的一个字节/字,与附加段的目的串的一个字节/字相减,不回送结果,只根据结果设置标志位,并修改串地址指针,指向下一个字节/字单元。合法格式:CMPS ES:BYTE PTR[DI],DS:[SI] CMPS ES:WORD PTR[DI],DS:[SI] (上面两种指令的两个操作数都是存储器操作数) CMPSB:传送字节 CMPSW:传送字 第一百九十一页,共三百一十页。 (2)REPE/REPZ CMPSB/CMPSW REPE/REPZ:相等/为零时重复串操作 合法格式: REPE/REPZ CMPSB REPE/REPZ CMPSW 执行的操作: 1)若(CX)=0或ZF=0(即某次比较的结果两个操作数不等)时退出,否则往下执行 2) (CX)?(CX)-1;不影响ZF标志 3)执行其后CMPS串指令;影响ZF标志 4)重复前三步 第一百九十二页,共三百一十页。 (2)REPE/REPZ CMPSB/CMPSW 例:自1000H和1200H地址开始有2个字符串,串长为35H字节。编程比较两串是否相同,若相同则(AL)=7FH,否则(AL)=80H。 MOV SI,1000H ;源串首地址送SI MOV DI,1200H ;目的串首地址送DI MOV CX,35H ;串长送CX CLD ;清除方向标志,设置指针自动增量 REPE CMPSB ;两串比较,直到(CX)=0或ZF=0 JZ EXIT ;若ZF=1,两串相同则转移 MOV AL,80H ;两串不同,则(AL)=80H JMP END1 ; 结束 EXIT: MOV AL,7FH ;两串相同,则(AL)=7FH END1: INT 3 ;DEBUG断点中断 第一百九十三页,共三百一十页。 3、串扫描指令 (1 )SCASB/SCASW 字符串搜索指令,要搜索的关键字放在AL/AX中,指令执行时AL/AX中的关键字减去DI所指向附加段的目的串中的一个数据,以判断该数据是否是要搜索的关键字,指令执行后不保留结果,只根据结果设置标志位,并修改DI的内容,指向下一个字节/字。 合法格式: SCAS ES:BYTE PTR[DI] SCAS ES:WORD PTR[DI] SCASB:搜索一个字节的数据 SCASW:搜索一个字 第一百九十四页,共三百一十页。 (2)REPNE/REPNZ SCASB/SCASW REPNE/REPNZ 不相等/不为零重复串操作 合法格式: REPNE SCASB REPNE SCASW 执行的操作: 1)若(CX)=0或ZF=1(即某次比较的结果两个操作数 相等)时退出,否则往下执行 2) (CX)?(CX)-1;不影响ZF标志 3)执行其后SCAS串指令;影响ZF标志 4)重复前三步 第一百九十五页,共三百一十页。 例:自1000H地址开始有一个50字节长的字符串,编程查找其中是否有‘#’字符,若有则将第一个‘#’字符地址送BX寄存器;没有则将8000H送BX。 MOV DI,1000H ;目的串首地址送DI MOV AL,’#’ ;关键字送AL MOV CX,32H ;串长送CX CLD ;清除方向标志,设置指针自动增量 REPNE SCASB ;查找‘#’,直到(CX)=0或ZF=1 JZ EXIT ;若ZF=1,找到#则转移 MOV BX,8000H ;没找到,则(BX)=8000H JMP END2

您可能关注的文档

文档评论(0)

虾虾教育 + 关注
官方认证
内容提供者

有问题请私信!谢谢啦 资料均为网络收集与整理,收费仅为整理费用,如有侵权,请私信,立马删除

版权声明书
用户编号:8012026075000021
认证主体重庆皮皮猪科技有限公司
IP属地重庆
统一社会信用代码/组织机构代码
91500113MA61PRPQ02

1亿VIP精品文档

相关文档