汇编试验报告-学生信息管理系统

上传人:豆浆 文档编号:91413683 上传时间:2019-06-28 格式:DOC 页数:18 大小:146.50KB
返回 下载 相关 举报
汇编试验报告-学生信息管理系统_第1页
第1页 / 共18页
汇编试验报告-学生信息管理系统_第2页
第2页 / 共18页
汇编试验报告-学生信息管理系统_第3页
第3页 / 共18页
汇编试验报告-学生信息管理系统_第4页
第4页 / 共18页
汇编试验报告-学生信息管理系统_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《汇编试验报告-学生信息管理系统》由会员分享,可在线阅读,更多相关《汇编试验报告-学生信息管理系统(18页珍藏版)》请在金锄头文库上搜索。

1、学生信息管理系统1. 实验类别使用汇编语言编程2. 实验内容和实验目的学生的信息包括姓名、班级、学号和成绩,其中成绩精确到1位小数。编写程序实现以下功能:(1)可以录入学生的信息,成绩以十进制形式录入,并显示;(2)可以按成绩进行排序显示;(3)可以统计平均成绩;(4)可以统计不及格、6070、7080、8090、90100各分数段的人数。3. 实验设备环境Windows 7 操作系统的pc机 ,使用QASM270编译器环境下编写。4. 实验实现过程及方法首先数据采用二维数组的形式进行存储,分为学生信息部分与成绩部分。然后将输入学生数也保存在一个一维数组中。然后再信息的存储过程中,对于字符串输

2、入进行转换,以二进制的形式存储在数据段中。然后采用冒泡排序,对于数据段中的人员信息进行排序。以成绩为参数。然后再对每个人员成绩进行遍历,统计各个数据层次中人员数,然后再成绩遍历的同时,将平均成绩也同时求出,在求平时成绩的时候,首先先将整数部分乘10 然后再加上小数部分,以便于后续的输出。将排序后的人员信息及成绩显示出来,然后将平均成绩也同时打印出来,还有各个分数层次中的人员数也都一并显示出来。下面是一些主要代码来实现上述过程:;数据部分 NUMBER DB 3 DUP(0) ;第一个存个/十位(ASCII码),第二个存个位(ASCII码),第三个存学生数(二进制) ;用20字节单元表示学生信息

3、,0-19中:0对应最大字符,1对应实际输入,2-18对应输入信息,19对应$ INFORMATION DB 99 DUP(20 DUP(0) ;用7字节单元来存分数,0-6中,0-4对应输入字符,5对应输入整数部分的二进制数,6对应于小数部分的二进制数 GRADE DB 99 DUP(7 DUP(0) AVERAGE_GRADE_BUFFER DB 2 DUP(0) ;第一个存整数部分(二进制形式),STORE_STUDENT_NUM ;存储学生总数,结果送cx中STORE_STUDENT_INFORMATION ;存储学生信息STORE_STUDENT_GRADE ;存储每个学生成绩SOR

4、T ;采用冒泡排序_DISPLAY ;显示结果FIND_RESULT ;显示平均成绩和分段人数关键算法的流程图:关于分段人数与总成绩的计算 冒泡排序算法:处理计算计算总成绩60?70?80?90?=100错误返回NNNNNA+B+C+D+E+YYYYY处理排序冒泡i=0 交换i+Ki =90 is:,$ ;各分数段人数 RESULT2 DB 0DH,0AH,The number of student in 80-90 is:,$ RESULT3 DB 0DH,0AH,The number of student in 70-80 is:,$ RESULT4 DB 0DH,0AH,The numb

5、er of student in 60-70 is:,$ RESULT5 DB 0DH,0AH,The number of student in =60 is:,$ GRADE_RANK DB 0DH,0AH,The grade list(high to low)is:,0DH,0AH,$ ;打印排名 BLANK DB ,$ HUANHANG DB 0DH,0AH,$KAISHISHUCHU DB 0DH,0AH,*,0DH,0AH,$ ;数据 NUMBER DB 3 DUP(0) ;第一个存个/十位(ASCII码),第二个存个位(ASCII码),第三个存学生数(二进制) ;用20字节单元表示

6、学生信息,0-19中:0对应最大字符,1对应实际输入,2-18对应输入信息,19对应$ INFORMATION DB 99 DUP(20 DUP(0) ;用7字节单元来存分数,0-6中,0-4对应输入字符,5对应输入整数部分的二进制数,6对应于小数部分的二进制数 GRADE DB 99 DUP(7 DUP(0) AVERAGE_GRADE_BUFFER DB 2 DUP(0) ;第一个存整数部分(二进制形式),第二个存小数部分(二进制形式) N0 DB 0 ;各分数段人数存储区(二进制形式) N1 DB 0 N2 DB 0 N3 DB 0 N4 DB 0 DATAS ENDS CODES SE

7、GMENT ASSUME CS:CODES,DS:DATAS START: ;此处输入代码段代码 MOV AX,DATAS MOV DS,AX MOV SI,0 ;指向每个学生信息 MOV DI,0 ;指向每个学生成绩 MOV CX,100 ;初始化学生数 MOV DX, OFFSET STUDENT_NUM ;请求输入学生总数 MOV AH,09 INT 21H CALL STORE_STUDENT_NUM ;存储学生总数,结果送cx中 CMP CX,0 ;输入为0退出 JLE OUTTODOS CMP CX,100 ;学生数超出本程序范围,退出 JGE OUTTODOS INPUT: MOV DX, OFFSET STUDENT_INFORMATION ;请求输入学生信息 MOV AH,09 INT 21H CALL STORE_STUDENT_INFORMATION ;存储学生信息 ADD SI,20 ;指向下一个学生信息 MOV DX, OFFSET STUDENT_GRADE ;请求输入学生成绩 MOV AH,09 INT 21H CALL STORE_STUDENT_GRADE ;存储每个学生成绩 ADD DI,7 ;指向下一个学生 LOOP INPUT ;循环,直到输入所有学生成绩 CALL SORT ;排序 CALL _DISPLAY ;显示结果

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号