汇编成绩管理系统.docx
- 文档编号:5325037
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:26
- 大小:554.69KB
汇编成绩管理系统.docx
《汇编成绩管理系统.docx》由会员分享,可在线阅读,更多相关《汇编成绩管理系统.docx(26页珍藏版)》请在冰豆网上搜索。
汇编成绩管理系统
郑州工业应用技术学院
汇编语言程序设计
题目:
基于汇编语言的学生成绩管理系统
姓名:
王浩浩
院(系):
信息工程学院
专业班级:
14级计算机科学与技术
学号:
1401110204
指导教师:
冯梦清
成绩:
时间:
2017年5月22日至2017年6月9日
郑州工业应用技术学院
课程设计任务书
题目基于汇编语言的学生成绩管理系统
专业、班级14级计算机科学与技术学号1401110204姓名王浩浩
主要内容:
通过对校园管理进行深入研究,结合成绩管理的实际需求,设计开发了学生成绩管理系统,并将其应用于某高校的学生成绩管理。
用来对学生成绩、选课,教师授课、录入成绩等一系列的行为进行建模,开发出了符合实际的、应用广泛的学生成绩管理系统,对学生成绩信息应用信息化管理,有很多优点。
例如:
存储量很大、方便查找、检索速度快等。
这些优点能大大地提高学校学生档案管理的效率。
因此,开发一套这样管理软件是非常有必要的事情。
基本要求:
本次设计具有以下功能:
1、取得数据模块。
主要完成将学生记录存入结构体数组中的工作。
2、处理数据模块。
主要完成插入记录、删除记录、修改、保存文件的工作。
3、输出结果模块。
主要完成输出记录、查找记录、退出程序的工作。
主要参考资料:
[1]范立南,刘天惠.SQLServer2000实用教程[M].北京:
清华大学出版社,2010.
[2]董健全,丁宝康.数据库实用教程[M].北京:
清华大学出版社,2007.
[3]陈禹,《软件开发工具》编委会.软件开发工具[M].北京:
航空工业出版社,2015.
完成期限:
5月22日——6月9日
指导教师签名:
课程负责人签名:
摘要
管理信息系统正在向着网络化、智能化和集成化等趋势发展。
学生成绩管理系统是为了更好的管理学生考试成绩而开发的数据管理软件。
它对于一个学校是不可缺少的重要部分,它的内容对于学校的决策者和管理者来说都至关重要。
学生成绩管理管理系统为用户提供充足的信息和快捷的查询手段,实现学生基本信息、成绩的录入,删除,查询,维护以及成绩的统计分析等几方面的功能,是现实问题的迫切要求。
本系统开发的总体任务是实现学生成绩管理的系统化、规范化、自动化。
达到提高学生成绩管理效率的目的。
与传统管理方法相比有明显的优点:
查找方便,可靠性高,保密性好,成本低。
彻底改变了以前繁杂的管理模式,实现全面的、相对集中的、职能化的信息综合管理。
计算机被用到信息管理系统的环境正是适应了当今时代飞速发展的信息时代。
人们深刻的认识到了计算机功能的强大,对于复杂的信息管理,计算机充分发挥着它的优越性。
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低,这些优点极大地减轻了学院教学人员的工作量,缩小开支,提高了学生档案管理的效率和准确性,能够合理的安排时间,学生能够尽快的知道自己的考试成绩。
同时,学生管理系统的应用也为今天的教育在未来市场的竞争力有所提高。
关键字:
学生成绩管理;数据库;汇编;
目录
摘要I
1.系统分析1
1.1系统开发背景1
1.2可行性分析1
1.3系统目标1
1.4系统流程图2
2.系统总体设计4
2.1总体结构图4
2.3总体数据结构5
3.详细设计6
3.1程序功能设计6
3.2设计思路6
4.系统测试8
4.1测试方案8
4.2测试用例及测试结果8
4.3软件可靠性10
5.软件使用说明11
6.设计总结12
参考文献13
附录14
1.系统分析
1.1系统开发背景
学生成绩管理系统是为了更好的管理学生成绩而开发的数据管理软件。
它对于一个学校是不可缺少的重要组成,它的内容对于学校的决策者和管理者来说都至关要。
所以,成绩管理系统为用户提供充足的信息和快捷的查询手段,实现学生的基本信息、成绩录入,删除、查询、修改、维护以及成绩的统计分析等方面的功能,是现实问题的迫切要求。
1.2可行性分析
可行新分析就是用最小的代价在尽可能短的时间内确定问题是否能够解决。
这步工作的主要是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以比较抽象的方式进行系统分析和设计的过程。
可行性研究的最根本任务是对以后的行动方针提出建议,从而节省人力、时间,按照一个较好的解决方案来完成计,并且为工程制定一个初步的计划。
(1)技术可行性本系统采用汇编DOS窗口进行数据的管理、操作和维护,进行数据的录入、删除、查询、浏览、修改、统计等功能。
由其的数据存储功能、方便快捷的验证功能、使用的灵活、良好的可扩展性、以及广泛实际应用,充分说明本系统在技术方面的可行性。
(2)操作可行性本系统设计清晰,操作简洁,并达到操作过程中的直观、方便、实用、安全等要求。
1.3系统目标
设计一个学生管理程序,主要实现以下功能
(1)各个学生的姓名、性别、ID、成绩的录入、修改、和删除;
(2)按ID查询每个学生的成绩和信息;
(3)显示查询结果;
(4)显示所有学生的个人信息和成绩。
程序运行时,在出现的主菜单中,按i键后,将执行插入功能,可以插入新的学生信息;按d键输入要删除的学生姓名;按q键输入ID查询的学生的信息;按下e键将退出程序;按m键,键输入需要修改的学生成绩;按下c键将按成绩分段结果;按下p键在电脑有打印的情况下打印程序,途中会出现r/c提示,r表示退出正在进行的操作回到主界面,c表示继续操作;程序中输入性别(sex),须输入0或者1.
1.4系统流程图
系统流程图如图1-1所示:
图1-1系统流程图
2.系统总体设计
本系统有插入、删除、查询、修改、显示、统计退出五大模块,各模块的主要功能有:
(1)插入:
使用者可在打开程序主界面之后,按“i”键实施插入功能,添加信息主要有4项:
ID(要求输入四位数字)、NAME(姓名)、SEX(性别,男生输入1,女生输入0),每项输入完成按回车输入下一项,输入完成之后有提示r/c,r表示退出正在进行的操作回到主界面,c表示继续添加。
此处可实现程序数据的存储,存储位置“c:
/score.txt”;
(2)删除:
打开程序主界面之后,按“d”键实施删除功能,只需输入ID即可删除该生在系统中的所有信息,此处可实现程序数据的删除;
(3)查询:
打开程序主界面之后,按“q”键实施查询功能,此时提示输入信息同删除,此处可实现程序数据的查询;
(4)显示:
打开程序主界面之后,按“l”键实施显示功能,即可显示出所有的学生信息,此处可实现程序数据的显示;
(5)修改:
打开程序主界面之后,按“m”键实施修改功能,即可显示出所有的学生信息,此处可实现程序数据的显示;
(6)打印:
在系统有打印功能的前提下,在主界面中输入“p”,就可对已有的成绩打印;
(7)退出:
在使用完成之后,按“e”即可退出程序,也可以直接点关闭按钮。
2.1总体结构图
总体结构图如图2-1所示:
图2-1总体结构图
2.3总体数据结构
(1)main主程序模块
用于对各种操作的调用,如插入、删除、显示所有学生的成绩、信息等;
(2)Insert子程序插入模块
用于实现对新增学生的插入,插入至学生文本中;
(3)query子程序模块
根据学生ID查询学生的所有信息,学生ID由键盘输入,再从文件中一次比较找出要查询学生的信息;
(4)delete子程序模块
由用户输入要删除学生的ID,从学生文件中找出要删除的学生信息,实现删除的操作。
(5)list子程序模块
用于显示学生文件中所有学生的成绩信息,每次从文件读取一个学生的信息并显示。
3.详细设计
3.1程序功能设计
程序运行时,在出现的主菜单中,按l键,将浏览学生的各科成绩;按i键后,将执行插入功能,可以插入新的学生信息;按d键输入要删除的学生姓名;按q键输入ID查询的学生的信息;按下e键将退出程序;途中会出现r/c提示,r表示退出正在进行的操作回到主界面,c表示继续操作;程序中输入性别(sex),须输入0或者1。
以上功能单独运行可以实现,(即在进入菜单后选择其中一项功能运行可以成功运行,在关闭后选择另一项功能可以成功运行),但是在整体运行时得不到想要的结果。
注:
此程序除了源程序外还需要一个学生文件,该程序命名为score.txt,该文件用于存放学生信息。
3.2设计思路
(1)数据定义
一个数据元素(一个学生的数据项)应该为一个结构类型,定义如下:
ID_LENGTHEQU4
NAM_LENGTHEQU20
SEX_LENGTHEQU1
SCORE_LENGTHEQU5
配置信息:
ID4位数;名字20个字符;性别,1位数(0或者1);分数5位,范围为0-100。
(2)方法和步骤
这个程序主要分为插入、删除、查询、显示、修改、退出,定义如下:
mess3DB'*insert(i)
*',0ah,0dh,'$'
mess4DB'*modify(m)
*',0ah,0dh,'$'
mess5DB'*delete(d)
*',0ah,0dh,'$'
mess6DB'*query(q)
*',0ah,0dh,'$'
mess7DB'*count(c)
*',0ah,0dh,'$'
mess8DB'*print(p)
*',0ah,0dh,'$'
mess9DB'*exit(e)
*',0ah,0dh,'$'
(1)进去之后首先创建一个“.txt”数据库文本,用来储存输入信息,控制文件的打开、关闭、读写、移动等。
(2)用空格初始化缓冲区子程序,定义出要在主界面所要显示的内容,显示提示信息,打开文件,按提示进入操作。
(3)插入:
insert子程序;删除:
delete子程序;查询:
query子程序;全部显示:
list子程序;修改:
modify;打印:
print;退出:
exit子程序。
4.系统测试
4.1测试方案
(1).asm的源程序文件建立.exe的可在电脑上直接运行的文件;
(2)打开.exe文件,按照提示输入,分别测试插入、删除、查询、显示、修改、退出等功能。
4.2测试用例及测试结果
(1)主程序截图
(2)显示所有成绩
(3)插入成绩
(4)修改成绩
(5)删除成绩
(6)查找成绩
(7)统计成绩
4.3软件可靠性
(1)分析测试集中的所有测试用例,测试可以通过测试准则。
(2)测试代码可以达到相应的测试覆盖率,每一个状态和路径都可以达到相应效果。
(3)对测试结果进行分析,所有的安全性需求可得到了满足。
程序运行时,在出现的主菜单中,按l键,将浏览学生的各科成绩;按i键后,将执行插入功能,可以插入新的学生信息;按d键输入要删除的学生姓名;按q键输入ID查询的学生的信息;按下e键将退出程序;途中会出现r/c提示,r表示退出正在进行的操作回到主界面,c表示继续操作;程序中输入性别(sex),须输入0或者1。
以上功能单独运行可以实现,(即在进入菜单后选择其中一项功能运行可以成功运行,在关闭后选择另一项功能可以成功运行),但是在整体运行时得不到想要的结果。
5.软件使用说明
通过对这学生成绩管理的的制作,使我对汇编语言的基本知识的使用更加熟练,同时也增加了我对汇编语言的一些认识,在作业完成过程中通过和同学的交流,也增加了合作的技巧。
通过查阅资料也学到了一些课本上没有的东西,拓宽了自己的知识面,增加了学好汇编语言的信心。
这不是第一次用汇编语言来设计一个小程序,平时做了很多实验,写了很多小程序。
但这次是一个综合的程序,平时的很多程序都用到了。
历时两周终于完成,其间有不少感触。
在本次的课程设计过程中,我最大的收获就是学到了不少新的知识,同时可以自己学到的汇编语言的知识和以前学的程序设计的知识应用到实践中,熟悉了开发环境,提高了自己的动手能力,并顺利地完成了此次的任务。
课程设计让我从中得到莫大的信心、鼓励、快乐和成就感,.编程过程中,我遇到了一些困难。
这我通过上网查询和去图书馆查找资料解决问题,有效地利用网络资源和学校图书资源,同时也了解了更多的知识获取的途径,扩大了自己的知识面,遇到问题时,多数情况下我是自己独立解决的,这锻炼我独立思考问题和独立解决问题的能力;如果自己通过查找资料无法解决,我就向老师和同学寻求帮助,不但学到了新的,更完善解决问题的方法,还学会了与人沟通,与人交流。
我认识到有时候,其他人的一点提示,就会令自己茅塞顿开,得到灵感。
因此,在作课程设计时,不要吝惜自己的思路和想法,尽可能多的与大家的交流。
许多时,我们都能从中得到进步,得到提示,甚至得到更好的方案。
同时我也发现了自己的一些问题。
本次课程设计,对我帮助很大。
它提高了我的理论知识和和实践动手能力;提高了我独立思考问题和解决问题的能力;同时,增强了我与人探讨问题,交流思路的意识;此外,它还让我发现了自己在编程习惯上的许多不足,对以后的编写程序和设计解题思路有很大的启发。
在以后的学习和实践中,我会不断督促自己,不断提高,不断进步。
6.设计总结
通过对这学生成绩管理的的制作,使我对汇编语言的基本知识的使用更加熟练,同时也增加了我对汇编语言的一些认识,在作业完成过程中通过和同学的交流,也增加了合作的技巧。
通过查阅资料也学到了一些课本上没有的东西,拓宽了自己的知识面,增加了学好汇编语言的信心。
这不是第一次用汇编语言来设计一个小程序,平时做了很多实验,写了很多小程序。
但这次是一个综合的程序,平时的很多程序都用到了。
历时两周终于完成,其间有不少感触。
在本次的课程设计过程中,我最大的收获就是学到了不少新的知识,同时可以自己学到的汇编语言的知识和以前学的程序设计的知识应用到实践中,熟悉了开发环境,提高了自己的动手能力,并顺利地完成了此次的任务。
课程设计让我从中得到莫大的信心,鼓励,快乐和成就感,编程过程中,我遇到了一些困难。
这我通过上网查询和去图书馆查找资料解决问题,有效地利用网络资源和学校图书资源,同时也了解了更多的知识获取的途径,扩大了自己的知识面。
遇到问题时,多数情况下我是自己独立解决的,这锻炼我独立思考问题和独立解决问题的能力;如果自己通过查找资料无法解决,我就向老师和同学寻求帮助,不但学到了新的,更完善解决问题的方法,还学会了与人沟通,与人交流,我认识到有时候,其他人的一点提示,就会令自己茅塞顿开,得到灵感。
因此,在作课程设计时,不要吝惜自己的思路和想法,尽可能多的与大家的交流。
许多时,我们都能从中得到进步,得到提示,甚至得到更好的方案。
同时我也发现了自己的一些问题,本次课程设计,对我帮助很大。
它提高了我的理论知识和和实践动手能力;提高了我独立思考问题和解决问题的能力;同时,增强了我与人探讨问题,交流思路的意识;此外,它还让我发现了自己在编程习惯上的许多不足,对以后的编写程序和设计解题思路有很大的启发,在以后的学习和实践中,会不断督促自己,不断提高,不断进步。
参考文献
[1]范立南,刘天惠.SQLServer2000实用教程[M].北京:
清华大学出版社,2010.
[2]董健全,丁宝康.数据库实用教程[M].北京:
清华大学出版社,2007.
[3]陈禹,《软件开发工具》编委会.软件开发工具[M].北京:
航空工业出版社,2015.
[4]黄梯云.管理信息系统习题集(第4版)(面向21世纪课程教材)(BZ)[M].北京:
高等教育出版社,2010.
[5]朱耀庭,董焕芝,高飞.汇编语言程序设计[M].北京:
清华大学出版社,2013.
附录
DATASEGMENT
TIPS0DB'Tips:
',0DH,0AH,'$';插入提示信息
TIPS1DB'SEX:
1:
male0:
female',0DH,0AH,'$'
TIPS3DB'PleaseinputID:
$';查询提示信息
TIPS4DB'Pleaseenter"r"toreturn$'
TIPS5DB'Pleaseenter"r"toreturn,"c"tocontinue$'
IDDB'ID:
$'
NAMDB'NAME:
$'
SEXDB'SEX:
$'
SCOREDB'SCORE:
$'
FIDDW?
;文件号
SEXMDB'male$'
SEXFDB'female$'
COUNT_ADB'90~100:
$';统计提示信息
COUNT_BDB'80~89:
$'
COUNT_CDB'70~79:
$'
COUNT_DDB'60~69:
$'
COUNT_EDB'00~59:
$'
ABDB5DUP('0');统计结果
mess1DB'*TheStudentGradeManagement
System*',0ah,0dh,'$'
mess2DB'*thisismainmenu
*',0ah,0dh,'$'
mess3DB'*insert(i)
*',0ah,0dh,'$'
mess4DB'*modify(m)
*',0ah,0dh,'$'
mess5DB'*delete(d)
*',0ah,0dh,'$'
mess6DB'*query(q)
*',0ah,0dh,'$'
mess7DB'*count(c)
*',0ah,0dh,'$'
mess8DB'*print(p)
*',0ah,0dh,'$'
mess9DB'*exit(e)
*',0ah,0dh,'$'
mess10DB'********************************$'
mess13DB'*list(l)
*',0ah,0dh,'$'
mess14DB'*pleasechose(l/i/m/d/q/c/p/e):
*',0ah,0dh,'$'
ID_LENGTHEQU4;配置信息
NAM_LENGTHEQU20
SEX_LENGTHEQU1;性别请勿更改位数
SCORE_LENGTHEQU5
STU_LENGTHDW?
;每条学生信息总长度
STU_LENGTH_ADD1DW?
NAM_SEX_SCORE_LENGTHDW?
DELDB30DUP('');清空信息用
DEL_DONEDB'Deletesuccess!
$'
ERRDB'Dataerror,Pleaseinputagain!
$'
NOSTUDB'Sorry,thereisnothisstudnet!
$'
ERR_NODB'Nostudentinformation!
$'
ERR_SAMEDB'ThereisthesameID,pleaseinputagain!
$'
NEWFDB0DH,0AH,0DH,0AH,'Warning:
thisoperationwillemptyallyour
data!
',0DH,0AH,0DH,0AH,'Willyoucontinue?
(y:
empty,other
key:
return):
$'
FPATHDB'c:
\score.txt',0;数据库文本
STRDB50;缓冲区str
DB?
DB50DUP(?
)
STR0DB50DUP(?
);缓冲区str0
ENTERDB'$';空格
TMPDW0;是否为空标志信息
SCDB0;分数保护处用
BYEDB'Thanksforuseour
program!
',0DH,0AH,0DH,0AH,'Bye~Bye~$'
BY0DB'Writer:
$'
BY1DB'07212151206(GaoTian)$'
BY2DB'07212151207(YuChangMing)$'
BY3DB'07212151208(YiBaoFa)$'
BY4DB'07212151209(DongJunZai)$'
BY5DB'07212151210(LuoChun)$'
DATAENDS
SET_P1MACRO;设定光标位置A
MOVAH,02H
MOVDH,02
MOVDL,03
MOVBH,0
INT10H
ENDM
SET_P3MACRO
MOVAH,02H;设定光标的位置B
MOVDH,15
MOVDL,44
MOVBH,0;当前这页
INT10H
ENDM
TABMACRO;换行
MOVAH,2
MOVDL,0DH
INT21H
MOVDL,0AH
INT21H
ENDM
CREATEFMACROFILE_ID,FILE_PATH
;创建文件([传入]文件号、[传入]文件
路径)
MOVAH,3CH
MOVCX,00H;普通文件
LEADX,FILE_PATH
INT21H
MOVFILE_ID,AX
ENDM
OPENFMACROFILE_ID,FILE_PATH;打开文件([传入]文件号、[传入]文件
路径)
MOVAL,2;读写文式打开
MOVAH,3DH
LEADX,FILE_PATH
INT21H
MOVFILE_ID,AX
ENDM
CLOSEFMACROFILE_ID;关闭文件([传入]文件号)
MOVBX,FILE_ID
MOVAH,3EH
INT21H
ENDM
READFMACROFILE_ID,TEMP,NUM
;读文件([传入]文件号、[传入]缓冲区、
[传入]字节数)
MOVBX,FILE_ID
LEADX,TEMP
MOVAX,NUM
MOVCX,AX
MOVAH,3FH
INT21H
ENDM
WRITEFMACROFILE_ID,TEMP,NUM;写文件([传入]文件号、[传入]缓冲区、
[传入]字节数)
MOVBX,FILE_ID
MOVCX,NUM
LEADX,TEMP[2]
MOVAH,40H
INT21H
ENDM
MOVEFMACROFILE_ID,STYPE,HIGEC,LOWD;移动文件指针([传入]文件号、[传
入]移动方式、[传入]偏移字节(高位)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编 成绩管理系统