计算比赛成绩-汇编语言课程设计报告书

上传人:F****n 文档编号:100172918 上传时间:2019-09-22 格式:DOC 页数:12 大小:70KB
返回 下载 相关 举报
计算比赛成绩-汇编语言课程设计报告书_第1页
第1页 / 共12页
计算比赛成绩-汇编语言课程设计报告书_第2页
第2页 / 共12页
计算比赛成绩-汇编语言课程设计报告书_第3页
第3页 / 共12页
计算比赛成绩-汇编语言课程设计报告书_第4页
第4页 / 共12页
计算比赛成绩-汇编语言课程设计报告书_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《计算比赛成绩-汇编语言课程设计报告书》由会员分享,可在线阅读,更多相关《计算比赛成绩-汇编语言课程设计报告书(12页珍藏版)》请在金锄头文库上搜索。

1、一、设计内容与设计要求1设计内容:通过本周的课程设计,学生能够巩固所学的基础知识,并能够使学生更加熟练运用汇编程序设计语言来掌握综合汇编程序设计的方法和过程,以及为设计其它应用软件提供帮助,进而提高学生的软件设计能力。1、编制一计算比赛成绩的程序,要求完成以下功能: (1) 9名评委,每个评委给分范围为010(整数); (2) 9名评委给分中,去掉一个最高分和一个最低分,剩余7名评委的平均分即为参赛者的得分(精确到小数点二位); (3) 将得分在光标位置处显示出来。2、编制一程序,要求接收从键盘输入的一个班的学生成绩,并存放于30字的grade数组中,各数据的格式为:学号,成绩1,成绩2,成绩

2、5然后根据grade中的学生成绩,把学生名次填入rank数据组中,并显示出来,格式为:学号,名次3、利用INT 1CH(大约每秒中断18.2次)编写一个中断驻留程序,要求在屏幕的右上角显示计算机中当前系统时间,显示格式为时:分:秒:1/100秒4、输入一个菱形的两条对角线长,在屏幕上用*号画出一个彩色的菱形。5、设置图形方式并显示彩条,要求: 选择背景色为蓝色,调色板为0,然后每行显示一种颜色,每四行重复一次,一直到整个屏幕都显示出彩条2设计要求:掌握结构化程序设计的主体思想,以自顶向下逐步求精的方法编制程序解决一些实际的问题,为将来编写软件积累一些典型的案例处理经验。1. 设计正确,方案合理

3、。2. 界面友好,使用方便。3. 程序精炼,结构清晰。4. 设计报告5000字以上,含程序设计说明,用户使用说明,源程序清单及程序框图。5. 上机演示。6. 按学号顺序选课题号,并在规定的时间内独自完成相关课题的汇编源程序编写、调整和运行。源程序及编译生成各文件均保存在软盘中;7. 按本任务书的要求,按附录的要求编写课程设计报告(Word文档格式)。并用A4的复印纸打印并装订; 二、进度安排第 1 周: 星期1 星期2 星期3 星期4 附:课程设计报告装订顺序:封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。 正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四

4、号宋体;行距为22。正文的内容:一、课题的主要功能;二、课题的功能模块的划分(要求画出模块图);三、主要功能的实现(至少要有一个主要模块的流程图);四、程序调试;五、总结;六、附件(所有程序的原代码,要求对程序写出必要的注释)。正文总字数要求在5000字以上(不含程序原代码)。目录一、题目1二、程序总体设计方案、思路11.1.总体设计方案11.2.设计思路1三、程序设计框图2四、源程序清单3五、程序调试结果7六、设计总结7阳气决定着脏腑的工作能力,而脏腑的工作能力又决定着身体的健康状况和寿命,所以说,想要身体好一点,寿命长一点,就要学会保护好我们的阳气,增加阳气。健康人晒晒太阳,就能吸收到充足

5、的阳气了,但对于老年人和体质特别虚弱的人来说,恐怕吸收来的阳气也不够解燃眉之急的一、 题目编制一计算比赛成绩的程序,要求完成以下功能:(1) 9名评委,每个评委给分范围为010(整数);(2) 9名评委给分中,去掉一个最高分和一个最低分,剩余7名评委的平均分即为参赛者的得分(精确到小数点二位);(3) 将得分在光标位置处显示出来。二、 程序总体设计方案、思路1.1. 总体设计方案 通过读取依次从键盘输入的9个两位的十进制数得分,将得分保存在字符串中,然后用冒泡法将9个数的位置按大小重新排列并输出,再将中间的7个数累加起来除以7,即得到去掉最高分和最低分之后的平均分,最后设置光标位置到平均分处。

6、1.2. 设计思路通过记录键盘,将ASCII码转化为二进制数寸入长度为9的字符串中,此部分使用用循环结构。若输入的两位数的首位,即十位,非0或非1,则提示错误并要求重复输入,若输入的个位数非09中的数,则提示错误并要求重复输入。用冒泡法重排9个数,使得第1和第9个数分别为最大数和最小数,并在屏幕中依次显示出来。然后用循环语句求出9个数中中间的7个数的和,即总得分,若总得分为70分,则直接输出平均分:10.00分。若小于70分则将总得分除以7,得到的商作为平均分的个位数,输出一个小数点,将余数乘以10再除以7,如此循环3次,后两次不输出小数点,得到精确到小数点后两位的平均的分数,再将平均分输出。

7、最后改变光标位置为平均得分处。三、 程序设计框图开始输入9个分数按大小重排分数求中间7个数的和总分=70?YESNO平均分=10.00平均分=总分/7输出平均分改变光标位置结束四、 源程序清单DATA SEGMENTBUF DB 10 DUP(0)STRING1 DB Please enter the score NUMBER DB 31H,: ,$STRING2 DB 0AH,The ranged scores are:,$STRING3 DB After removing the highest and lowest score, the average score is: ,$ERROR

8、 DB ERROR,0AH,0DH,$DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX XOR SI,SI;SI置0 MOV CX,9;9个数INPUT: LEA DX,STRING1 MOV AH,9 INT 21H MOV AH,1 INT 21H;输入得分的十位到AL CMP AL,0 JB ER ;AL1则跳到ER SUB AL,30H MOV DL,10 MUL DL;十位乘以10 MOV DX,AX;DX存十位数 MOV AH,1 INT 21H;输入得分的个位到AL CMP AL,0

9、JB ER ;AL10则跳到ER SUB AL,30H ADD AL,DL;个位十位相加到AL MOV BUFSI,AL INC SI INC NUMBER MOV DL,0AH;换行 MOV AH,2 INT 21H MOV DL,0DH;回车 INT 21H LOOP INPUT;循环输入9次 JMP RANGE_0;转入排序ER:;输入错误后返回重新输入LEA DX,ERROR MOV AH,9 INT 21H JMP INPUTRANGE_0: MOV BX,1 MOV CX,9 XOR DI,DIRANGE: MOV AL,BUFDI CMP AL,BUFDI+1 JAE NEXT_

10、1 XCHG BUFDI+1,AL MOV BUFDI,AL MOV BX,0NEXT_1: INC DI LOOP RANGE CMP BX,0 JE RANGE_0;冒泡法排列得分 LEA DX,STRING2 MOV AH,9 INT 21H MOV CX,9 XOR SI,SI;SI清零 MOV AH,2RANGE_OUTPUT:; 输出排序后的得分 MOV DL,BUFSI ADD DL,30H CMP DL,39H;判断是否是10分 JA TENS_1 JBE TENS_0TENS_1: ;十位数为1,则输出10MOV BX,1MOV DL,1INT 21HMOV DL,0INT

11、21H INC SI MOV DL, INT 21H JMP NEXT_2TENS_0:;十位数为0,则按原得分输出 INT 21H INC SI MOV DL, INT 21HNEXT_2: LOOP RANGE_OUTPUT MOV AH,2 MOV DL,0AH;换行 INT 21H MOV DL,0AH;换行 INT 21H MOV DL,0DH;回车 INT 21H LEA DX,STRING3MOV AH,9H INT 21H MOV CX,7;累加中间7个数字 XOR AX,AX DEC SISUM:;求7个分数的和DEC SI ADD AL,BUFSI LOOP SUMCMP AL,46HJAE FULL_MARKJMP N_FULL_MARKFULL_MARK:;满分时MOV AH,2HMOV DL,1INT 21HMOV DL,0INT 21HMOV DL,.INT 21HMOV DL,0INT 21HMOV DL,0INT 21HJMP ENDINGN_FULL_MARK:;非满分时MOV CX,2MOV BH,1;小数点只出现1次DIVISION: MOV BL,7

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

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