收藏 分销(赏)

字符串动态显示微原课设报告.pdf

上传人:精*** 文档编号:1269251 上传时间:2024-04-19 格式:PDF 页数:14 大小:478.13KB 下载积分:8 金币
下载 相关 举报
字符串动态显示微原课设报告.pdf_第1页
第1页 / 共14页
字符串动态显示微原课设报告.pdf_第2页
第2页 / 共14页


点击查看更多>>
资源描述
1河北科技大学河北科技大学课程设计报告 学生姓名:学号:专业班级:电信 L122 班 课程名称:微型计算机原理及应用技术 学年学期:2 0 14 2 0 15 学年第 1 学期 同组人员:指导教师:张永强 2 0 14 年 12 月2课程设计成绩评定表课程设计成绩评定表学生姓名学 号成绩专业班级电信 L122起止时间2014-12-20 至 2014-1-10设计题目字符串动画显示 指导教师评语课程设计态度:端正 较端正 一般 较差 课程设计纪律:好 较好 一般 较差 课程设计出勤情况:好 较好 一般 较差 课程设计任务完成情况:优秀 好 一般 较差 课程设计报告完成情况:优秀 好 一般 较差 动手能力:强 较强 一般 较差 团队精神:好 较好 一般 较差 创新意识:强 较强 一般 较差 指导教师:年 月 日3目录目录一、一、设计目的设计目的-4-4二、二、设计任务与要求设计任务与要求-4-4三、三、小组分工小组分工-4-4四、四、实现方法实现方法-5-5五、五、功能效果展示功能效果展示-6-66 6、心得体会心得体会-9-9七、七、参考资料参考资料-10-10八、八、附源程序附源程序-11-11一、设计目的:一、设计目的:1、掌握汇编语言,会利用汇编语言编写一定功能的程序;2、熟悉 DOS 环境以及在 DOS 下会调试编写好的汇编程序;3、熟悉常用的 DOS 功能;4、小组合作完成设计题目。二、设计任务与要求设计任务与要求设计内容要求:1、菜单内容包括:输入字符串;字符串动画显示;退出。2、输入字符串选择该项后,可以输入一个字符串。该字符串即为动画显示时所显示的字符串。3、字符串动画显示 所显示字符串在一矩形框内从无到有,一半从左另一半从右向中间移动,当两半相遇时停止移动,当按下 R 键后重复从两边到中间移动的动作,直到按下 Q 键,停止字符串动画显示返回到主菜单。4、在主菜单中选择退出项,则结束程序返回 DOS。3 3、小组分工小组分工序号工作内容 成员1确定设计思路,画流程图 2编写程序段 3编写菜单项 4程序汇总 4 4、实现方法实现方法4.1 MASM 编译开发环境实现编译开发环境实现MASM 是微软公司开发的汇编开发环境,拥有可视化的开发界面,使开发人员不必再使用 DOS 环境进行汇编的开发,编译速度快,支持 80 x86 汇编以及Win32Asm 是 Windows 下开发汇编的利器。它与 windows 平台的磨合程度非常好,但是在其他平台上就有所限制,使用 MASM 的开发人员必须在 windows 下进行开5发。MASM 版本至今在不断的更新,目前的最新版本为 10.0,推荐使用新版本进行开发。MASM 5.0 是最常用的汇编连接软件 其简单操作为 输入 asm 文件将其连接为 obj 文件 用 link 得到 exe 文件。4.2 算法实现算法实现软中断:DOS 功能调用编写的程序中 INT 10H 和 INT 21H 软中断的应用。如下表:INT 10H功能号功能入口参数出口参数00H设置显示模式AL=03 80*25 彩色文本方式无0EH显示字符AL字符字符显示在屏幕上INT 21H功能号功能入口参数出口参数09H显示字符串DS:DX=缓冲区0AH输入字符串DS:DX=缓冲区01H键盘输入字符AL=输入字符INT 16H功能号功能入口参数出口参数00H从键盘读字符AL=字符码AH=扫描码矩形框代码:竖框编写右上角编写右下角编写左下角编写左上角编写横框编写总体流程:设置三个选项分别对应选项标号。将键盘输入的标号与 1、2、3 相比较以确定不同的程序块调用接口。“1”输入字符串,即进入过程一;“2”动画显示所要求的字符串,即调用过程二;“3”返回 DOS 系统,即调用 EXIT 标号。4.3 流程图流程图6 5、功能效果展示功能效果展示1编译成功Q段地址初始化进入 DOS 窗口输出提示信息输入字符串字符串动态显示数码管数据输出开始退出?结束R72连接成功3进入程序主界面84.开始校验95退出程序。六、心得体会六、心得体会 一周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,而且锻炼了我的实际动手操作能力。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。锻炼了独立动手能力,学会了运筹帷幄,并且明白了凡事要注重细节。通过本次课程设计,我将我以前学过的一些指令的运用更加的深刻,还有一些以前没学过的指令,以及如何分工安排和实际应用,如何融入到实际应用中去。然后如何运用 masm 软件,就算一个字母输入错误都会导致最后程序运行不出来,更加锻炼了我的细心和认真。遇到问题时,通过自己上网查资料,查课本,锻炼了自己动手的能力。这也让我越来越深的认识到,不管以后工作还是学习,学习是永无止境的。学习的过程大体就是:先大体弄懂要学的那些知识,然后是自己进行练习,通过练习发现问题,然后是解决问题,这个自学的过程如此反复,每进行一次锻炼,自己的能力得到一次提升,进而一次次提高自己。实践与理论相结合,才能更好的理解所学知识,今后我将努力将基础知识掌握牢固,争取在下一次课程设计中能够改善这次的不足,做出更好的设计,10提高自己的能力。我明白了知识不只是会了就行了,还要多动手,多练习,理论联系实际,才能真正学会,学懂,学通,融会贯通。总之,通过这次的课设,使我受益匪浅。七参考资料七参考资料微型计算机原理及应用技术第 2 版 机械工业出版社八、附源程序八、附源程序初始化程序:DATA SEGMENTMENU DB 5 DUP(0AH)DB 31 DUP(),MENU,0DH,0AHDB 25 DUP(),2AH,21 DUP(*),*,0DH,0AHDB 25 DUP(),2AH,1.input ,2AH,0DH,0AHDB 25 DUP(),2AH,2.animate ,2AH,0DH,0AHDB 25 DUP(),2AH,3.quit ,2AH,0DH,0AHDB 25 DUP(),2AH,21 DUP(*),2AH,0DH,0AHDB 28 DUP(),select(1,2,3):$MESG DB 0dh,0ah,0dh,0ah,9,Press any key to exit.$CNT1 DW 0 CNT2 DW 0 CNT3 DW 0 CNT4 DW 0 CNT5 DW 0 left DW 0str DB 21DB 0BUF DB 0dh,20 DUP(0)DB 25 DUP(),201,21 DUP(205),187,0DH,0AHDB 25 DUP(),186,1.Input a String.,186,0DH,0AHDB 25 DUP(),186,2.Display Model.,186,0DH,0AHDB 25 DUP(),186,3.Return to DOS.,186,0DH,0AHDATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AXMOV AX,0b800HMOV ES,AXCLD;标志位操作指令 AGAIN:MOV AX,3INT 10H 11LEA DX,MENU MOV AH,9INT 21Hinput:MOV AH,0INT 16H;等待键盘输入CMP AL,1 ;等于 1 不跳转JNZ movestr ;不等于 1 跳转到 movestrcall inputstr ;输入一个字符串JMP inputmovestr:CMP AL,2 ;输入等于 2 不跳转JNZ exittodos ;不等于 2 跳转 退出call animatestr;字符串左右移动JMP AGAIN;返回到主菜单exittodos:CMP AL,3;返回 DOSJNZ inputLEA DX,MESGMOV AH,9INT 21HMOV AH,1INT 21HMOV AH,4CHINT 21HYH PROC PUSH CXPUSH DXMOV DX,1000D1:MOV CX,0ffffhLOOP$DEC DXJNZ D1POP DXPOP CXRETYH ENDP;输入字符串inputstr:MOV AX,0e0dHINT 10HMOV AL,0AHINT 10HLEA DX,strMOV AH,0AHINT 21H;输入一个字符串12MOV AX,0e0aHINT 10HRETanimatestr:CMP str+1,2JNB y2JMP quity2:call line;画矩形框y2:XOR AX,AXMOV CNT1,AXMOV CNT5,AXMOV DL,60-2MOV AL,str+1SUB DL,ALMOV DH,0MOV CNT3,DX;中间空格长度MOV BL,ALINC ALSHR AL,1CBWMOV CNT2,AX;左半字符串长度SUB BL,ALMOV BH,0MOV CNT4,BX;右半字符串长度y3:MOV BP,ESPUSH DSPOP ESMOV di,1000HMOV CX,CNT1;前导空格长度JCXZ u1MOV AL,20HREP stosbu1:LEA si,BUFMOV CX,CNT2;左半字符串长度REP movsbMOV CX,CNT3;中间空格长度JCXZ u2MOV AL,20HREP stosbu2:MOV CX,CNT4;右半字符串长度REP movsb13MOV CX,CNT5;末尾空格长度JCXZ u3MOV AL,20HREP stosbu3:show:MOV ES,bpMOV AH,0AHMOV si,1000HMOV di,leftMOV CX,60-2PPP:lodsbstoswLOOP PPPcall yhCMP CNT3,0JZ inputINC CNT1;前面空格长度INC CNT5;末尾空格长度DEC CNT3;中间空格长度CMP CNT3,0JZ kk2DEC CNT3;中间空格长度kk2:JMP y3input:MOV AH,0INT 16HCMP AH,10H;QJZ SSSCMP AH,13H;RJNZ inputCMP CNT3,0 ;中间空格停止JNZ repJMP y2rep:JMP y3SSS:MOV str+1,0quit:LEA si,CNT1XOR AX,AXMOV CX,5kk3:MOV si,AXINC si14INC siLOOP kk3XOR di,diMOV CX,80*25MOV AX,720HREP stosw;清全屏RETline:;矩形框MOV di,(18*80+10)*2MOV AL,201;左上角MOV AH,0dH;/颜色stoswMOV CX,60-2MOV AL,205;横框REP stoswMOV AL,187;右上角stoswADD di,20*2MOV AL,186;竖框stoswMOV left,diMOV CX,60-2MOV AL,20H;空格REP stosw;MOV right,diMOV AL,186;竖框stoswADD di,20*2MOV AL,200;左下角stoswMOV CX,60-2MOV AL,205;横框REP stoswMOV AL,188;右下角stoswRETCODE ENDSEND START
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 应用文书 > 报告/总结

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服