资源描述:
《实验6输入输出程序设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验6I/O程序设计实验目的:(1)掌握利用DOS、BIOS功能调用实现1/0的方法。(2)掌握程序直接控制T/0方式。实验内容:(1)利用DOSINT21H功能调用,编程实现对输入的字符串进行统计;(2)利用BIOSINT10H功能调用,控制字符显示特性。(3)通过1/0指令肓接对61端口的控制,实现扬声器发声。实验过程:(1)从键盘输入一串字符(<80,回车结束),统计其中的数字、大写字母、小写字母和其它字符。①程序说明。1)主程序利用INT21H的lh号功能调用输入字符串,并调用各子程序完成统计、显示
2、功能;2)子程序disp.msg:利用INT21H的9h号功能调用显示字符串;入口参数:DS:DX指向字符串3)子程序disp.cnt:利用INT21H的2h号功能调用显示统计数字;入口参数:BX为待显示值4)子程序count:分类统计;入口参数:DS:DX指向字符串出口参数:BX为数字字符;CX为大写字母;BP为小写字母;DI为其它字符datasegmentstrdb80dup(?)msgOdb13,10,'Enterastring:1,'$'msg1db13,10,'Numbers二','$'msg2d
3、b13,10,,Upletters=,,$msg3db13,10,'Lowletters=,,'$*msg4db13,10,'Others",$dataendscodesegmentassumecs:code,ds:datago:movax,datamovds,axleadx,msgOcalldisp_msgmovah,1leasi,strlp1:int21hmov[si],alcmpal,13jeL0incsijmplplL0:leadx,strcallcountleadx,msg1calldisp_ms
4、gcalldisp_cntleadx,msg2calldisp_msgmovbx,excalldisp_cntleadx,msg3calldisp_msgmovbx,bpcalldisp_cntleadx,msg4calldisp_msgmovbx,dicalldisp_cntmovah,4chint21hdisp_msgprocpushaxmovah,int21hpopaxretdisp_msgendpdisp_cntprocpushaxpushdxmovax,bxmovbl,10divblmovbh,a
5、hmovdl,aladddl,30hmovah,2int21hmovdLbhadddl,30hmovah,2int21hpopdxpopaxretdisp_cntendpcountprocpushaxpushsixorbx,bx;Numbersxorex,ex;Uplettersxorbp,bp;Lowlettersxordi,di;Othersmovsi,next:moval,[si]empal,13jedoneempal,Ojbothercmpal,9jbenumcmpal,Ajbothercmpal,
6、ZibeU_Iettercmpal,fa*jbothercmpal,'TjbeL_letterother:incdijmpcontnum:incbxjmpcontU_Ietter:inceximpcontL_letter:incbpcont:incsijmpnextdone:popsipopaxretcountendpcodeendsendgo①补充完整程序,编辑、连接、运行、调试程序。②记录编译过程中错误,并分析原因。③画出子程序disp_cnt的流程图。(2)从键盘输入一串密码(<40)后,以闪烁的方式
7、显示密码。①程序说明。1)利用INT21H的7h号功能调用输入密码;2)利用BIOS10H的3h号功能调用获得当前显示位置;利用BIOS10H的13h号功能以红底白字闪烁显示密码信息;3)子程序displ利用INT21H的2h号功能调用显示字符;子程序cis利用BIOS10H的6h号功能清屏。datasegmentmsg1db13,10,'Typeasecretmessage:1,$msg2db13,10,'Yoursecretmessageis:1,$secretdb40dup(?)dataendscod
8、esegmentmainprocfarassumecs:code,ds:datago:movax,datamovds,axmoves,axdisp:leadx,msg2movah,9int21hmovsi,bxmovah,3movbh,0int10hmovex,simova1,0leabp,secretmovbI,Ocfhmovah,13hint10hdone:movax,4c00hint21hmainendpI