查看全部128种考试
计算机等级考试
 考试动态  报考指南  考试大纲  历年真题  模拟试题  复习资料  心得技巧 等考论坛
 二级 | VB  VF  C  C++  JAVA  ACCESS 三级 | 网络  数据库  信息管理  PC技术 四级 | 一级
1
2
3
4
5
6
7
8
9
10
ak48  
【字体: 全国等级考试三级PC技术上机编程题10道
全国等级考试三级PC技术上机编程题10道
djks.exam8.com 来源:考试吧Exam8.com) 更新:2005-3-30 12:42:00 计算机等级考试 考试论坛


第七套

===============================================================================
试题说明 :
===============================================================================

 请编制程序PROG1.ASM, 其功能是: 内存中连续存放着10个二
进制字节,每个二进制字节的序号依次定义为0,1,…9。统计每个
字节中1的个数N(0), N(1),…, N(9)(均用一个字节表示),然后按序将
N(0)至N(9)存入内存中,最后再用一个字节表示这10个字节中为1的位
的总数n(n= N(0)+ N(1)+…+ N(9))。
 例如:
 内存中有 00H,01H,03H,…
 结果为 00H,01H,02H,…,最后为n
 部分程序已给出,其中原始数据由过程LOAD从文件INPUT1.DAT
中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,
由过程SAVE保存到文件OUTPUT1.DAT中。
 填空BEGIN和END之间已给出的源程序使其完整 (空白已用横线
标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦
可), 或删除BEGIN和END之间原有的代码并自行编程来完成要求的
功能。
 对程序必须进行汇编, 并与IO.OBJ链接产生PROG1.EXE执行文
件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调
试中若发现整个程序中存在错误之处,请加以修改。

===============================================================================
程序 :
===============================================================================

 EXTRN LOAD:FAR,SAVE:FAR
N EQU 10
STAC SEGMENT STACK
 DB 128 DUP (?)
STAC ENDS
DATA SEGMENT
SOURCE DB N DUP(?)
RESULT DB N+1 DUP(0)
NAME0 DB 'INPUT1.DAT',0
NAME1 DB 'OUTPUT1.DAT',0
DATA ENDS
CODE SEGMENT
 ASSUME CS:CODE, DS:DATA, SS:STAC
START PROC FAR
 PUSH DS
 XOR AX,AX
 PUSH AX
 MOV AX,DATA
 MOV DS,AX
 LEA DX,SOURCE ; 数据区起始地址
 LEA SI,NAME0 ; 原始数据文件名
 MOV CX,N ; 字节数
 CALL LOAD ; 从 'INPUT1.DAT'中读取数据
; **** BEGIN ****
 MOV CL,N
 MOV DI,OFFSET RESULT
 MOV BX,0
 MOV DH,0
PRO: MOV DL,0
 MOV AL,SOURCE[BX]
 MOV CH,__
COUNT: __________________
 JNC ____
 INC DL
JUMP: DEC CH
 ___ COUNT
 MOV [DI],__
 ADD DH,DL
 INC DI
 INC BX
 DEC CL
 JNZ PRO
 MOV _________
; **** END ****
 LEA DX,RESULT ; 结果数据区首址
 LEA SI,NAME1 ; 结果文件名
 MOV CX,N+1 ; 结果字节数
 CALL SAVE ; 保存结果到文件
 RET
START ENDP
CODE ENDS
END START

===============================================================================
所需数据 :
===============================================================================

@2 input1.dat 001
00 01 03 07 0F A7 F5 F7 FF A5
#E
@3 $output1.hex 001
FFFEFDFCFBFAF9F8F7FBD750
#E

第八套

===============================================================================
试题说明 :
===============================================================================

 请编制程序PROG1.ASM, 其功能是: 内存中连续存放着10个用
ASCII码表示的十进制个位数,将它们转换成相应的二进制字节N(0),
N(1), …, N(9),然后按序将N(0)至N(9)存入内存中,最后存放它们的和n
(n= N(0)+ N(1)+…+ N(9))。n用压缩型(组合型)BCD码表示。
例如:
 内存中有 30H('0'),39H('9'),31H('1'), …
 结果为 00H,09H,01H,…,(后跟n)
 部分程序已给出,其中原始数据由过程LOAD从文件INPUT1.DAT
中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,
由过程SAVE保存到文件OUTPUT1.DAT中。
 填空BEGIN和END之间已给出的源程序使其完整 (空白已用横线
标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦
可), 或删除BEGIN和END之间原有的代码并自行编程来完成要求的
功能。
 对程序必须进行汇编, 并与IO.OBJ链接产生PROG1.EXE执行文
件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调
试中若发现整个程序中存在错误之处,请加以修改。

===============================================================================
程序 :
===============================================================================

 EXTRN LOAD:FAR,SAVE:FAR
N EQU 10
STAC SEGMENT STACK
 DB 128 DUP (?)
STAC ENDS
DATA SEGMENT
SOURCE DB N DUP(?)
RESULT DB N+1 DUP(0)
NAME0 DB 'INPUT1.DAT',0
NAME1 DB 'OUTPUT1.DAT',0
DATA ENDS
CODE SEGMENT
 ASSUME CS:CODE, DS:DATA, SS:STAC
START PROC FAR
 PUSH DS
 XOR AX,AX
 PUSH AX
 MOV AX,DATA
 MOV DS,AX
 LEA DX,SOURCE ; 数据区起始地址
 LEA SI,NAME0 ; 原始数据文件名
 MOV CX,N ; 字节数
 CALL LOAD ; 从 'INPUT1.DAT'中读取数据
; **** BEGIN ****
 MOV DI,OFFSET RESULT
 MOV BX,0
 MOV CX,N
 MOV DL,__
PRO: MOV AL,SOURCE[BX]
 ___ AL,30H
 MOV [DI],AL
 _____________________
 ADD AL,DL
 ____
 MOV DL,AL
 INC BX
 __________________
 JNZ PRO
 _________________
; **** END ****
 LEA DX,RESULT ; 结果数据区首址
 LEA SI,NAME1 ; 结果文件名
 MOV CX,N+1 ; 结果字数
 CALL SAVE ; 保存结果到文件
 RET
START ENDP
CODE ENDS
END START

===============================================================================
所需数据 :
===============================================================================

@2 input1.dat 001
30 39 31 38 32 37 33 36 34 35
#E
@3 $output1.hex 001
FFF6FEF7FDF8FCF9FBFABA72
#E


上一页  [1] [2] [3] [4] [5] 下一页

转帖于:计算机等级考试_考试吧
文章搜索  
看了本文的网友还看了:
计算机等级考试权威辅导教材: 订书电话:010-62168566  更多>>>
网友评论
昵 称: *  评 分: 1分 2分 3分 4分 5分
标题:   匿名发表    (共有条评论)查看全部评论>>
版权声明 -------------------------------------------------------------------------------------
  如果计算机等级考试网所转载内容不慎侵犯了您的权益,请与我们联系,我们将会及时处理。如转载本计算机等级考试网内容,请注明出处。
关于本站  网站声明  广告服务  联系方式  付款方式  站内导航  客服中心  友情链接  考试论坛  网站地图
Copyright © 2004-2008 考试吧计算机等级考试网 All Rights Reserved    
中国科学院研究生院权威支持(北京) 电 话:010-62168566 传 真:010-62192699
百度大联盟黄金认证  十佳网络教育机构  经营许可证号:京ICP060677