ImageVerifierCode 换一换
格式:DOC , 页数:5 ,大小:30.50KB ,
资源ID:1320160      下载积分:5000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-1320160.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(【计算机类职业资格】三级PC技术机试-174及答案解析.doc)为本站会员(registerpick115)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

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

1、三级 PC 技术机试-174 及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请编制程序 ex4.ASM,其功能是:内存中连续存放着两个有符号字节数序列 Ak和 Bk(k=0,9),求序列 Ck,C k=Ak+Bk(Ck以有符号的形式按 C0,C 9的顺序连续存放)。例如:序列 Ak:80H,31H,61H,7FH,;序列 Bk:80H,01H,F1H,7FH,。结果 Ck为:FF00H,0032H,0052H,00FEH,。部分程序已经给出,其中原始数据由过程 LOAD 从文件 INPUT1.DAT 中读入 SOURCE 开始的内存单元中

2、,运算结果要求从 RESULT 开始存放,由过程 SAVE 保存到文件 OUTPUT1.DAT 中。填空 BEGIN 和 END 之间已给出的源程序使其完整,空白处已用横线标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦可,或删去 BEGIN 和 END 之间原有的代码并自行编程来完成所要求的功能。对程序必须进行汇编,并与 IO.OBJ 连接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序存在错误之处,请加以修改。试题程序 EXTRN LOAD:FAR,SAVE:FARN EQU 10 ;每个序列的长度STAC SEGMENT STACKDB 128DUP(?)STAC E

3、NDSDATA SEGMENTSOURCE DB N*2 DUP(?) ;顺序存放 A0,A9;B0,B9RESULT DW NDUP(0) ;顺序存放 C0,C9NAME0 DB INPUT1.DAT,0NAME1 DB OUTPUT1.DAT,0DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACSTART PROC EARPUSH DSXORAX,AXPUSH AXMOV AX,DATAMOV DS,AXLEA DX,SOURCE ;数据区起始地址LEA SI,NAME0 ;原始数据文件名MOV CX,N*2 ;字节数CALL LOAD

4、;从INPUT1.DAT中读取数据;*BEGIN*MOV DI,OFFSET RESULTMOV BX,0MOV CX,NPRO: MOV AH,0MOV AL, _MOV DL,AL_ AL,SOURCEBXJNO STAYJUMP1: MOV AH,00ADD DL,0JNS JUMPMOV AH, _JMP _STAY: _JUMP: MOV DI,AXADDDI,2INC BXDEC CXJNZ PRO;*END*LEA DX,RESULT ;结果数据区首址LEA SI,NAME1 ;结果文件名MOV CX,N*2 ;结果字节数CALL SAVE ;保存结果到文件RETSTART EN

5、DPCODE ENDSEND START(分数:100.00)_三级 PC 技术机试-174 答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请编制程序 ex4.ASM,其功能是:内存中连续存放着两个有符号字节数序列 Ak和 Bk(k=0,9),求序列 Ck,C k=Ak+Bk(Ck以有符号的形式按 C0,C 9的顺序连续存放)。例如:序列 Ak:80H,31H,61H,7FH,;序列 Bk:80H,01H,F1H,7FH,。结果 Ck为:FF00H,0032H,0052H,00FEH,。部分程序已经给出,其中原始数据由过程 LOAD 从文件

6、 INPUT1.DAT 中读入 SOURCE 开始的内存单元中,运算结果要求从 RESULT 开始存放,由过程 SAVE 保存到文件 OUTPUT1.DAT 中。填空 BEGIN 和 END 之间已给出的源程序使其完整,空白处已用横线标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦可,或删去 BEGIN 和 END 之间原有的代码并自行编程来完成所要求的功能。对程序必须进行汇编,并与 IO.OBJ 连接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序存在错误之处,请加以修改。试题程序 EXTRN LOAD:FAR,SAVE:FARN EQU 10 ;每个序列的长度STAC

7、SEGMENT STACKDB 128DUP(?)STAC ENDSDATA SEGMENTSOURCE DB N*2 DUP(?) ;顺序存放 A0,A9;B0,B9RESULT DW NDUP(0) ;顺序存放 C0,C9NAME0 DB INPUT1.DAT,0NAME1 DB OUTPUT1.DAT,0DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACSTART PROC EARPUSH DSXORAX,AXPUSH AXMOV AX,DATAMOV DS,AXLEA DX,SOURCE ;数据区起始地址LEA SI,NAME0 ;原

8、始数据文件名MOV CX,N*2 ;字节数CALL LOAD ;从INPUT1.DAT中读取数据;*BEGIN*MOV DI,OFFSET RESULTMOV BX,0MOV CX,NPRO: MOV AH,0MOV AL, _MOV DL,AL_ AL,SOURCEBXJNO STAYJUMP1: MOV AH,00ADD DL,0JNS JUMPMOV AH, _JMP _STAY: _JUMP: MOV DI,AXADDDI,2INC BXDEC CXJNZ PRO;*END*LEA DX,RESULT ;结果数据区首址LEA SI,NAME1 ;结果文件名MOV CX,N*2 ;结果字

9、节数CALL SAVE ;保存结果到文件RETSTART ENDPCODE ENDSEND START(分数:100.00)_正确答案:(;*BEGIN*MOV DI,OFFSET RESULT ;结果从 RESULT 开始存放MOV BX,0MOV CX,N ;设定循环次数PRO: MOV AH,0MOV AL, SOURCEBX+N ;序列 Bk中的一个字节MOV DL,AL ;暂存 BkADD AL,SOURCE BX ;C k=Bk+AkJNO STAY ;无溢出转 STAYJUMP1: MOV AH,00 ;有溢出ADD DL,0 ;用来判断 Bk的符号JNS JUMP ;B k是正

10、数(为一个正数加上一个正数,结果为负数的溢出情况)JUMP(AH 已为 00H)MOV AH,0FFH ;B k是负数(为一个负数加上一个负数,结果为正数的溢出情况)将结果变为有符号字的形式(为负)JMP JUMPSTAY: CBW ;AL 中数的符号扩展到 AH,无符号字节变成无符号字,有符号字节变成有符号字JUMP: MOV DI,AH ;修改此处,以使显示的结果是高字节在前,低字节在后ADD DI,1MOV DI,ALADD DI,1INC BXDEC CXJNZ PRO;*END*)解析:解析 本题主要考查对数组的求和实现问题。考生需要注意 A0A9 存放在内存单元的SOURCESOURCE+9 单元;B 0B 9存放在内存单元的 SOURCE+10SOURCE+19 单元。C i=Ai+Bi=(SOURCE+i)+(SOURCE+N+i)。本题难点在于具体求和的实现,如 JNS JUMP 此时 Bk是正数(为一个正数加上一个正数,结果为负数的溢出情况)转 JUMP(AH 已为 00H);MOV AH,0FFH 此时 Bk是负数(为一个负数加上一个负数,结果为正数的溢出情况)将结果变为有符号字的形式(为负)。

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