微机原理课程设计报告 学生成绩排序名次【精选文档】

上传人:re****.1 文档编号:459287992 上传时间:2024-02-02 格式:DOC 页数:8 大小:728.50KB
返回 下载 相关 举报
微机原理课程设计报告 学生成绩排序名次【精选文档】_第1页
第1页 / 共8页
微机原理课程设计报告 学生成绩排序名次【精选文档】_第2页
第2页 / 共8页
微机原理课程设计报告 学生成绩排序名次【精选文档】_第3页
第3页 / 共8页
微机原理课程设计报告 学生成绩排序名次【精选文档】_第4页
第4页 / 共8页
微机原理课程设计报告 学生成绩排序名次【精选文档】_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《微机原理课程设计报告 学生成绩排序名次【精选文档】》由会员分享,可在线阅读,更多相关《微机原理课程设计报告 学生成绩排序名次【精选文档】(8页珍藏版)》请在金锄头文库上搜索。

1、微机原理课程设计报告 学生成绩排序名次【精选文档】课程设计微(WEI)机(JI)原(YUAN)理(LI)姓名: XX 班级: XXXXX 学号: XXXXXXXXXX 2011 年 7 月 8 日 目的: 结合微型计算机原理课程的学习,进一步巩固已学的知识,同时针对计算机原理知识的具体应用,学会对系统中DOS和BIOS的使用。学会使用屏幕编辑程序EDIT,弄懂汇编程序的上级过程以及如何运用DEBUG软件进行汇编程序的调试。内容与要求:1 字符串匹配设计为掌握提示信息的设置方法及读取键入信息的方法,编写程序实现两个字符串比较,如相同则显示“MATCH”,否则显示“NO MATCH”。2 从键盘输

2、入数据并显示的设计为掌握键盘接受数据的方法,并了解将键盘数据显示时必须转换为ASCII码的原理,编写程序,将键盘接受到的四位十六进制数据转换为等值的二进制数显示。3 响铃设计为掌握响铃的使用方法,编写程序,从键盘接受输入字符,如是数字N则响铃N此,如不是数字则不响。4 将键盘输入的小写字母转换成大写字母的设计为了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换,编写程序,接受键盘字符,并将其中的小写字母转变为大写字母,然后显示在屏幕上。5 学生成绩名次表设计为进一步熟悉排序方法,编写程序,将100以内的30个成绩存入首址为1000H的存储区中。1000H+i表示学号为i的学生成绩。

3、编写程序使得在2000H开始的区域排出名次表,2000H+i为学号i的学生的名次。 下面着重介绍程序5学生成绩名次表设计:流程图: 主程序流程图 SCAN子函数程序流程图程序代码及注释:CRLF MACRO ;宏定义,回车换行 MOV AH,02H MOV DL,0DH INT 21H MOV AH,02H MOV DL,0AH INT 21HENDMDATA SEGMENTSTUNUM EQU 30 ;学生数MESS1 DB Please input 30 score,0DH,0AH, ;提示信息ERROR DB Input error,try again,0DH,0AH,$ ;报错信息ME

4、SS2 DB The order is:,0DH,0AH,$EMARK DB ? ;报错标志 ORG 1000H ;存放成绩地址SCORE DB 30 DUP(?) ;成绩表 ORG 2000H ;存放名次地址SEQU DB 30 DUP(?) ;名次表DATA ENDSSTACK SEGMENTSTA DW 32 DUP(?)TOP DW ?STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACKSTART: MOV AX,DATA MOV DS,AX MOV ES,AX MOV SP,TOP MOV AH,09H ;显示提示

5、信息 MOV DX,OFFSET MESS1 INT 21H MOV SI,OFFSET SCORE ;成绩表首址 MOV CX,STUNUM MOV EMARK,0 ;报错标志清0 UUU: CALL GETNUM ;调用子函数读取成绩 CMP EMARK,01H ;判断是否出错 JE START ;出错则重新开始 MOV SI,DL ;没出错则存入成绩 INC SI ;指向下一个成绩单元地址 LOOP UUU ;判断30个成绩是否读取完 MOV CX,STUNUM MOV DI,OFFSET SEQU ;名次表首址VVV: CALL SCAN ;调用扫描子程序 MOV AL,STUNUM

6、;学生总数 SUB AL,CL ;计算名次 INC AL MOV BX,DX ;学号 PUSH AX ;将名次转换成压缩BCD码方便显示 PUSH BX PUSH CX XOR AH,AH MOV BH,0AH DIV BH MOV CL,4 SHL AL,CL ADD AL,AH MOV DH,AL POP CX POP BX POP AX MOV DI+BX,DH ;存入名次 LOOP VVV ;判断是否存完 MOV AH,09H ;显示名次提示信息 LEA DX,MESS2 INT 21H MOV CX,STUNUM MOV SI,OFFSET SEQU WWW: MOV AL,SI C

7、ALL DISPI ;调用子函数显示名次 PUSH DX PUSH AX MOV AH,02 ;显示空格 MOV DL,20H INT 21H POP AX POP DX INC SI ;指向名次表的下一个地址 LOOP WWW ;判断是否输出所有名次 MOV AH,4CH ;返回DOS INT 21H SCAN PROC NEAR ;扫面子函数,没调用一遍,找出成绩表;中最高成绩,记录其学号,并将此成绩;清0 PUSH CX MOV CX,STUNUM MOV AL,00H MOV BX,OFFSET SCORE MOV SI,BX CCC: CMP AL,SI JAE JJJ MOV AL

8、,SI MOV DX,SI SUB DX,BX JJJ: INC SI LOOP CCC ADD BX,DX MOV BYTE PTR BX,00H POP CX RETSCAN ENDPDISPI PROC NEAR ;显示子程序 PUSH CX MOV BL,AL ;显示高4位 MOV DL,BL MOV CL,04 ROL DL,CL AND DL,0FH CALL DISPL MOV DL,BL ;显示低4位 AND DL,0FH CALL DISPL POP CX RETDISPI ENDPDISPL PROC NEAR ;将名次转换成对应的ASCII码值并显示 ADD DL,30H MOV AH,02H INT 21H RET DISPL ENDP GETNUM PROC NEAR ;读取成绩子函数 PUSH CX XOR DX,DX ;清0,用于存放成绩GG

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

当前位置:首页 > 办公文档 > 工作计划

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