预览加载中,请您耐心等待几秒...
1/3
2/3
3/3

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

实验六输入输出程序设计学生姓名:何茂杰学号:2010305104专业班级:计算机本科一班指导老师:文远熔实验日期:实验成绩:一、实验目的1)掌握输入输出程序的编写方法。2)熟悉系统功能调用的方法。3)熟悉动画程序的编写方法。二、实验内容1)在CRT上每隔一秒连续显示字符0-9。编程提示2)用系统功能调用将‘HELLO’由键盘输入,再从屏幕输出‘***HELLO***’。三.实验设计及步骤为了使输出的字符之间有空格,在每一个循环中输出一个0-9的字符和一个空格。为了输出0-9,置寄存器BL初值为0,每循环一次使其增量。为了保证输出是十进制,增量后用DAA调整指令。由于输出为一位十进制数,用AND指令屏蔽高0FH4位。1)在CRT上每隔一秒连续显示字符0-9。2)用系统功能调用将‘HELLO’由键盘输入,再从屏幕输出‘***HELLO***’。3)编制在屏幕上画线的子程序,调用该子程序画一矩形。4)编制字母下落一行的子程序,调用该子程序使字母从屏幕顶部下落到底部。5)创建一磁盘文件,保存从键盘输入的字符串。6)编写程序用设置系统时间,首先从键盘以十进制数形式输入时间,然后修改系统时间,并重新以十进制形式显示时间。7)编写程序将屏幕分割成格状,每一格涂上不同颜色,格数从键盘输入。8)编写程序在屏幕上显示菜单,输入相应菜单的序号后,选种该菜单项。四.实验结果执行程序EXAM5-1·EXE,屏幕上依次循环显示一个数字一个空格:0123456789……执行程序EXAM5-2·EXE,输入HELLO↙屏幕上显示结果:***HELLO***五.实验心得:通过这次的实验又进一步加深了对汇编的理解以及它的整个运行过程,能熟练掌握它的运行过程,也能够看懂一些基本的顺序设计的汇编程序,能设计出简单的顺序汇编。刚上机时只想按照老师给出的提纲,把缺省的部分照上面给出的提示简单修改后拷贝,可是当程序出错时便不知道哪里的问题也不会修改,最后静下心仔细看程序后理解了,很快就做出来了。在今后的学习中要吸取这次的教训,不能急于求成,要脚踏实地,掌握每一个知识点源代码:EXAM5-1STACKSEGMENTSTACKDB1024DUP(0)STACKENDSCODESEGMENTASSUMECS:CODE,SS:STACKSTART:MOVBL,0LP:MOVDL,20HMOVAH,2INT21HMOVAL,BLADDAL,0DAAANDAL,0FHMOVBL,ALPUSHBXORAL,30HMOVDL,ALMOVAH,2INT21HMOVBX,3E8HLP2:MOVCX,176H;延时1msLP1:PUSHFPOPFLOOPLP1DECBXJNZLP2POPBXINCBLJMPLPCODEENDSENDSTARTEXAM5-2STACKSEGMENTSTACKDB1024DUP(0)STACKENDSDATASEGMENTBUFFDB6,7DUP(?),‘$’DATAENDSINPUTMACROBUFEMOVDX,OFFSETBUFEMOVAH,0AHINT21HENDMPUTCHARMACROCHARMOVDL,CHARMOVAH,02HINT21HENDMCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXINPUTBUFF;读取字符串➝BUFFPUTCHAR0DHPUTCHAR0AH;光标另起一行MOVCX,0003HNEXT:PUTCHAR2AHLOOPNEXTMOVCL,BUFF+1SUBCH,CHMOVBX,OFFSETBUFF+2BEGIN:MOVAL,[BX]PUTCHARALINCBXLOOPBEGINMOVCX,0003HNEXT1:PUTCHAR2AHLOOPNEXT1MOVAH,4CHINT21HCODEENDSENDSTART执行程序EXAM5-2·EXE,输入HELLO↙屏幕上显示结果:***HELLO***