计算比赛成绩
更新时间:2024-07-06 19:58:01 阅读量: 综合文库 文档下载
一、设计内容与设计要求
1.课程设计目的:
《汇编语言程序设计》是计算机专业的重要的专业基础课,通过本课程设计使学生进一步巩固课堂所学,全面熟悉、掌握8088宏汇编语言程序设计的基本方法和技巧,进一步提高编写程序、阅读分析程序及上机操作、调试程序的能力。 2.课题题目
1)测量任意程序的运行时间
2)读入一个文本文件并以DEBUG中的D命令格式显示。 3)文件加密程序 4)编写一个时钟程序 5)画网格线 6)画脉冲波图形 7)用“*”画菱形框 8)计算比赛成绩 3.设计要求:
掌握结构化程序设计的主体思想,以自顶向下逐步求精的方法编制程序解决一些实际的问题,为将来编写软件积累一些典型的案例处理经验。
1. 设计正确,方案合理。 2. 界面友好,使用方便。 3. 程序精炼,结构清晰。
4. 设计报告5000字以上,含程序设计说明,用户使用说明,源程序清单及程序框图。
5. 上机演示。
6. 按学号顺序选课题号,并在规定的时间内独自完成相关课题的汇编源程序编写、调整和运行。源程序及编译生成各文件均保存在软盘中;
7. 按本任务书的要求,按附录的要求编写《课程设计报告》(Word文档格式)。并用A4的复印纸打印并装订;
二、进度安排
第 1 周:
星期1 星期2 星期3
星期4
附:
课程设计报告装订顺序:封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。 正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22。
正文的内容:一、课题的主要功能;二、课题的功能模块的划分(要求画出模块图);三、主要功能的实现(至少要有一个主要模块的流程图);四、程序调试;五、总结;六、附件(所有程序的原代码,要求对程序写出必要的注释)。 正文总字数要求在5000字以上(不含程序原代码)。
目录
一、 二、 1.1.
题目 .......................................................................................................................................... 4 程序总体设计方案、思路 ...................................................................................................... 4 总体设计方案 .......................................................................................................................... 4
1.2. 三、 四、 五、 六、
设计思路 .................................................................................................................................. 4 程序设计框图 .......................................................................................................................... 5 源程序清单 .............................................................................................................................. 6 程序调试结果 ........................................................................................................................ 14 设计总结 ................................................................................................................................ 14
一、 题目
编制一计算比赛成绩的程序,要求完成以下功能: (1) 9名评委,每个评委给分范围为0~10(整数);
(2) 9名评委给分中,去掉一个最高分和一个最低分,剩余7名评委的平均分即为参赛者的得分(精确到小数点二位);
(3) 将得分在光标位置处显示出来。
二、 程序总体设计方案、思路
1.1. 总体设计方案
通过读取依次从键盘输入的9个两位的十进制数得分,将得分保存在字符串
中,然后用冒泡法将9个数的位置按大小重新排列并输出,再将中间的7个数累加起来除以7,即得到去掉最高分和最低分之后的平均分,最后设置光标位置到平均分处。
1.2. 设计思路
通过记录键盘,将ASCII码转化为二进制数寸入长度为9的字符串中,此部分使用用循环结构。若输入的两位数的首位,即十位,非0或非1,则提示错误并要求重复输入,若输入的个位数非0~9中的数,则提示错误并要求重复输入。
用冒泡法重排9个数,使得第1和第9个数分别为最大数和最小数,并在屏幕中依次显示出来。然后用循环语句求出9个数中中间的7个数的和,即总得分,若总得分为70分,则直接输出平均分:10.00分。若小于70分则将总得分除以7,得到的商作为平均分的个位数,输出一个小数点,将余数乘以10再除以7,如此循环3次,后两次不输出小数点,得到精确到小数点后两位的平均的分数,再将平均分输出。最后改变光标位置为平均得分处。
三、 程序设计框图
开始 输入9个分数 按大小重排分数 求中间7个数的和 总分>=70? YES NO 平均分=总分/7 平均分=10.00 输出平均分 改变光标位置 结束
四、 源程序清单
DATA SEGMENT BUF 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 DB 'ERROR',0AH,0DH,'$' DATA ENDS CODE SEGMENT
ASSUME CS:CODE,DS:DATA START: 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 ;AL<0小于则跳到ER CMP AL,'1'
JA ER ;AL>1则跳到ER SUB AL,30H MOV DL,10
MUL DL;十位乘以10 MOV DX,AX;DX存十位数 MOV AH,1
INT 21H;输入得分的个位到AL CMP AL,'0'
JB ER ;AL<0小于则跳到ER CMP AL,'9'
JA ER ;AL>10则跳到ER SUB AL,30H
ADD AL,DL;个位十位相加到AL MOV BUF[SI],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 INPUT RANGE_0: MOV BX,1 MOV CX,9 XOR DI,DI RANGE: MOV AL,BUF[DI] CMP AL,BUF[DI+1] JAE NEXT_1 XCHG BUF[DI+1],AL MOV BUF[DI],AL MOV BX,0
NEXT_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,2 RANGE_OUTPUT:
; 输出排序后的得分 MOV DL,BUF[SI] ADD DL,30H
CMP DL,39H;判断是否是10分 JA TENS_1 JBE TENS_0 TENS_1:
;十位数为1,则输出'10'
MOV BX,1 MOV DL,'1'
INT 21H MOV DL,'0' INT 21H
INC SI MOV DL,',' INT 21H JMP NEXT_2 TENS_0:
;十位数为0,则按原得分输出 INT 21H INC SI MOV DL,',' INT 21H NEXT_2:
LOOP RANGE_OUTPUT MOV AH,2 MOV DL,0AH;换行 INT 21H
MOV DL,0AH;换行 INT 21H
MOV DL,0DH;回车 INT 21H
LEA DX,STRING3
MOV AH,9H
INT 21H
MOV CX,7;累加中间7个数字 XOR AX,AX DEC SI SUM:
;求7个分数的和
DEC SI
ADD AL,BUF[SI] LOOP SUM
CMP AL,46H JAE FULL_MARK JMP N_FULL_MARK
FULL_MARK: ;满分时
MOV AH,2H MOV DL,'1' INT 21H MOV DL,'0' INT 21H MOV DL,'.'
INT 21H MOV DL,'0' INT 21H MOV DL,'0' INT 21H JMP ENDING
N_FULL_MARK: ;非满分时
MOV CX,2
MOV BH,1;小数点只出现1次
DIVISION:
MOV BL,7 DIV BL;除以7 PUSH AX ADD AL,30H MOV DL,AL MOV AH,2 INT 21H CMP BH,0 JE DOT MOV DL,'.' MOV BX,0
DOT: INT 21H POP AX
MOV AL,AH;余数存入AL MOV DL,10
MUL DL;余数乘以10,结果存入AX
LOOP DIVISION
ENDING:
MOV AH,02 MOV BH,0 MOV DX,0C46H INT 10H;设置光标位置 MOV AH,1 INT 21H
CODE ENDS END START
五、 程序调试结果
六、 设计总结
通过课程几天的课程设计,学到了诸多上课学不到的知识,特别是体会到了汇编语言与高级程序语言编程的不同,起初非常不适宜汇编语言的编程,高级程序语言中的基本功能,入多重循环和套嵌,在汇编语言看来缺是相当复杂的,还有数字的输入和输出都要经过ASCII码与二进制的转换,数据的定义少得可怜,这些特性都让起初的我感到寸步难行。但是进过进一步的上机操作和学习,汇编语言开始变得明朗起来。
此次程序设计虽然收获不小,也留有许多遗憾,如程序没有能够对输入得分大于10分的错误操作做出提示,结果的平均分的百分位在某些时候存在误差,有可能是因为程序中数据是以字节形式存储的,字符长度太短导致误差,也有可能是因为求小数的方法导致的。
总的来说这次课程设计虽然遇到了一些比较麻烦的问题,但还算比较顺利,经过一些讨论和修改,一个完整并且能达到要求的程序总算是写好了,过程虽然有点坎坷,可是收获也颇丰,通过这次课设让我对课本基础知识有了一个系统的掌握,而且对课题设计的思路也有了比较清晰的认识,让我对汇编的了解更加深刻。
计算机科学与技术系课程设计评分表
课程名称: 项 目 评 价 设计方案的合理性与创造性 设计与调试结果 设计说明书的质量 答辩陈述与回答问题情况 课程设计周表现情况 综合成绩
教师签名: 日 期:
(注:1.此页附在课程设计报告之后;2.综合成绩按优、良、中、及格和不及格五级评定。)
正在阅读:
计算比赛成绩07-06
第八章桥梁美学 - 图文03-19
苏州市崇道小学校解读03-10
2015年教师考试题库10-26
十八大资料 - 图文03-15
诚信校园行作文06-23
穷人的F-16:歼-7PG在巴军眼中地位不次于F-1606-16
高校国际贸易原理课双语教学模式探讨03-13
解放战争时期围场县土匪问题初探10-02
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 比赛成绩
- 计算
- 11年下家长学校学员培训讲座
- 在年终村干部交流会上的讲话
- dns的优化
- 量子检测
- 评论投稿邮箱
- GSM 无线接口理论
- 电大 社区护理学(本科)形成性考核册答案
- 2018年201X-201X学年第一学期化学备课组工作计划-实用word文档(
- 唐诗宋词人文解读 笔记 - 图文
- 2016年食品酶发展现状及市场前景分析
- 《北冥有鱼》知识点复习及阅读练习
- 监测监控工操作规程1
- 2014年412联考江西公务员考试行测真题及答案解析 - 图文
- 三年级下册科学各单元知识点
- 中考语文满分作文的三大技巧及例文选摘
- 江苏省小微型危险化学品企业安全标准化评审标准(试行) - 图文
- 浅谈基层人民调解组织的建设
- 谈信息技术环境下学生学习方式的转变
- 输灰双套管安装说明
- 2017年崇明区初三英语二模试卷及答案