微机原理字符串动画显示

上传人:m**** 文档编号:473482340 上传时间:2023-03-02 格式:DOC 页数:19 大小:240.42KB
返回 下载 相关 举报
微机原理字符串动画显示_第1页
第1页 / 共19页
微机原理字符串动画显示_第2页
第2页 / 共19页
微机原理字符串动画显示_第3页
第3页 / 共19页
微机原理字符串动画显示_第4页
第4页 / 共19页
微机原理字符串动画显示_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《微机原理字符串动画显示》由会员分享,可在线阅读,更多相关《微机原理字符串动画显示(19页珍藏版)》请在金锄头文库上搜索。

1、课程设计报告 学生姓名: 甄晓 学号:130704121 专业班级: 电科131班 课程名称: 微型计算机原理及应用技术 学年学期: 20152016学年第一学期 同组人员: 张思雨 张文娟 张哲 姚博朗 指导教师: 赵艳 2 0 15年 12月课程设计成绩评定表学生姓名甄晓学 号130704121成绩专业班级电科131班起止时间12月21日12月28日 设计题目 字符串动画显示 指导教师评语指导教师: 年 月 日目录一 设计目的1二 设计任务和要求1三 设计内容1四 源代码以及主要代码分析5五 效果及功能展示12六 自己的贡献和心得体会14字符串的动画显示程序设计一、设计目的:1、掌握汇编语

2、言,会利用汇编语言编写一定功能的程序;2、熟悉DOS环境以及在DOS下会调试编写好的汇编程序;3、熟悉常用的DOS功能;4、小组合作完成设计题目。二、设计任务和要求1、设计字符串的动画显示程序2、程序设计基本要求 1)菜单内容包括:输入字符串;字符串动画显示;退出。 2)输入字符串选择该项后,可以输入一个字符串。该字符串即为动画显示时所显示的字符串。 3)字符串动画显示所显示字符串在一矩形框内从无到有,从右至左移动,完全从框内移出后,又从右至左移动,直到有任意键按下,停止字符串动画显示返回到主菜单。 4)在主菜单中选择退出项,则结束程序返回DOS。三、设计内容:1、使用的DOS功能:1) 显示

3、字符串 MOV AH,09H INT 21H ;入口参数DS:DX=缓冲区2)键盘输入一个字符 MOV AH,01H INT 21H ; AL=输入的字符3)终止当前程序并返回调用程序 MOV AH,4CH INT 21H ;AL=退出码4)输入字符串 MOV AH,0AH INT 21H ;入口参数DS:DX=缓冲区2、使用工具和软件:PC机一台,MASM汇编软件3、流程图:1) 字符串从右向左移动结束 输完?获取字符串YYN 字符串从右向左移流程图开始 输出字符串设置光标起始位置延迟1输出空白覆盖字符串延迟2 结束?N横坐标更新2)整体流程图开始NNN从键盘读入字符符输入任意字符显示“Pr

4、ess any key to exit“调用字符串移动框图与1相比较是否相等与2相比较是否相等延时,等待输入指令显示字符串从右向左移动与3相比较是否相等接收输入的字符 ,并存在以str开头的内存单元从键盘输入字符串,显示在屏幕,光标前移显示菜单退出程程序,返回DOSYYY四、源代码以及主要代码分析1、字符串从右向左移动程序CODE SEGMENTASSUME CS:CODE,DS:CODESTART: MOV AX,CODE MOV DS,AX MOV AX,0B800H MOV ES,AXCLDAGAIN: MOV AX,3 INT 10H ;显示文字 LEA DX,MENU MOV AH,

5、9 ;输出字符串 INT 21HINPUT: MOV AH,1 INT 21H ;从键盘输入字符 CMP AL,1 JNE CP2 CALL SUB01 ;JMP INPUTCP2: CMP AL,2 JNZ CP3 CALL SUB02 ;字符串左右移动 JMP AGAIN ;返回到主菜单CP3: CMP AL,3 ;返回DOS JNZ INPUT LEA DX,MESG MOV AH,9 INT 21H MOV AH,1 INT 21H MOV AH,4CH INT 21HDELAY PROC PUSH CX PUSH DX MOV DX,0100D1: MOV CX,0FFFH LOOP

6、 $ DEC DX JNZ D1 POP DX POP CX RETDELAY ENDPCSH: MOV AL,20H MOV CX,60 ;初始化CS1: REP STOSB RETSUB01: MOV AX,0E0DH INT 10H MOV AL,0AH INT 10H LEA DX,STR1 MOV AH,0AH INT 21H ;输入一个字符串 MOV AX,0E0AH INT 10H ;换行 ;RETSUB02: CMP STR1+1,2 ;取串长最短为2个字符 JNB Y2 JMP QUITY2: CALL LINE ;画矩形框 MOV DX,ES PUSH DS POP ES

7、MOV DI,1000H CALL CSH MOV CL,STR1+1 MOV CH,0 ;取串长 LEA SI,BUF ;指向串首 MOV DI,1000H ADD DI,60-1 MOV NUM,DI ADD NUM,CX REP MOVSB ;移至显示缓冲区,重复存储字符串 CALL CSHSHOW: MOV ES,DX MOV BP,1000H ;恢复数据区Y3: MOV SI,BP ;置源数据区指针 MOV DI,LEFT ;找屏幕位置 MOV AH,7CH MOV CX,60-2Y4: LODSB STOSW ;送显存 LOOP Y4 MOV AH,1 INT 16H JNZ SS

8、S ;按任意键,返回主菜单 CALL DELAY INC BP ;源数据区指针后移一位 CMP BP,NUM JB SS1 MOV BP,1000H ;恢复数据区SS1: JMP Y3SSS: MOV STR1+1,0QUIT: XOR DI,DI MOV CX,80*25 MOV AX,720H REP STOSW ;清全屏 ;RET JMP AGAINLINE: MOV DI,(18*80+10)*2 ;矩形框 MOV AL,201 ;左上角 MOV AH,0EH STOSW MOV CX,60-2 MOV AL,205 ;横框 REP STOSW MOV AL,187 ;右上角 STOS

9、W ADD DI,20*2 MOV AL,186 ;竖框 STOSW MOV LEFT,DI MOV CX,60-2 MOV AL,20H ;空格 REP STOSW MOV RIGHT,DI MOV AL,186 ;竖框 STOSW ADD DI,20*2 MOV AL,200 ;左下角 STOSW MOV CX,60-2 MOV AL,205 ;横框 REP STOSW MOV AL,188 ;右下角 STOSW RETMENU DB 5 DUP(0AH)DB 31 DUP( ),MAIN MENU,0DH,0AHDB 25 DUP( ),201,21 DUP(205),187,0DH,0

10、AHDB 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,0AHDB 25 DUP( ),200,21 DUP(205),188,0DH,0AHDB 28 DUP( ),Choice(1,2,3):$MESG DB 0dh,0ah,0dh,0ah,9,Press any key to exit .$ NUM DW 0 LEFT DW 0 RIGHT DW 0 STR1 DB 21 DB 0 BUF DB 0DH,20 DUP(0) CODE ENDS END START五、功能效果展示(1)运行程序后显示的主菜单(2)按“1”显示待输入字符串状态(3)按“2”字符串在矩形框中从右向左移动(4)按“3”显示按任意键返回(5)按任意键

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题 > 初中试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号