- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
文本编辑器的设计1111
一 文本编辑器的设计
1题目分析
1.1 设计一个有菜单栏的编辑窗口,在该窗口可以实现文本的输入,利用DEL键、BackSpace键、Home键、End键、上下左右光标键,实现对输入文本的全屏幕编辑。
1.2 实现文件的新建、打开、保存、另存为与退出功能。
1.3 用彩色组和背景颜色来设计界面颜色。
2、设计思路
设计本课题充分利用了dos和bios中断功能
利用bios调用10h中断功能,建立窗口大小、背景颜色、字体颜色、置光标位置、取光标位置。调用DOS系统功能中的O9弓功能,可以实现显示菜单信息字符串。调用BIOS中的键盘I/O中断调用(16H中断)中的0号功能,可以从键盘读取字符,通过对上下左右方向移动键以及“Del”、“BackSpace”、“Home”、“END”键的扫描码的判断,结合1OH中断功能中的02H号、03H号功能确定光标的相应移动,从而实现对输入文本的全屏幕编辑。利用DOS系统功能调用中的文本管理功能,如建立文件(16H)、打开文件(0FH)、读文件(3FH)、写文件(40H)等,可以实现舯文本的操作。
3、 详细设计
3.1 确定方案
3.1.1 设计一个25*80的操作界面,界面包括菜单、文本编辑区,在菜单右上显示年月,右下显示当前光标的位置。
3.1.2 设计按F3键后,可以出现功能菜单以及各个功能之间的调动
3.1.3 F3功能键下的新建文件、文件打开、文件保存、文件另存
3.1.3 从键盘读入字符,可以使用上、下、左、右以及回车键对文本框进行编辑。
3.1.4 按一下BackSpace键可以删除当前光标以前的字符;按一下Delete 键可以删除当前光标位置的字符;按一下Home键可以使光标跳转到当前行的第一列;按一下End 键可以使光标跳转到当前行的最后一列;按一下F8 键可以显示帮助信息;
3.2 软件流程图
图(一) 系统框架图
3.2.2 系统流程图
图 (二) 系统流程图
3.3 系统功能分析
3.3.1 宏定义模块
定义读取字符宏定义,用bios中的16h中断
red_char macro ;读取字符宏定义 mov ah,0
int 16h
endm
定义窗口宏定义,用bios中的10h中断
Window macro para1,para2,para3,para4,para5,para6 ;建立窗口 mov ah,06h
mov al, para1 //行数/清零
mov bh, para2 //字符属性
mov ch, para3 //窗口左上行号
mov cl, para4 //窗口左上列号
mov dh, para5 //窗口右下列号
mov dl, para6 //窗口右下列号
int 10h
endm
输入光标宏定义,用dos中的21h中断
string macro p1 ;输入字符光标 mov ah,9
lea dx,p1
int 21h
endm
光标位置宏定义,用bios中的10h中断
pos_curse macro op1,op2,op3 ;定义光标位置 mov ah,2
mov bh,op1
mov dh,op2
mov dl,op3
int 10h
endm
显示光标位置宏定义,用bios中的10h中断
pos_get macro ;显示光标位置 mov ah,03h
mov bh,0
int 10h
endm
3.3.2 建立窗口及显示状态栏 ;创建窗口子程序
win 0,4eh,1,0,24,79 ;定义窗口背景
win 1,59h,0,0,0,79
win 0,6dh,24,0,24,79
show: ;显示菜单位置及 ;显示状态栏位置及0,1,0
mov row,dh
mov line,dl
wind噢萎缩 endp
3.3.3 在文本编辑中编辑文本
在文本编辑区域中编辑文字,当在键盘上输入相应按键会在编辑区中显示出来,用于读出字符。此子程序调用了pos_get宏过程,获取光标位置,它调用了bio
文档评论(0)