微机原理字符串动画显示范本模板.docx
- 文档编号:12197249
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:14
- 大小:212.82KB
微机原理字符串动画显示范本模板.docx
《微机原理字符串动画显示范本模板.docx》由会员分享,可在线阅读,更多相关《微机原理字符串动画显示范本模板.docx(14页珍藏版)》请在冰豆网上搜索。
微机原理字符串动画显示范本模板
课程设计报告
学生姓名:
甄晓学号:
130704121
专业班级:
电科131班
课程名称:
微型计算机原理及应用技术
学年学期:
2015—2016学年第一学期
同组人员:
张思雨张文娟张哲姚博朗
指导教师:
赵艳
2015年12月
课程设计成绩评定表
学生姓名
甄晓
学号
130704121
成绩
专业班级
电科131班
起止时间
12月21日——12月28日
设计题目
字符串动画显示
指
导
教
师
评
语
指导教师:
年月日
一设计目的························1
二设计任务和要求··················1
三设计内容························1
四源代码以及主要代码分析··········5
五效果及功能展示·················12
六自己的贡献和心得体会···········14
字符串的动画显示程序设计
一、设计目的:
1、掌握汇编语言,会利用汇编语言编写一定功能的程序;
2、熟悉DOS环境以及在DOS下会调试编写好的汇编程序;
3、熟悉常用的DOS功能;
4、小组合作完成设计题目.
二、设计任务和要求
1、设计字符串的动画显示程序
2、程序设计基本要求
1)菜单
内容包括:
输入字符串;
字符串动画显示;
退出。
2)输入字符串
选择该项后,可以输入一个字符串。
该字符串即为动画显示时所显示的字符串。
3)字符串动画显示
所显示字符串在一矩形框内从无到有,从右至左移动,完全从框内移出后,又从右至左移动,直到有任意键按下,停止字符串动画显示返回到主菜单。
4)在主菜单中选择退出项,则结束程序返回DOS。
三、设计内容:
1、使用的DOS功能:
1)显示字符串MOVAH,09H
INT21H;入口参数DS:
DX=缓冲区
2)键盘输入一个字符MOVAH,01H
INT21H;AL=输入的字符
3)终止当前程序并返回调用程序MOVAH,4CH
INT21H;AL=退出码
4)输入字符串MOVAH,0AH
INT21H;入口参数DS:
DX=缓冲区
2、使用工具和软件:
PC机一台,MASM汇编软件
3、流程图:
1)字符串从右向左移动
2)整体流程图
四、源代码以及主要代码分析
1、字符串从右向左移动程序
CODESEGMENT
ASSUMECS:
CODE,DS:
CODE
START:
MOVAX,CODE
MOVDS,AX
MOVAX,0B800H
MOVES,AX
CLD
AGAIN:
MOVAX,3
INT10H;显示文字
LEADX,MENU
MOVAH,9;输出字符串
INT21H
INPUT:
MOVAH,1
INT21H;从键盘输入字符
CMPAL,'1’
JNECP2
CALLSUB01
;JMPINPUT
CP2:
CMPAL,'2'
JNZCP3
CALLSUB02;字符串左右移动
JMPAGAIN;返回到主菜单
CP3:
CMPAL,'3’;返回DOS
JNZINPUT
LEADX,MESG
MOVAH,9
INT21H
MOVAH,1
INT21H
MOVAH,4CH
INT21H
DELAYPROC
PUSHCX
PUSHDX
MOVDX,0100
D1:
MOVCX,0FFFH
LOOP$
DECDX
JNZD1
POPDX
POPCX
RET
DELAYENDP
CSH:
MOVAL,20H
MOVCX,60;初始化
CS1:
REPSTOSB
RET
SUB01:
MOVAX,0E0DH
INT10H
MOVAL,0AH
INT10H
LEADX,STR1
MOVAH,0AH
INT21H;输入一个字符串
MOVAX,0E0AH
INT10H;换行
;RET
SUB02:
CMPSTR1+1,2;取串长最短为2个字符
JNBY2
JMPQUIT
Y2:
CALLLINE;画矩形框
MOVDX,ES
PUSHDS
POPES
MOVDI,1000H
CALLCSH
MOVCL,STR1+1
MOVCH,0;取串长
LEASI,BUF;指向串首
MOVDI,1000H
ADDDI,60—1
MOVNUM,DI
ADDNUM,CX
REPMOVSB;移至显示缓冲区,重复存储字符串
CALLCSH
SHOW:
MOVES,DX
MOVBP,1000H;恢复数据区
Y3:
MOVSI,BP;置源数据区指针
MOVDI,LEFT;找屏幕位置
MOVAH,7CH
MOVCX,60—2
Y4:
LODSB
STOSW;送显存
LOOPY4
MOVAH,1
INT16H
JNZSSS;按任意键,返回主菜单
CALLDELAY
INCBP;源数据区指针后移一位
CMPBP,NUM
JBSS1
MOVBP,1000H;恢复数据区
SS1:
JMPY3
SSS:
MOVSTR1+1,0
QUIT:
XORDI,DI
MOVCX,80*25
MOVAX,720H
REPSTOSW;清全屏
;RET
JMPAGAIN
LINE:
MOVDI,(18*80+10)*2;矩形框
MOVAL,201;左上角
MOVAH,0EH
STOSW
MOVCX,60—2
MOVAL,205;横框
REPSTOSW
MOVAL,187;右上角
STOSW
ADDDI,20*2
MOVAL,186;竖框
STOSW
MOVLEFT,DI
MOVCX,60-2
MOVAL,20H;空格
REPSTOSW
MOVRIGHT,DI
MOVAL,186;竖框
STOSW
ADDDI,20*2
MOVAL,200;左下角
STOSW
MOVCX,60—2
MOVAL,205;横框
REPSTOSW
MOVAL,188;右下角
STOSW
RET
MENUDB5DUP(0AH)
DB31DUP(''),'MAINMENU',0DH,0AH
DB25DUP('’),201,21DUP(205),187,0DH,0AH
DB25DUP(’’),186,’1。
InputaString...’,186,0DH,0AH
DB25DUP(’'),186,’2。
DisplayModel..。
’,186,0DH,0AH
DB25DUP(’’),186,’3。
ReturntoDOS。
..’,186,0DH,0AH
DB25DUP(''),200,21DUP(205),188,0DH,0AH
DB28DUP(''),'Choice(1,2,3):
$’
MESGDB0dh,0ah,0dh,0ah,9,’Pressanykeytoexit。
。
。
$’
NUMDW0
LEFTDW0
RIGHTDW0
STR1DB21
DB0
BUFDB0DH,20DUP(0)
CODEENDS
ENDSTART
五、功能效果展示
(1)运行程序后显示的主菜单
(2)按“1”显示待输入字符串状态
(3)按“2"字符串在矩形框中从右向左移动
(4)按“3”显示按任意键返回
(5)按任意键返回
六、自己的贡献和心得体会
一次微机原理课程设计,一次全新的体验,在这次课程设计中,我们获益良多。
课程设计以小组的形式进行,我们小组五人,每人负责不同的工作,于合作中追求共赢。
张思雨主要负责框图的设计,张哲主要负责设定菜单和字符串的输入,张文娟主要负责字符串移动,我负责边框的设置和程序的返回,姚博朗主要负责内容的串接、最后的检错及报告的编写.
一次程序的设计对于我们这些初入编程界的新手来说,都是一项工作量不少的作业。
在总的程序设计中,需要我们搜集相关的汇编语言,分析每一段程序与其他段之间的联系,并将它们连接起来。
然而这并不是结束,我们还要将其编辑编译运行调试,查询错误,改正错误,使程序正常运行。
说实话,刚得到课程设计题目时,我们真的有点两眼一摸黑,不知如何下手,但经过上网、图书馆查询、课本研究后,我们终于一步步设计好了程序框图,并写出来程序,虽然在程序运行过程中出现了问题,但经过学霸的帮助和相关资料的查找,我们的问题终于得到了解决,完成了本次课程设计.
时间匆匆,转眼就到了考核的日期.经过这次课程设计,我感觉我的微原知识都经过了一次刷新,添加了更多的内容。
课程设计是一项既考验知识,又考核我们对知识运用的任务。
通过这次课设,我觉得知识不仅要学还要会用,即使老师讲的再好,我们也不能代替老师,所以学到手的知识才是属于我们自己的知识。
另外,对一个团体来说,团结合作很重要。
在这次课设中,我们分工合作,每人负责好自己的,又一起商量课设方向,相互帮助,相互关心,那样再难的问题我们都可以解决。
作为大学生我们应该,锐意进取,团结奋斗,向一个个难题迎难而上,而不悔!
同时感谢赵老师在这一年里的照顾,今后我们也会努力学习,积极进取。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 字符串 动画 显示 范本 模板
![提示](https://static.bdocx.com/images/bang_tan.gif)