汇编语言实现文本编辑器Word文档格式.doc

上传人:b****1 文档编号:13116484 上传时间:2022-10-05 格式:DOC 页数:14 大小:160.12KB
下载 相关 举报
汇编语言实现文本编辑器Word文档格式.doc_第1页
第1页 / 共14页
汇编语言实现文本编辑器Word文档格式.doc_第2页
第2页 / 共14页
汇编语言实现文本编辑器Word文档格式.doc_第3页
第3页 / 共14页
汇编语言实现文本编辑器Word文档格式.doc_第4页
第4页 / 共14页
汇编语言实现文本编辑器Word文档格式.doc_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

汇编语言实现文本编辑器Word文档格式.doc

《汇编语言实现文本编辑器Word文档格式.doc》由会员分享,可在线阅读,更多相关《汇编语言实现文本编辑器Word文档格式.doc(14页珍藏版)》请在冰豆网上搜索。

汇编语言实现文本编辑器Word文档格式.doc

指导教师:

李春林工作单位:

计算机科学与技术学院

题目:

文本方式下字处理程序的设计与实现

初始条件:

理论:

完成了《汇编语言程序设计》课程,对微机系统结构和80系列指令系统有了较深入的理解,已掌握了汇编语言程序设计的基本方法和技巧。

实践:

完成了《汇编语言程序设计》的4个实验,熟悉了汇编语言程序的设计环境并掌握了汇编语言程序的调试方法。

要求完成的主要任务:

(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)

理解键盘和显示器接口的工作原理,掌握BIOS键盘和显示器中断调用的使用方法,掌握复杂内存数据结构的定义和管理方法。

具体的设计任务及要求:

1)清晰且易于操作的用户界面;

动态显示光标的当前位置;

2)在文本编辑区接受并保存输入信息;

3)光标上移,下移,左移,右移;

4)允许删除当前光标前的字符;

5)将编辑文本存盘,读出并显示硬盘中的指定文件。

(任选)

在完成设计任务后,按要求撰写课程设计说明书;

对课程设计说明书的具体要求请见课程设计指导书。

阅读资料:

1)《IBM—PC汇编语言程序设计实验教程》3.3节

2)《IBM—PC汇编语言程序设计(第2版)》9.1节

时间安排:

设计安排一周:

周1、周2:

完成系统分析及设计。

周3、周4:

完成程序调试,和验收。

周5:

撰写课程设计报告。

指导教师签名:

年月日

系主任(或责任教师)签名:

年月日

一、系统描述

1、目的

(1)掌握计算机汇编语言的使用。

学完汇编课程,理解和掌握键盘和显示器接口的工作原理,掌握BIOS键盘和显示器中断调用的使用方法,掌握复杂内存数据结构的定义和管理方法。

(2)通过设计、编制、调试一个文本方式下字处理程序。

实现一个简单的文本编辑器的基本功能

2、设计内容

2)动态显示光标的当前位置;

3)在文本编辑区可以输入字符信息;

4)光标上移,下移,左移,右移,还可以回车,使用home键、end键退格键;

5)允许删除当前光标前的字符;

6)将编辑文本存盘,读出并显示硬盘中的指定文件。

3、开发平台

所使用的系统:

WindowsXP

程序开发工具:

MasnforWindows6.0集成实验开发环境

序设计语言:

IBM-PC汇编语言

二、文本编辑译系统的概要设计

文本编辑程序要实现简单的文本编辑器基本功能。

1.设计一个友好,易于操作的界面,界面可仿照windows记事本,但windows记事本的菜单项不好制作,所以将主要功能说明制作到边框,方便使用即可。

并且实现在某一固定区域内可以显示当前光标的坐标。

2.实现用键盘上的功能键制编辑文本,

例如:

按一下BackSpace键可以删除当前光标以前的字符;

按一下Delete键可以删除当前光标之后的字符;

按一下Home键可以使光标跳转到当前行的第一列;

按一下End键可以使光标跳转到当前行的最后一列;

按一下F1键可以激活File的五个功能键(new,open,save,saveas,exit);

按一下Enter键可以使光标跳转到下一行的第一列;

按一下F1键可以显示帮助信息

用上下左右键使光标在文本框内任意移动

3.根据程序思想设计程序流程图,按照程序流程图完成实现各个模块的功能

三、详细的算法描述

1、本程序主要使用的数据结构如下:

pathdb40dup(0),'

$'

;

保存文件路径

bufferdb1840dup(0),'

;

保存文本内容,作为一个缓存区

linedb?

保存列号

rowdb?

;

保存行号

bakdb3850dup(0);

保存缓冲区的内容

2、本程序主要使用的子程序说明

Wind;

创建窗口的子程序

edit;

进行文本文本编辑

win4

;

动态显示光标位置,先保存光标位置,最后一行输出行列数改变了光标位置

Open;

输出文本内容

Save;

保存文本内容

clean_path;

清除保存路径的内容

3、函数调用关系:

主函数main

Wind edit

Win3和wind4

各个键的 curs_getmenu_showfunc_key

功能模块

newopen savesave_asexit

homeendbackspacedeleteF10helpwin4

4、程序中主要使用的宏汇编以及出口、入口的参数说明

read_chrmacro;

读取字符宏定义

movah,0

int16h

endm

huixianmacro

movah,1

int21h

xianshimacro

movah,2

readfmacro

movah,3fh

openfmacro

movah,3dh

moval,0

int21h

endm

jianlifmacro

movah,3ch

movcx,00

writefmacro

movah,40h

closefmacro

movah,3eh

stringmacrop1;

输入字符光标

movah,9

leadx,p1

winmacroopr1,opr2,opr3,opr4,opr5,opr6;

建立窗口

movah,07h ;

初始化

moval,opr1 ;

上或下卷的行数

movbh,opr2 ;

卷入行属性

movch,opr3 ;

左上角行号

movcl,opr4 ;

左下角列号

movdh,opr5 ;

右上角行号

movdl,opr6 ;

右下角列号

int10h

curs_locatemacroop1,op2,op3;

定光标位置

movah,2

movbh,op1 ;

页号

movdh,op2 ;

行号

movdl,op3 ;

列号

curs_getmacro;

读光标位置

movah,03h

movbh,0

int10h ;

页号 ch/cl:

开始/结束行;

dh/dl当前行

buffer_locatemacrorrow,ccol

;

坐标定位r*80+c坐标在ax中;

即行列数对应的缓冲区偏移地址ax中

pushbx

movah,0d

decrrow

movbl,rrow

moval,80d ;

r*80

mulbl

addal,ccol ;

+c

adcah,0

popbx

开始

edit的程序流程图:

键盘输入字符

判断键值

是功能键

刷屏,重新显示文本界面

录入字符保存,保存字符

N

Y

up

光标上移

row-1

Y

down

光标下移

Row+1

光标左移

line-1

left

光标右移

line+1

right

光标移到本行首位

line=0

Home

line=79

End

Y

Enter

光标移到下行首位

row+1;

line=0

删除光标前的字符

row+1

Backspace

删除光标后的字符

Delete

创建新文件

F1new

Path=输入的文件路径

打开文件

F2open

保存文件

F3save

另存文件

F4save_as

F5exit

结束

四、软件的测试方法和测试结果

经过测试实现用键盘上的功能键制文本编辑程序,

1、测试用例:

1.按一下BackSpace键可以删除当前光标以前的字符;

2.按一下Delete键可以删除当前光标之后的字符;

3.按一下Home键可以使光标跳转到当前行的第一列;

4.按一下End键可以使光标跳转到当前行的最后一列;

5.按一下Enter键可以使光标跳转到下一行的第一列;

6.用上下左右键使光标在文本框内任意移动

2、文件操作

1.按一下new键可以创建新文件

2.按一下open键可以打开已有的文件;

3.按一下save键可以保存当前文件

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1