资源描述:
《哈工程微机原理实验3》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验三字符匹配程序一、实验目的掌握汇编语言中串操作指令的使用方法。二、实验内容用串操作指令设计程序,实现在存储区(长度为100H)中寻找空格字符(20H)。退出时给出是否找的信息。入口三、程序框图返回DOS显示“已找到”信息显示“没找到”信息找到?用REPNZSCASB寻找空格字符显示“请输入段地址”的提示信息调子程序GETNUN,读取段值送ES中显市“请输入偏移量”的提示信息调子程序GETNUM,读取偏移量送DI中用CLD清方向标志长度计数100H送CXNY入口保存寄存器DX清零读取键入字符的ASCII码送AL中用回车或者是空格键?AL值小于30H?是数字‘0’~‘9’
2、?是字母‘A’~‘F’?是字母‘a’~‘f’?将本次键入的数字加进DX中显示“输入出错”信息回车换行恢复寄存器返回一、实验程序及实验现象CRLFMACROMOVDL,0DHMOVAH,02HINT21HMOVAH,02HMOVDL,0AHINT21HENDMDATASEGMENTMESS1DB'INPUTTHESEGMENTADDR:$'MESS2DB'INPUTTHEOFFSETADDR:$'MESS3DB'OK!HASFOUND!',0DH,0AH,'$'MESS4DB'NOSPACECHARACTER!',0DH,0AH,'$'ERRORDB'INPUTERROR!
3、',0DH,0AH,'$'DATAENDSSTACKSEGMENTSTADW32DUP(?)TOPDW?STACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXMOVES,AXMOVAH,09HMOVDX,OFFSETMESS1INT21HCALLGETNUMMOVES,DXMOVAH,09HMOVDX,OFFSETMESS2INT21HCALLGETNUMMOVDI,DXCLDMOVCX,0100HMOVAL,20HREPNZSCASBJNZAAAMOVAH,09
4、HMOVDX,OFFSETMESS3INT21HJMPBBBAAA:MOVAH,09HMOVDX,OFFSETMESS4INT21HBBB:MOVAX,4C00HINT21HGETNUMPROCNEARPUSHCXXORDX,DXGGG:MOVAH,01HINT21HCMPAL,0DHJZPPPCMPAL,20HJZPPPSUBAL,30HJBKKKCMPAL,0AHJBGETSCMPAL,11HJBKKKSUBAL,07HCMPAL,0FHJBEGETSCMPAL,2AHJBKKKCMPAL,2FHJAKKKSUBAL,20HGETS:MOVCL,04SHLDX,CLX
5、ORAH,AHADDDX,AXJMPGGGKKK:MOVAH,09HMOVDX,OFFSETERRORINT21HPPP:PUSHDXCRLFPOPDXPOPCXRETGETNUMENDPCODEENDSENDSTART输入基址地址1000和偏移地址3050,查找空格字符,找到了一、修改后的实验程序及现象RLFMACROMOVDL,0DHMOVAH,02HINT21HMOVAH,02HMOVDL,0AHINT21HENDMDATASEGMENTMESS1DB'INPUTTHESEGMENTADDR:$'MESS2DB'INPUTTHEOFFSETADDR:$'MESS3D
6、B'OK!HASFOUND!',0DH,0AH,'$'MESS4DB'NOSPACECHARACTER!',0DH,0AH,'$'MESS5DB'INPUTWHATYOUWANTTOFIND:$'ERRORDB'INPUTERROR!',0DH,0AH,'$'DATAENDSSTACKSEGMENTSTADW32DUP(?)TOPDW?STACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXMOVES,AXMOVAH,09HMOVDX,OFFSETMESS1INT2
7、1HCALLGETNUMMOVES,DXMOVAH,09HMOVDX,OFFSETMESS2INT21HCALLGETNUMMOVDI,DXMOVAH,09HMOVDX,OFFSETMESS5INT21HCALLGETNUMCLD输入基址地址1000和偏移地址3050,输入所要查找的6c字符,找到了输入基址地址80和偏移地址30,输入所要查找的05字符,没有找到一、实验结论输入实验程序并进入DOS环境下运行,实现了实验所要求的功能,即实现输入基址地址和偏移地址,查找空格字符,显示是否找到,对程序进行改进,并运行程序,实现输入基