汇编语言讲义5(3)串与表的处理程序.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
串与表的处理程序设计;〔3〕当标志位DF=0时,SI和DI的修改为递增,即加2〔字操作〕或加1〔字节操作〕。当DF=1时,SI和DI的修改为递减,即减2或减1。;1. 取串指令;2. 存串指令;3. 串传送指令;4. 串比较指令;5、串搜索指令;6、重复前缀指令;例如:REP MOVSB;REPE/REPZ 重复执行串操作指令的条件是:〔CX〕≠0和ZF=1;2 串操作指令应用举例;CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK1 START: MOV AX,DATA MOV DS,AX MOV ES,AX MOV DI,OFFSET TXTBUF;取目的串首址 MOV CX,CUNT MOV AL,STRING ;初始化DI,CX,AL CLD ;DF=0,递增方式 REPNE SCASB ;查找字符 MOV BL,0FFH JNE END0 ;条件判断:未查到,ZF=0转移 SUB DI,OFFSET TXTBUF MOV BX,DI END0:MOV INDEX,BL MOV AH,4CH INT 21H CODE ENDS END START; 例2 试编写一程序,确定某子字符串是否在另一字符串中存在。假设在,那么记录其所在起始位置。假设不在那么设置标志0FFH。;DATA SEGMENT TXTBUF DB ABCDEFGHIJKLMNOP CUNT1 EQU $-TXTBUF STRING DB EF CUNT2 EQU $-STRING ;子串长度 INDEX DB 0FFH DATA ENDS STACK1 SEGMENT PARA STACK DW 20H DUP(0) STACK1 ENDS;开始;CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK1 START: MOV AX,DATA MOV DS,AX MOV ES,AX MOV BX,CUNT1-CUNT2+1;比较次数 MOV SI,OFFSET TXTBUF;取源串首址 MOV AX,SI LOP: LEA DI,STRING;取子串首址 MOV CX,CUNT2 CLD REPZ CMPSB; 比较 JZ MATCH ;〔CX)=0且ZF=1,相同,转 INC AX ; 未匹配,比较位置往后移一位 MOV SI,AX DEC BX ;比较次数计数 JNZ LOP; MOV INDEL,0FFH JMP EXIT MATCH:SUB AX, OFFSET TXTBUF;位置为0~n INC AL ;位置为1~n MOV INDEX,AL EXIT: MOV AH,4CH INT 21H CODE ENDS END START ;3 排序与查找;一、气泡排序算法; 如果采用递增方式进行排序,其处理方法与上述递减排列方法类似,只需将交换条件变为前面的数大于后面的数。; 例如有10个数,经过5次循环比较后,第6次循??比较时已没有数据交换,为此,设置一个标识,以确定依次循环比较中是否有数据交换。;DATA SEGMENT DA DB 80,3,-20,116,9,120,-6,62,-32,42 COUNT EUQ $-DA DATA ENDS STACK1 SEGMENT PARA STACK DW 20H DUP(0) STACK1 ENDS;开始;COSEG SEGMENT ASSUME CS:COSEG,DS:D

文档评论(0)

199****8042 + 关注
实名认证
文档贡献者

相信自己,相信明天

1亿VIP精品文档

相关文档