汇编语言课程设计---学生成绩管理程序(共37页).docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《汇编语言课程设计---学生成绩管理程序(共37页).docx》由会员分享,可在线阅读,更多相关《汇编语言课程设计---学生成绩管理程序(共37页).docx(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上郑重声明:本篇文档为从百度文库中下载的经过原文修改后的!目 录第一章 设计课题概述1.1 课程设计目的当今社会是一个信息时代的社会,计算机的使用也是越来越普遍了,各行业在管理职员都采用了一些管理软件,不管是银行、学校,大大小小的各种企业,都是使用的相应的 管理软件管理企业的各种信息,我选择的这个汇编语言课程设计题就是一个简单学生信息管理程序,虽然只能处理一些简单操作,但是其意义却是非凡,同过此课程设计,让我了解了一些简单的管理软件的基本原理,更深刻的理解了汇编语言的特点,对汇编语言有了一个跟深层次的理解。利用汇编程序编写一个小型学生成绩管理程序,实现学生信息成绩的插入
2、、修改、显示所有学生的各科成绩,并且可根据输入学生姓名插询该生的各科成绩,可统计所有成绩个各分数段的人数。1.2设计内容及要求设计一个学生管理程序,主要实现以下功能(1)各科成绩的录入、修改、和删除。(2)按姓名查询每个学生哥们成绩。(3)显示查询结果(4)统计各分数段的成绩的人数个分数段的人数。程序运行时,在出现的主菜单中,按l键,将浏览学生的各科成绩;按i键后,将执行插入功能,可以插入新的学生成绩,按m键,键输入需要修改的学生成绩,也包括不修改的科目;按d键输入要删除的学生姓名,将使其成绩全部变成0;按q键输入 查询的学生的姓名,将其各科成绩显示出来;按下c键将按数学成绩分段结果。第二章
3、总体设计2.1 总体设计思路(1)各科成绩的录入、修改、和删除。(2)按姓名查询每个学生各科成绩。(3)显示查询结果(4)统计各分数段的成绩的人数个分数段的人数。程序运行时,在出现的主菜单中,按l键,将浏览学生的各科成绩;按i键后将执行插入功能,可以插入新的学生成绩,按m键,键输入需要修改的学生成绩,也包括不修改的科目;按d键输入要删除的学生姓名,将使其成绩全部变成0;按q键输入 查询的学生的姓名,将其各科成绩显示出来;按下c键将按数学成绩分段结果。2.2 各版块功能描述main主程序模块用于对各种操作的调用,如插入、删除、显示所有学生的各科成绩等。Insert子程序插入模块用于实现对新增学生
4、的插入,插入至学生文本中,使用时需要调用get_rec子程序实现从键盘输入一个学生的信息。get_rec子程序模块 主要被Insert子程序调用,用于从键盘输入一个学生的信息query子程序模块根据学生姓名查询学生的各科成绩,学生姓名由键盘输入,再从文件中一次比较找出要查询学生的信息。modify子程序模块 首先从键盘输入要修改的学生信息,在从学生文件中寻找要修改的学生姓名,并将要修改后的信息写入文件。delete子程序模块由用户输入要修改学生的姓名,从学生文件中找出要删除的学生信息,将该学生的各项信息置为0,实现删除的操作。list子程序模块 用于显示学生文件中所有学生的各科成绩的信息,每次
5、从文件读取一个学生的信息并显示。count子程序模块用于对学生各科成绩的各分数段的统计。第三章 详细设计3.1 程序功能设计程序运行时,在出现的主菜单中,按l键,将浏览学生的各科成绩;按i键后,将执行插入功能,可以插入新的学生成绩,按m键,键输入需要修改的学生成绩,也包括不修改的科目;按d键输入要删除的学生姓名,将使其成绩全部变成0;按q键输入 查询的学生的姓名,将其各科成绩显示出来;按下c键将按数学成绩分段结果。 以上功能单独运行可以实现,(即在进入菜单后 选择其中一项功能运行可以成功运行,在关闭后选择另一项功能可以 成功运行),但是在整体运行时得不到想要的结果。所以如果输入有误,按退格键后
6、将会出错,但是此程序没有处理错误的功能,因此再输入时要特别注意。注:此程序除了源程序外还需要一个学生文件,该程序命名为score.txt,该文件用于存放学生信息,在源程序中程序数据段中fname的值应与文件的存放位置一致。3.2各模块程序详细流程显示错误信息显示记录文件读错?读一个记录打开文件NY返回关闭文件记录写入文件从终端接收用户输入记录置文件指针到文件末尾打开文件关闭文件返回 Query流程图Modify流程图Count流程图主程序流程图3.3 源代码及注释data segmentmess1 db student grade management system,0ah,0dh,$mess
7、2 db this is main menu,0ah,0dh,$mess3 db insert (i) name :,0ah,0dh,$mess4 db modify (m) maths(a) :,0ah,0dh,$mess5 db delete (d) English(b) :,0ah,0dh,$mess6 db query (q) computer(c) :,0ah,0dh,$mess7 db count (c) Chinese(d) :,0ah,0dh,$mess8 db exit (e),0ah,0dh,$mess9 db *$mess10 db *$mess11 db name Ma
8、 En Co Ch,0ah,0dh,$mess13 db list (l) please input:,0ah,0dh,$ mess12 db maths 60 70 80 90 100,0ah,0dh,$err1 db there is not this student$err2 db file close wrong$fname db e:masm5score.txtbuffer1 db 23 dup(?)buffeer db 0ah,0dh,$buffer2 db 30 dup(?)buffer3 db 8 dup(0)count db 5handle dw ?del db 8 dup(
9、0)x db ?data endsshow macro addrs lea dx,addrs mov ah,9 int 21hendmset_p1 macro amov ah,2 mov dh,a mov dl,36mov bh,0 int 10hendmset_p2 macro mov ah,2 mov dh,12 mov dl,2 mov bh,0 int 10hendmset_p3 macro mov ah,2 mov dh,1 mov dl,30 mov bh,0 int 10h endmclear macro mov al,0 mov cl,0 mov ch,0 mov dh,24
10、mov dl,79 mov bh,7 mov ah,6 int 10h endmclear1 macro mov al,0 mov bh,7 mov ch,4 mov cl,36 mov dh,10 mov dl,79 mov ah,6 int 10hendmclear2 macro mov al,0 mov bh,7 mov ch,12 mov cl,0 mov dh,24 mov dl,79 mov ah,7 int 10h; endm newline macro push ax push dx mov dl,0dh mov ah,2 int 21h mov dl,0ah mov ah,2
11、 int 21h pop dx pop axendm show_item macro addrs local iloop,w10 push bx push cx mov bx,0iloop: mov dl,addrsbx mov ah,2 int 21h inc bx cmp bx,15 jl iloop mov cx,4w10: mov dl, mov ah,2 int 21h mov dl, mov ah,2 int 21h mov dl, mov ah,2 int 21h mov dl,addrsbx mov ah,2 int 21h inc bx mov dl,addrsbx mov
12、ah,2 int 21h inc bx loop w10 newline pop cx pop bxendm getin macro addrs,count2 local zeroit,lp,input_end,exit push bx push ax mov bx,0zeroit: mov addrsbx, inc bx cmp bx,15 jl zeroit mov bx,0lp: mov ah,1 int 21h cmp al,0ah jz input_end cmp al,0dh jz input_end mov addrsbx,al inc bx cmp bx,count2 jl l
13、pinput_end: cmp al,0dh jz exit cmp al,0ah jz exit mov ah,7 int 21h jmp input_endexit: pop ax pop bxendmcode segmentmain proc far assume cs:code,ds:data,es:datastart: mov ax,data mov ds,ax mov ah,0 mov al,3 int 10h clear show mess1 show mess2newline show mess13 show mess3 show mess4 show mess5 show m
14、ess6 show mess7 show mess8 show mess9 show mess10 set_p3 w: mov ah,7 int 21h cmp al,i jnz n1 call insert jmp wn1: cmp al,m jnz n2 call modify jmp wn2: cmp al,d jnz n3 call delete jmp wn3: cmp al,q jnz n4 call query jmp wn4: cmp al,c jnz n6 call coun jmp wn6: cmp al,l jnz n7 call list jmp wn7: cmp al
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 课程设计 学生 成绩 管理程序 37
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内