2022年字符串动画显示汇编语言程序设计 .pdf
《2022年字符串动画显示汇编语言程序设计 .pdf》由会员分享,可在线阅读,更多相关《2022年字符串动画显示汇编语言程序设计 .pdf(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目 录1 总体方案论证 .11.1 题目功能分析 .11.2 算法说明 .12 流程图设计及说明 .22.1 主程序流程图设计 .22.2 分布具体功能实现流程图设计.32.2.1 字符串右移 .32.2.2 字符串下移 .42.2.3 字符串闪烁 .53 软件设计关键问题或程序段落说明.53.1 提示输入字符串显示功能实现.53.2 向右、向下移动功能实现 .73.3 字符串大小写变化实现 .93.4 颜色变化功能实现 .10 3.5 退出功能实现 .10 4 调试说明、结果记录及分析.11 4.1 调试说明 .11 4.2 结果记录与分析 .11 4.2.1 提示输入字符串 .11 4.2
2、.2 输入后显示字符串 .12 4.2.3 在特定位置从无到有显示.12 4.2.4 在特定位置向右移动 .13 4.2.5 在特定位置向下移动 .13 4.2.6 小写变成大写加闪烁 .14 5 课程设计收获及心得 .15 6 参考文献 .16 名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 26 页 -字符串动画显示汇编语言程序设计1 总体方案论证1.1 题目功能分析(1)屏幕提示输入字符串;(2)输入完成后,字符动画显示,显示方式可为:从无到有,从左到右,从上到下,大小写变化、颜色变化等;(3)可连续显示或定时显示,直至单击“Q”或“q”键退出程序。1.2 算法说明(1)屏
3、幕提示输入字符串主要运用中断INT 21H 的 0A H功能;(2)在确定光标位置后,通过循环改变其行列数值来达到左右上下移动功能;大小写变化则通过将输入字符与a和z比较,若为小写字母,则减去 20H,否则不变;颜色变化则通过INT 10H 的 09H功能循环调用实现;(3)退出功能通过将输入 Q 和 q与其 ASC 比较,跳转到退出程序;而退出程序主要通过 INT 21H 的 4C H功能实现。名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 26 页 -2 流程图设计及说明2.1 主程序流程图设计图 2-1 字符串动画总流程图字符串右移结束开始段地址初始化进入 Dos 窗口输出
4、提示信息输入字符串显示输入字符串Y N 字符串向下移动字符串小写变大写三色变换闪烁按Q,q?图 2-1 主程序流程图名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 26 页 -2.2 分布具体功能实现流程图设计2.2.1字符串右移结束输完?获取字符串Y Y N 图 2-2 字符串右移流程图开始输出字符串设置光标起始位置延迟 1 输出空白覆盖字符串延迟 2 结束?N 横坐标更新名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 26 页 -2.2.2字符串下移结束输完?获取字符串Y Y N 图 2-3 字符串下移流程图开始输出字符串设置光标起始位置延迟 1 输出空白覆盖字
5、符串延迟 2 结束?N 纵坐标更新名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 26 页 -2.2.3字符串闪烁3 软件设计关键问题或程序段落说明3.1 提示输入字符串显示功能实现屏幕提示输入字符串主要运用中断INT 21H 的0A H功能,输入后回车则完成字符串在特定位置的显示。另外,在此段程序中,还通过用空字符串的逐个显示来完成字符从无到有的功能实现。lea dx,buf mov ah,0ah结束Y 图 2-4 字符串闪烁流程图N 获取字符串开始N 是否输完?Y 输出字符串设置起始位置延迟 1 设置字符串颜色次数已到?名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页
6、,共 26 页 -int 21hmov bx,2;多字符输入,回车结束,有效内容自第三个始。mov di,0B1:mov al,bufbx cmp al,13;是否是回车?jeAG1 mov buff1di,alincbxincdi jmp B1 AG1:mov ah,0mov al,2int 10h;黑白文本OTHER:mov cx,0ffffh;AG:mov dh,7;hangmov dl,35;liemov ah,2mov bh,0;页号为 0int 10h;置光标位置lea dx,buff1 mov ah,9int 21h;显示字符串mov dh,7名师资料总结-精品资料欢迎下载-名师
7、精心整理-第 7 页,共 26 页 -mov dl,35mov ah,2mov bh,0int 10h;置光标位置lea dx,buff2 mov ah,9int 21h;sub cx,1;jnz AG;不等于转移3.2 向右、向下移动功能实现如流程图可知,向下和向右移动,程序基本相同,只不过一个改变的是行,另一个改变的是列,以下以向右移动为例。主要通过INT 10H 调用,且循环操作一定次数实现。其中,在下一次输出时,为了清除前一个位置的输出,用空字符串替代。另外,通过延时控制移动速度。程序如下:mov al,3mov ah,0int 10h;16色文本mov dl,0;字符串向右移动,给出
8、起始列bbb2:MOVSI,OFFSET buff1 mov di,0bbb1:mov dh,7;dh hang dl lieinc dlmov ah,2int 10h;置光标位置2号置光标位置9号指定输出,每次显示一个名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 26 页 -mov ah,09;9号功能inc di mov al,si inc si mov bh,0;显示页mov bl,0eh;colormov cx,01;显示字符的次数int 10hcmp di,0fh;立即数大小取决于字符串大小jb bbb1 call delay1 subdl,0fh;设置列movSI,
9、OFFSET buff2 mov di,0ccc1:mov dh,7;dh hang dl lieinc dlmov ah,2int 10h;置光标位置mov ah,09;9号功能inc di mov al,si inc si mov bh,0;显示页mov bl,0eh;colormov cx,01;字符重复一次int 10hcmp di,0fhjb ccc1 名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 26 页 -call delay2;mov ah,07;int 21h 首先在一个位置输出然后输出空白覆盖掉在输出下一个位置cmp dl,25jnb xiangxia;在这
10、里跳出右移,转到向下subdl,0dhjmp bbb2 3.3 字符串大小写变化实现因为在ASC表中大小写相差20H,所以通过将输入字符与a和 z比较,若为小写字母,则减去20H,否则不变。程序如下:daxiaoxie:mov dl,7mov dh,35MOVSI,OFFSET buff1 mov di,0a1:mov al,SI cmp al,$je shansuo cmp al,a jb next cmp al,z ja next subal,20hmov SI,alnext:inc SI jmp a1 名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 26 页 -3.4 颜
11、色变化功能实现颜色变化功能实现相当于对字符串属性定义,表现出颜色差别,然后循环调用并插入延时。以下程序效果是三种颜色闪烁,其中aaa1表示黄色,aaa2表示绿色,aaa3表示红色。具体程序如下:shansuo:;三种颜色闪烁call aaa1 call delay1 call aaa2 call delay1;内部转换后还是用 BIOS 10h 9号功能调用call aaa3 call delay1 jmp shansuo 3.5 退出功能实现退出功能通过将输入Q和 q与其 ASC比较,跳转到退出程序;而退出程序主要通过 INT 21H 的 4C H 功能实现。mov ah,08h;q键退出i
12、nt 21Hcmp AL,Q jeexit cmp AL,q jeexit exit:mov ah,4chint 21h名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 26 页 -4 调试说明、结果记录及分析4.1 调试说明所谓程序调试,是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程。这是保证计算机信息系统正确性的必不可少的步骤。编完计算机程序,必须送入计算机中测试。调试过程中出现很多问题。很多次,程序更改后得不到目标文件,主要原因是编程过程中不够细心,而且没有整体把握。例如,有段名重复的错误,还有对调用不熟悉造成编程过程很痛苦。4.
13、2 结果记录与分析4.2.1 提示输入字符串以下是在运行程序后窗口出现的界面,提示输入字符串以及按Q 或q退出。如图 3.1:图 3.1 提示输入字符串名师资料总结-精品资料欢迎下载-名师精心整理-第 12 页,共 26 页 -4.2.2输入后显示字符串以下是输入字符串后按回车前显示的界面。如图3.2:图 3.2 输入字符串4.2.3在特定位置从无到有显示以下是按完回车键后依照程序设定位置,光标先跳到第七行、第三十五列,然后逐个字符循环显示字符串的界面对比。如图3.3:图 3.3 字符串从无到有名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 26 页 -4.2.4在特定位置向右
14、移动以下是字符串从第七行、第零列开始右移的对比界面。如图3.4:图 3.4 字符串右移4.2.5在特定位置向下移动以下是字符串从第七行、第零列开始下移的对比界面。如图3.5:名师资料总结-精品资料欢迎下载-名师精心整理-第 14 页,共 26 页 -图 3.5 字符串下移4.2.6小写变成大写加闪烁以下是字符串中所有小写字母变成大写后进行黄、绿、红依次变化现象对比界面。如图3.6:图 3.6 字符串颜色变化名师资料总结-精品资料欢迎下载-名师精心整理-第 15 页,共 26 页 -5 课程设计收获及心得学完微机原理与接口技术,本以为自己学到的东西挺多,直到课程设计开始,才深刻了解到自己似乎只了
15、解个皮毛。作为微原中的核心,汇编语言的程序设计在课程学习中只有一章,而且书本上的例题与这次课程设计任务相比,难度不大。几乎整整一周的微原课程设计结束,对于我,感受颇深,收获颇多。除了一些以前学过的指令,最深的感触是对中断INT 21H 和 INT 10H 中一些常用功能的运用。经过此次课程设计,我通过自己查资料、自己设计编程到最后完成功能实现,最终的成就感比平时更大,因为我感受到了学以致用,将理论用于实际的效果。在以后的学习中,我会继续保持这样良好的态度对待任何学习,不论是课程设计还是实习,抑或只是平时课程学习,我将为了提高自身实践能力而有目的的学习与收获,而不仅仅是为了应付考试或者拿到学位证
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年字符串动画显示汇编语言程序设计 2022 字符串 动画 显示 汇编语言 程序设计
限制150内