【计算机类职业资格】三级PC技术机试-222及答案解析.doc

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

1、三级 PC技术机试-222 及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请编制程序 PROG1.ASM,其功能是:统计 30个学生成绩中得分在 10090、8980、 7970、6960区间以及低于 60分的人数,并计算 30个学生的平均成绩(取整数),结果依次存入指定的内存区域。例如:内存中有 10个分数; 5EH,50H,64H,52H,55H,48H,3AH,4AH,40H,42H结果为:02H,03H,02H,02H,01H,4DH(平均成绩)部分程序已给出,其中原始数据由过程 LOAD从文件 INPUT1.DAT中读入 SOU

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

3、ENTSOURCE DB N DUP(?)RESULT DB N+1 DUP(0)NAME0 DB INPUT1. DAT,0NAME1 DB OUTPUT1.DAT,0DSEG ENDSSSEG SEGMENT STACKDB 256 DUP(?)SSEG ENDSCSEG SEGMENTASSUME CS: CSEG, SS: SSEG, DS: DSEGSTART PROC FARPUSH DSXOR AX, AXPUSH AXMOV AX, DSEGMOV DS, AXLEA DX, SOURCELEA SI, NAME0MOV CX, NCALL LOAD; * BEGIN *LEA

4、 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 PTR DI+3JMP NEXTA3: INC BYTE PTR DI+2JMP NEXTA2: INC BYTE PTR DI+1JMP NEXTA1: INC BYTE PTR DINEXT: LOOP GOONMOV AX, (6) MOV DL, (7) DIV DLMOV DI+5, AL;

5、* END *LEA DX, RESULTLEA SI, NAME1MOV CX, L+1CALL SAVERETSTART ENDPCSEG ENDSEND START(分数:100.00)_三级 PC技术机试-222 答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请编制程序 PROG1.ASM,其功能是:统计 30个学生成绩中得分在 10090、8980、 7970、6960区间以及低于 60分的人数,并计算 30个学生的平均成绩(取整数),结果依次存入指定的内存区域。例如:内存中有 10个分数; 5EH,50H,64H,52H,55H

6、,48H,3AH,4AH,40H,42H结果为:02H,03H,02H,02H,01H,4DH(平均成绩)部分程序已给出,其中原始数据由过程 LOAD从文件 INPUT1.DAT中读入 SOURCE开始的内存单元中。运算结果要求从 RESULT开始存放,由过程 SAVE保存到文件 OUTPUT1.DAT中。填空 BEGIN和 END之间已给出的源程序使其完整(空白已用横线标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦可),或删除 BEGIN和 END之间原有的代码并自行编程来完成要求的功能。对程序必须进行汇编,并与 IO.OBJ链接产生 PROG1.EXE执行文件,最终运行程序产生

7、结果(无结果或结果不正确者均不得分)。调试中若发现整个程序中存在错误之处,请加以修改。试题程序:EXTRN LOAD:FAR, SAVE:FARN EQU 30L EQU 5DSEG SEGMENTSOURCE DB N DUP(?)RESULT DB N+1 DUP(0)NAME0 DB INPUT1. DAT,0NAME1 DB OUTPUT1.DAT,0DSEG ENDSSSEG SEGMENT STACKDB 256 DUP(?)SSEG ENDSCSEG SEGMENTASSUME CS: CSEG, SS: SSEG, DS: DSEGSTART PROC FARPUSH DSXO

8、R AX, AXPUSH AXMOV AX, DSEGMOV DS, AXLEA DX, SOURCELEA SI, NAME0MOV CX, NCALL LOAD; * 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 PTR DI+3JMP NEXTA3: INC BYTE PTR DI+2JMP NEXTA2: INC BYT

9、E PTR DI+1JMP NEXTA1: INC BYTE PTR DINEXT: LOOP GOONMOV AX, (6) MOV DL, (7) DIV DLMOV DI+5, AL; * END *LEA DX, RESULTLEA SI, NAME1MOV CX, L+1CALL SAVERETSTART ENDPCSEG ENDSEND START(分数:100.00)_正确答案:(1) XOR AX, AX (2) CBW (3) CMPAL, 90 (4)BYTE PTR DI+4(5) JMP NEXT (6) BX (7) N)解析:解析 首先将 AX和 BX都置零,对操作数进行扩展,从高于 90分的开始统计,一直到低于 60分为止。对于不同的分数段分别增加相应的计数器,最后计算所有学生的平均成绩。

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

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

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