微机报告字符串匹配

微机报告字符串匹配

ID:6107078

大小:758.00 KB

页数:10页

时间:2018-01-03

微机报告字符串匹配_第1页
微机报告字符串匹配_第2页
微机报告字符串匹配_第3页
微机报告字符串匹配_第4页
微机报告字符串匹配_第5页
资源描述:

《微机报告字符串匹配》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、微机实验报告实验三循环程序的设计一、实验目的1、掌握提示信息的使用方法和键盘输入信息的用法;2、掌握循环程序的设计方法。二、实验内容编写程序,从键盘分别输入两个字符串,进行比较,若相同,则显示‘MATCH’,否则,显示‘NOMATCH’。三、实验原理强迫CPU重复执行一指令序列的程序结构是循环程序。循环程序结构分成四部分:1、初始化部分2、循环处理部分3、循环控制部分4、结束部分四、程序流程图10三、程序代码CRLFMACROMOVAH,02HMOVDL,0DHINT21H10MOVAH,02HMOVDL,0AHINT21HENDMDATASEGMENT

2、MESS1DB'INPUTSTRING1:',0DH,0AH,'$'MESS2DB'INPUTSTRING2:',0DH,0AH,'$'MESS3DB'NOMATCH',0DH,0AH,'$'MESS4DB'MATCH',0DH,0AH,'$'MAXLEN1DB81ACTLEN1DB?STRING1DB81DUP(?)MAXLEN2DB81ACTLEN2DB?STRING2DB81DUP(?)DATAENDSSTACKSEGMENTPARASTACK'STACK'STADB50DUP(?)TOPEQULENGTHSTASTACKENDSCODESEGME

3、NTASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXMOVES,AXMOVAX,STACKMOVSS,AXMOVSP,TOPMOVAH,09HMOVDX,OFFSETMESS1INT21HMOVAH,0AHMOVDX,OFFSETMAXLEN1INT21HCRLFMOVAH,09HMOVDX,OFFSETMESS2INT21HMOVAH,0AHMOVDX,OFFSETMAXLEN2INT21HCRLF10MOVSI,OFFSETACTLEN1MOVBX,OFFSETACTLEN2

4、;字符串2长度单元首地址送BXMOVAL,[SI];字符串1长度送ALCMPAL,[BX];比较实际长度JNZNOMA;不等就跳转MOVCL,[BX];实际长度作为比较次数COM:INCSIINCBX;SI,BX每循环依次加1MOVAL,[SI]CMPAL,[BX]JNZNOMADECCL;CL每循环依次减1CMPCL,0JNZCOMMOVAH,09HMOVDX,OFFSETMESS4INT21HJMPDENDNOMA:MOVAH,09HMOVDX,OFFSETMESS3INT21HDEND:MOVAX,4C00HINT21HCODEENDSENDSTA

5、RT三、程序调试调试思路:1、生成exe文件;2、观察初始化是否正常;3、观察字符串是否输入;4、观察比较字符串长度处是否跳转(相同不跳,反之,不同就跳,不匹配);5、循环体中看是否比较了字符串长度次数,是否有不匹配跳出循环体;6、显示结果是否正常。两字符串是否匹配有三种情况:1、完全相同——MATCH;2、有个别字符不同——NOMATCH;3、字符串长度不同则——NOMATCH调试过程:通过MASMZY.ASM和LINKZY.OBJ命令即可生成exe文件;10DEBUGZY.EXE进行调试,结合U命令反编译结果(下图1)可将断点设在000F:MOVAH

6、,09处(即GF)检查初始化;D0命令显示存储内容(下图2),可见MESS1'INPUTSTRING1:',MESS2'INPUTSTRING2:',MESS3'NOMATCH',MESS4'MATCH'已经存入寄存器。即程序初始化完成。1、输入完全相同字符串AASSDD和AASSDD如下图:断点设在0016:MOVAH,0A处(即G16)提示“INPUTSTRING1:”,断点设在001D:MOVAH,02(即G1D)处输入字符串AASSDD,然后D0命令,由下图可看出,51,06,414153534444,0D分别为字符串最大长度81、实际长度6、A

7、ASSDD回车的ASCII码。故字符串1已经正常存入。10如下图:断点设在G37时完成字符串2:AASSDD的输入,结合D20命令可见存储内容。0030行有第一个字符串AASSDD,0080行有第二个字符串AASSDD.故程序写入过程调试完成,正常。如下图:断点设在004B:CMPAL,[BX](即G4B)时字符串实际长度已送入AL=6,[BX]=6,即将进行比较,不相同则跳转(显然此处两字符串长度都为6,不跳转)。然后用P命令逐步运行,连续运行三步,可见程序顺序执行,未跳转。10长度比较相同后,即将进行循环对比,则可将断点设在循环体外G60处如下图,可

8、知CL=00,即比较了6次,而后G直接运行出结果,显示MATCH。程序正常。1、

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。