资源描述:
《字符串匹配器程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、设计题目一字符串匹配设计器-设计要求设计一个字符匹配器,要求:编写程序实现两个字符串比较,如果两字符串相同,贝U显示“MATCH”;如果两字符串不相同,贝I」显示“NOMATCH”。二设计思想和桓字备串匹配设计参考流程图分析:调用1NT21H的oAH号子功能,输入字符串1和字符串2后,指针指向字符串1的第一个字符,与字符串2中所有字符相比较,如果相等显示“MATCII”,如果不相等使SI加1,在字符串1中没有取完之前,作如上循环三程序请单DATASEGMENTSTRING1PARLABELBYTE;string1的参数表STRING1MLENDB10;strin
2、g1的故长长度STRING1ALENDB?;string1的实际长度STRING1ENDDB10DUP(?);string1的存储空间ENTSTRING1DBPleaseinputstringl:;提示输入stringl的语句STRING2PARLABELBYTE;string2的参数表STRING2MLENDB10STRING2ALENDB?STRING2ENDDB10DUP(?);或者可以定义为STRING2DB10,?,10DUP(?)ENTSTRING2DBTleaseinputstring2:7$,COUNTDWOAH;进行比较的次数:10次YESDB
3、,MATCH,,T湘同则显示MATCHNODB'NOMATCH'.T;不同则显示NOMATCHDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,ES:DATABEGIN:MOVAX,DATA;数据段设置MOVDS,AXMOVES,AXCALLNEARPTRCLRSC;清除屏幕MOVDX,0403H;光标位置0403CALLNEARPTRCURSMOVDX,OFFSETENTSTRING1;提示输入stringlCALLNEARPTRDISPMOVDX,OFFSETSTRING1PAR;输入stringlCALLNEARPTRINT
4、PMOVDX,0603H;光标位置0603CALLNEARPTRCURSMOVDX,OFFSETENTSTRING2;提示输入string2CALLNEARPTRDISPMOVDX,OFFSETSTRING2PAR;输入string2CALLNEARPTRINTPMOVDX,0805H;光标位置0805CALLNEARPTRCURSLEASI,STRING1END;开始比较stringl,string2LEADI,STRING2ENDMOVCX,COUNT;一共比较10次OLDREPZCMPSBJNZUNMAT;不相同则跳转到UNMAT标,忐符处输出LEADX,
5、YESCALLNEARPTRDISPJMPENDPROUNMAT:LEADX,NOCALLNEARPTRDISPJMPENDPRO下面的程序段均川来被调川INTPPROCNEAR;输入字符MOVAH,0AHINT21HRETINTPENDPDISPPROCNEAR;显示字符MOVAH,09HINT21HRETDISPENDPCLRSCPROCNEAR;清屏MOVCX,0000HMOVDX,184FHMOVBH,07MOVAX,0600HINT10HRETCLRSCENDPCURSPROCNEAR;设置光标位置MOVAH,02HMOVBH,00HINT10HRET
6、CURSENDP;开始结束程序洸标位置为0A00,然后结束程序,返回DOSENDPRO:MOVDX,0A00HCALLNEARPTRCURSMOVAH,4CHINT21HCODEENDSENDBEGIN四运行结果灵C:¥I!IDO¥SsysteB32cBd.exeE:MASM>nasm1.asnMicrosoftMacroAssenblerUersion5.00CopyrightMicrosoFtCorp1981.一1985,1987.Allrightsreserued・Object£ilenane[1.OBJ]:Sourcelisting[
7、NUL.LST]:Cross-reference[NUL.CRFJ:50530+450190Bytessymbolspacefree0WarningErrors0SevereErrorsE:MASM>linkl.objMicrosoftOverlayLinkerUersion3.60CopyrightMicrosoftCorp1983-1987.Allrightsreserued・BunFile[1.EXE3:ListFile[NUL.MAPJ:Libraries[.LIBI:LINK:warningL4021:nostacksegmentE:M
8、ASM>l.exe_c「