- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
设计任务
用汇编语言实现闪烁文字的效果
2.原理
2.1题目功能分析
〔1〕屏幕提示输入字符串;
〔2〕输入完成后,字符动画显示颜色变化;
〔3〕单击“Q”或“q”键退出程序。
2.2算法说明
〔1〕屏幕提示输入字符串主要运用中断INT21H的0AH功能;
〔2〕颜色变化那么通过INT10H的09H功能循环调用实现;
〔3〕退出功能通过将输入‘Q’和‘q’与其ASCII比拟,跳转到退出程序;而退出程序主要通过INT21H的4CH功能实现。
2.3.流程图
开始
获取字符
设置字符串颜色
设置起始位置
输出字符串
延迟
次数已到?
是否输出?
结束
NN
Y
图1
字符串闪烁流程图
3.程序说明
3.1提示输入字符串显示功能实现
屏幕提示输入字符串主要运用中断INT21H的0AH功能,输入后回车那么完成字符串在特定位置的显示。
leadx,buf
movah,0ah
int21h
movbx,2;
movdi,0
B1:
moval,buf[bx]
cmpal,13;是否是回车?
jeAG1
movbuff1[di],al
incbx
incdi
jmpB1
AG1:
movah,0
moval,2
int10h;
OTHER:
movcx,0ffffh;
AG:
movdh,7;hang
movdl,35;lie
movah,2
movbh,0;
int10h;
leadx,buff1
movah,9
int21h;
movdh,7
movdl,35
movah,2
movbh,0
int10h;
leadx,buff2
movah,9
int21h;
subcx,1;
jnzAG;
3.2颜色变化功能实现
颜色变化功能实现相当于对字符串属性定义,表现出颜色差异,然后循环调用并插入延时。以下程序效果是三种颜色闪烁,其中aaa1表示白色,aaa2表示黑色,aaa3表示绿色,aaa4表示红色,aaa5表示紫色。往复调用彩色和黑色,在各种颜色变换之间插入黑色即可实现彩色间断闪烁的效果。具体程序如下:
shanshuo:;
callaaa1;white
calldelay1
callaaa2;black
calldelay1
callaaa3;white
calldelay1
callaaa2;black
calldelay1
callaaa4;white
calldelay1
callaaa2;black
calldelay1
callaaa5;white
calldelay1
callaaa2;black
calldelay1
MOVAH,08h;Q,q键退出
INT21H
cmpAL,Q
jeexit
cmpAL,q
jeexit
jmpshanshuo
3.3退出功能实现
退出功能通过将输入‘Q’和‘q’与其ASCII比拟,跳转到退出程序;
movah,08h;q键退出
int21H
cmpAL,Q
jeexit
cmpAL,q
jeexit
exit:movah,4ch
int21h
3.4完整程序
datasegment
buff1db$
buff2db$
bufdb100dup($)
buff3dbpleaseinputastring!,13,10,$
buff4dbPressQor
文档评论(0)