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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、三级 PC技术机试-151 及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.编制一个程序,其实现的功能为:将内存中从 SOURCE开始的区域里存放的 20个字节的压缩 BCD码转换为 ASC码,每个压缩的 BCD码转换为两个 ASC码,并在最高位加上奇校验位,结果存放到 RESULT开始的内存区域。例如:内存中有:73H,45H则结果为:37H,B3H,34H,B5H部分程序已经给出,其中原始数据由过程 LOAD从文件 INPUT.DAT中读入以 SOURCE开始的内存单元中。运算结果要求从 RESULT开始的内存单元存放,由过程 SAVE

2、保存到文件 OUTPUT.DAT中。请填空 BEGIN和 END之间已给出的源程序使其完整,空白已经用横线标出,每行空白一般只需要一条指令,但采用功能相当的多条指令也行,考生也可以删除 BEGIN和 END之间原有的代码并自行编程来完成要求的功能。对程序必须进行汇编,并与 IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。【试题程序】EXTRN LOAD:FAR,SAVE:FARN EQU 20DSEG SEGMENTSOURCE DB N DUP(?)RESULT DB N*2 DUP(0)NAME0 DB INPUT.DAT,0NAME1

3、 DB OUTPUT.DAT,0DSEG ENDSSSEG SEGMENT STACKDB 256 DUP(?)SSEG ENDSCSEG SEGMENTASSUME CS:CSEG,DS:DSEG,SS:SSEGSTART PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DSEGMOV DS,AXLEA DX,SOURCELEA SI,NAME0MOV CX,NCALL LOAD; * BEGIN *LEA SI,SOURCELEA DI,RESULTMOV CX,NAGAIN: MOV AL,SIMOV AH,AL(1) AND AH,0FOH(2) MOV C

4、L,4(3) POP CXADD AL,30H(4) NEXTOR AL,80HNEXT: MOV DI,ALINC DIADD AH,30H(5) NEXT1OR AH,80HNEXT1: MOV DI,AHINC DIINC SILOOP AGAIN; * END *LEA DX,RESULTLEA SI,NAME1MOV CX,N*2CALL SAVERETSTART ENDPCSEG ENDSEND START(分数:100.00)_三级 PC技术机试-151 答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.编制一个程序,其实现的功能

5、为:将内存中从 SOURCE开始的区域里存放的 20个字节的压缩 BCD码转换为 ASC码,每个压缩的 BCD码转换为两个 ASC码,并在最高位加上奇校验位,结果存放到 RESULT开始的内存区域。例如:内存中有:73H,45H则结果为:37H,B3H,34H,B5H部分程序已经给出,其中原始数据由过程 LOAD从文件 INPUT.DAT中读入以 SOURCE开始的内存单元中。运算结果要求从 RESULT开始的内存单元存放,由过程 SAVE保存到文件 OUTPUT.DAT中。请填空 BEGIN和 END之间已给出的源程序使其完整,空白已经用横线标出,每行空白一般只需要一条指令,但采用功能相当的

6、多条指令也行,考生也可以删除 BEGIN和 END之间原有的代码并自行编程来完成要求的功能。对程序必须进行汇编,并与 IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。【试题程序】EXTRN LOAD:FAR,SAVE:FARN EQU 20DSEG SEGMENTSOURCE DB N DUP(?)RESULT DB N*2 DUP(0)NAME0 DB INPUT.DAT,0NAME1 DB OUTPUT.DAT,0DSEG ENDSSSEG SEGMENT STACKDB 256 DUP(?)SSEG ENDSCSEG SEGMENTA

7、SSUME CS:CSEG,DS:DSEG,SS:SSEGSTART PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DSEGMOV DS,AXLEA DX,SOURCELEA SI,NAME0MOV CX,NCALL LOAD; * BEGIN *LEA SI,SOURCELEA DI,RESULTMOV CX,NAGAIN: MOV AL,SIMOV AH,AL(1) AND AH,0FOH(2) MOV CL,4(3) POP CXADD AL,30H(4) NEXTOR AL,80HNEXT: MOV DI,ALINC DIADD AH,30H(5) NEX

8、T1OR AH,80HNEXT1: MOV DI,AHINC DIINC SILOOP AGAIN; * END *LEA DX,RESULTLEA SI,NAME1MOV CX,N*2CALL SAVERETSTART ENDPCSEG ENDSEND START(分数:100.00)_正确答案:(1) ANDAL,0FH (2) PUSH CX(3) SHRAH, CL (4) JNP (5) JNP)解析:解析题目要求将压缩的 BCD码转换为两个 ASC码,则首先要将 BCD码分离出来,转换为非压缩的 BCD码,然后转换为 ASC码。最高位要求加奇校验位,所以要对转换以后的数据进行判断,

9、如果数据中 1的个数为奇数的话,则直接将其存储到结果存储区,否则要将数据的最高位变为 1。程序中,已经将数据的高 4位分离到 AH寄存器中,所以还需要将低 4位的数据分离到一个寄存器中,有后面的程序可以看出应该分离到 AL寄存器中,所以第一个空白处应填写 AND AL,0FH。高 4位数据分离到AH寄存器以后,需要将数据从高 4 位移到低 4位来,变成非组合的 BCD码。由于移动的位数为 4,所以需要使用 CL寄存器,而 CX寄存器被用来作为程序循环次数的控制器,所以需要在使用 CL寄存器之前对CX进行入栈和出栈操作,即第二个空白处应填 PUSH CX。第三个空白处执行的是右移操作,所以应填为SHR AH,CL。执行完数据分离以后,将非组合的 BCD码转换为 ASC码,转换的时候只需要将非组合的BCD码与 30H执行与操作即可。转换完成后,要在量高位加奇校验位,即要对转换后数据中 1的个数进行判断,所以最后两个空应填 JNP,表示当数据中 1的个数为奇数时跳转到数据存储的程序段执行,否则将数据的最高位变为 1,然后再进行存储。

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