【计算机类职业资格】全国计算机等级考试三级PC技术机试真题2010年9月及答案解析.doc

上传人:刘芸 文档编号:1329460 上传时间:2019-10-17 格式:DOC 页数:5 大小:30.50KB
下载 相关 举报
【计算机类职业资格】全国计算机等级考试三级PC技术机试真题2010年9月及答案解析.doc_第1页
第1页 / 共5页
【计算机类职业资格】全国计算机等级考试三级PC技术机试真题2010年9月及答案解析.doc_第2页
第2页 / 共5页
【计算机类职业资格】全国计算机等级考试三级PC技术机试真题2010年9月及答案解析.doc_第3页
第3页 / 共5页
【计算机类职业资格】全国计算机等级考试三级PC技术机试真题2010年9月及答案解析.doc_第4页
第4页 / 共5页
【计算机类职业资格】全国计算机等级考试三级PC技术机试真题2010年9月及答案解析.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、全国计算机等级考试三级 PC 技术机试真题 2010 年 9 月及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请编制程序 ex11.ASM,其功能是:统计 20 个学生成绩中得分在 90100、8089、7079、6069 和低于 60 分的人数,并计算 20 个学生的平均成绩(取整数),结果依次存放在指定的区域内。例如:内存中有 5 个分数:50H,40H,5EH,64H,48H结果为:02H,01H,01H,01H,00H,52H(平均成绩)部分程序已给出,其中原始数据由过程 LOAD 从文件 INPUT1.DAT 中读入 SOURC

2、E 开始的内存单元中,运算的结果要求从 RESULT 开始存放,由过程 SAVE 保存到文件 OUTPUT1.DAT 中。补充 BEGIN 和 END 之间已给出的源程序使其完整(空白已用横线标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦可),或删除 BEGIN 和 END 之间原有的代码并自行编程来完成要求的功能。对程序进行汇编,并与 IO.OBJ 链接产生执行文件,最终运行程序产生结果。调试中发现整个程序中存在错误之处,请加以修改。试题程序 EXTRN LOAD:FAR,SAVE:FARN EQU 20L EQU 5DATA SEGMENTSOURCE DB N DUP(?)R

3、ESULT DB N+IDUP(0)NAME0 DB INPUT1.DAT,0NAME1 DB OUTPUT1.DAT,0DATA ENDSSSEG SEGMENT STACKDB 256DLIP(?)SSEG ENDSCSEG SEGMENTASSUME CS:CSEG,SS:SSEG,DS:DATASTART PROC FARPUSH DSXOR AX,AXPUSH AXNOV AX,DATAMOV DS,AXLEA DX,SOURCE ;数据区起始地址LEA SI,NAME0 ;原始数据文件名MOV CX,N ;字节数CALL LOAD ;从INPUT1.DAT中读取数据; * BEGI

4、N *LEA SI,SOURCELEA DI,RESULTXOR BX,BX(1) MOV CX,NGOON:LODSB(2) ADD BX,AX(3) JAE A1CMP AL,80JAE A2CMP AL,70JAE A3CMP AL,60JAE A4INC (4) (5) A4: INC BYTE PTRDI+3JMP NEXTA3: INC BYTE PTRDI+2JMP NEXTA2: INC BYTE PTRDI+1JMP NEXTA1: INC BYTE PTRDINEXT:LOOP GOONMOV AX, (6) MOV DL, (7) DIV DLMOV DI+5,AL; *

5、 END *LEA DX,RESULT ;结果数据区首址LEA SI,NAME1 ;结果文件名MOV CX,L+1 ;结果字节数CALL SAVE ;保存结果到文件RETSTART ENDPCODE ENDSEND START(分数:100.00)_全国计算机等级考试三级 PC 技术机试真题 2010 年 9 月答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请编制程序 ex11.ASM,其功能是:统计 20 个学生成绩中得分在 90100、8089、7079、6069 和低于 60 分的人数,并计算 20 个学生的平均成绩(取整数),结果依

6、次存放在指定的区域内。例如:内存中有 5 个分数:50H,40H,5EH,64H,48H结果为:02H,01H,01H,01H,00H,52H(平均成绩)部分程序已给出,其中原始数据由过程 LOAD 从文件 INPUT1.DAT 中读入 SOURCE 开始的内存单元中,运算的结果要求从 RESULT 开始存放,由过程 SAVE 保存到文件 OUTPUT1.DAT 中。补充 BEGIN 和 END 之间已给出的源程序使其完整(空白已用横线标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦可),或删除 BEGIN 和 END 之间原有的代码并自行编程来完成要求的功能。对程序进行汇编,并与

7、IO.OBJ 链接产生执行文件,最终运行程序产生结果。调试中发现整个程序中存在错误之处,请加以修改。试题程序 EXTRN LOAD:FAR,SAVE:FARN EQU 20L EQU 5DATA SEGMENTSOURCE DB N DUP(?)RESULT DB N+IDUP(0)NAME0 DB INPUT1.DAT,0NAME1 DB OUTPUT1.DAT,0DATA ENDSSSEG SEGMENT STACKDB 256DLIP(?)SSEG ENDSCSEG SEGMENTASSUME CS:CSEG,SS:SSEG,DS:DATASTART PROC FARPUSH DSXOR

8、 AX,AXPUSH AXNOV AX,DATAMOV DS,AXLEA DX,SOURCE ;数据区起始地址LEA SI,NAME0 ;原始数据文件名MOV CX,N ;字节数CALL LOAD ;从INPUT1.DAT中读取数据; * BEGIN *LEA SI,SOURCELEA DI,RESULTXOR BX,BX(1) MOV CX,NGOON:LODSB(2) ADD BX,AX(3) JAE A1CMP AL,80JAE A2CMP AL,70JAE A3CMP AL,60JAE A4INC (4) (5) A4: INC BYTE PTRDI+3JMP NEXTA3: INC

9、BYTE PTRDI+2JMP NEXTA2: INC BYTE PTRDI+1JMP NEXTA1: INC BYTE PTRDINEXT:LOOP GOONMOV AX, (6) MOV DL, (7) DIV DLMOV DI+5,AL; * END *LEA DX,RESULT ;结果数据区首址LEA SI,NAME1 ;结果文件名MOV CX,L+1 ;结果字节数CALL SAVE ;保存结果到文件RETSTART ENDPCODE ENDSEND START(分数:100.00)_正确答案:(;* BEGIN *LEA SI,SOURCELEA DI,RESULTXOR BX,BX

10、CLDMOV CX,NGOON: LODSBMOV AH,0ADD BX,AXCMP AL,90JAE A1CMP AL,80JAE A2CMP AL,70JAE A3CMP AL,60JAE A4INC BYTE PTRDI+4JMP NEXTA4: INC BYTE PTRDI+3JMP NEXTA3: INC BYTE PTRDI+2JMP NEXTA2: INC BYTE PTRDI+1JMP NEXTA1: INC BYTE PTRDINEXT: LOOP GOONMOV AM,BXMOV DL,NDIV DLMOV DI+5,AL; *END*)解析:解析 本题主要考查成绩的分类统计问题。考生需要注意统计 20 个学生成绩中得分在90100、8089、7079、6069 和低于 60 分的人数,并计算 20 个学生的平均成绩(取整数),结果依次存放在指定的区域内。本题难点在于具体如何将各个分数段中的数据进行统计,程序中 GOON 完成的是按题目的要求求出各段的数据。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1