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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、三级 PC技术机试-89 及答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请编制程序,将内存中连续存放着的 10个无符号 16位二进制数,采用近似计算法求此 10个数的近似平方根。方法为:令某个数 X依次减去 1,3,5,7,9等奇数,一直减到差值刚刚小于等于 0为止。计算出所做的减法的次数 Y,即为该数的近似平方根。把得到结果并依次存放到内存当中。例如:内存中:0010H,0100H,0200H近似方根:0004H,0010H,0016H部分程序已经在 PROG1中给出,其中原始数据由过程 LOAD从文件 INPUT1.DAT中读入,存放

2、在 SOURCE开始的内存单元中,转换结果存放在 RESULT开始的内存单元中,并由过程 SAVE保存到文件 OUTPUT1.DAT文件中。对 BEGIN和 END之间已经给出的源程序填空,使其完整,填空处已经用横线标出,每个空白一般只需填一条指令或指令的一部分;考生也可填入功能相当的多条指令,或删去 BEGIN 和 END之间原有的代码自行编制程序完成相应的要求。对程序必须进行汇编并与 IO.OBJ连接产生可执行文件,最终运行程序产生结果(无结果和结果不正确均不得分)。部分源程序如下:EXTRN LOAD:FAR,SAVE:FARN EQU 10STACK SEGMENT DB 128 DU

3、P(?)STACK ENDSDATA SEGMENTSOURCE DW N DUP(?)RESULT DW N DUP(0)NAME0 DB INPUT1. DAT, 0NAME1 DB OUTPUT1. DAT, 0DATA ENDSCODE SEGMENTASSUME CS: CODE, DS : DATA,SS : STACKSTART PROC FARPUSH DSXOR AX, AXPUSH AXMOV AX, DATAMOV DS; AXLEA DX, SOURCELEA SI, NAMFOMOV CX, N * 2CALL LOAD*BEGIN*LEA DI, RESULTLEA

4、 SI, SOURCEMOV CX, NLOOP0: MOV AX, SIMOV BX, 0LOOP1: (1) SUB AX, BX(2) , STORE0(3) IMP LOOP1 STOREO: INC BX (4) MOV DI, BXINC DI(5) INC SI(6) , LOOP LOOP0 *END* LEA DX, RESULTLEA SI, NAME1MOV CX, N * 2CALL SAVERETSTART ENDPCODE ENDSEND START相关知识:循环程序设计利用重复控制指令可以实现重复操作,能简化程序、节约存储空间。循环程序分为三部分:初始化部分为循环

5、做准备;循环控制部分判断循环条件是否满足,是否继续循环操作;循环体部分完成要循环操作的具体工作。对于复杂问题,单重循环程序往往不能满足要求,循环中常常还需要有其他循环程序。值得注意的是内层循环和外层循环之间应有各自的控制条件,当从外层循环进入到内层循环时,内层循环的初始条件应该重新设置。(1)无条件循环指令格式:LOOP DST该指令的功能是,程序执行到此处,CX 的内容减 1,若 CX的内容不为 0,则转到目标地址处继续执行指令,否则执行该指令的下一条指令。(2)条件循环指令(I)格式:LOOPZ/LOOPE DST该指令执行后,如果零标志位为 1,且 CX内容减 1后不等于 0,则转移到目

6、标地址处继续执行指令,否则执行循环指令后的一条指令,即零标志位为 0或 CX内容为 0时退出循环。(ii)格式:LOOPNZLOOPNE DST该指令执行时,CX 内容减 1,然后根据零标志位和 CX内容决定是否循环。若零标志位为 1,或 CX内容为0时退出循环,否则零标志位等 0且 CX内容不等于 0,则转移到转移指令的目标地址处继续执行。编程思路:第一步:分析程序要求的功能。本程序需要完成以下功能:(1)从数据文件 INPUT1.DAT中读取 10个 16位无符号整数存放在 SOURCE开始的内存单元中。(2)将 SOURCE开始的 10个字单元中的无符号整数,利用减奇数的方法求近似方根,

7、并将结果存放在RESULT开始的内存单元中。(3)将方根结果存放在 OUTPUT1.DAT中。第二步:用相应的汇编程序来实现其功能。(1)数据的读取和存入文件的实现,题目中已经给出。(2)对于一个数的方根近似求解,题目中叙述了具体的实现方法,VCB 依次减 1,3,5直至差小于等于0,求差次数即为方根。通过阅读题目中的汇编源代码,我们可以看出,将内存中的数读入 AX,然后循环减 BX 中的内容。这样我们可判断出减数 1,3,5是存放在 BX中的,BX 的初始值为 1,每执行完一次减操作,BX 的内容就应该加 2。我们始终没有发现哪一个寄存器是用来计数进行减操作次数的,可实际上 BX的内容与减操

8、作的次数是有关的,减操作的次数为(BX)+1)2。观察出这些特征后,我们就可容易填出空格处的答案了。(分数:100.00)_三级 PC技术机试-89 答案解析(总分:100.00,做题时间:90 分钟)一、上机题(总题数:1,分数:100.00)1.请编制程序,将内存中连续存放着的 10个无符号 16位二进制数,采用近似计算法求此 10个数的近似平方根。方法为:令某个数 X依次减去 1,3,5,7,9等奇数,一直减到差值刚刚小于等于 0为止。计算出所做的减法的次数 Y,即为该数的近似平方根。把得到结果并依次存放到内存当中。例如:内存中:0010H,0100H,0200H近似方根:0004H,0

9、010H,0016H部分程序已经在 PROG1中给出,其中原始数据由过程 LOAD从文件 INPUT1.DAT中读入,存放在 SOURCE开始的内存单元中,转换结果存放在 RESULT开始的内存单元中,并由过程 SAVE保存到文件 OUTPUT1.DAT文件中。对 BEGIN和 END之间已经给出的源程序填空,使其完整,填空处已经用横线标出,每个空白一般只需填一条指令或指令的一部分;考生也可填入功能相当的多条指令,或删去 BEGIN 和 END之间原有的代码自行编制程序完成相应的要求。对程序必须进行汇编并与 IO.OBJ连接产生可执行文件,最终运行程序产生结果(无结果和结果不正确均不得分)。部

10、分源程序如下:EXTRN LOAD:FAR,SAVE:FARN EQU 10STACK SEGMENT DB 128 DUP(?)STACK ENDSDATA SEGMENTSOURCE DW N DUP(?)RESULT DW N DUP(0)NAME0 DB INPUT1. DAT, 0NAME1 DB OUTPUT1. DAT, 0DATA ENDSCODE SEGMENTASSUME CS: CODE, DS : DATA,SS : STACKSTART PROC FARPUSH DSXOR AX, AXPUSH AXMOV AX, DATAMOV DS; AXLEA DX, SOUR

11、CELEA SI, NAMFOMOV CX, N * 2CALL LOAD*BEGIN*LEA DI, RESULTLEA SI, SOURCEMOV CX, NLOOP0: MOV AX, SIMOV BX, 0LOOP1: (1) SUB AX, BX(2) , STORE0(3) IMP LOOP1 STOREO: INC BX (4) MOV DI, BXINC DI(5) INC SI(6) , LOOP LOOP0 *END* LEA DX, RESULTLEA SI, NAME1MOV CX, N * 2CALL SAVERETSTART ENDPCODE ENDSEND STA

12、RT相关知识:循环程序设计利用重复控制指令可以实现重复操作,能简化程序、节约存储空间。循环程序分为三部分:初始化部分为循环做准备;循环控制部分判断循环条件是否满足,是否继续循环操作;循环体部分完成要循环操作的具体工作。对于复杂问题,单重循环程序往往不能满足要求,循环中常常还需要有其他循环程序。值得注意的是内层循环和外层循环之间应有各自的控制条件,当从外层循环进入到内层循环时,内层循环的初始条件应该重新设置。(1)无条件循环指令格式:LOOP DST该指令的功能是,程序执行到此处,CX 的内容减 1,若 CX的内容不为 0,则转到目标地址处继续执行指令,否则执行该指令的下一条指令。(2)条件循环

13、指令(I)格式:LOOPZ/LOOPE DST该指令执行后,如果零标志位为 1,且 CX内容减 1后不等于 0,则转移到目标地址处继续执行指令,否则执行循环指令后的一条指令,即零标志位为 0或 CX内容为 0时退出循环。(ii)格式:LOOPNZLOOPNE DST该指令执行时,CX 内容减 1,然后根据零标志位和 CX内容决定是否循环。若零标志位为 1,或 CX内容为0时退出循环,否则零标志位等 0且 CX内容不等于 0,则转移到转移指令的目标地址处继续执行。编程思路:第一步:分析程序要求的功能。本程序需要完成以下功能:(1)从数据文件 INPUT1.DAT中读取 10个 16位无符号整数存

14、放在 SOURCE开始的内存单元中。(2)将 SOURCE开始的 10个字单元中的无符号整数,利用减奇数的方法求近似方根,并将结果存放在RESULT开始的内存单元中。(3)将方根结果存放在 OUTPUT1.DAT中。第二步:用相应的汇编程序来实现其功能。(1)数据的读取和存入文件的实现,题目中已经给出。(2)对于一个数的方根近似求解,题目中叙述了具体的实现方法,VCB 依次减 1,3,5直至差小于等于0,求差次数即为方根。通过阅读题目中的汇编源代码,我们可以看出,将内存中的数读入 AX,然后循环减 BX 中的内容。这样我们可判断出减数 1,3,5是存放在 BX中的,BX 的初始值为 1,每执行完一次减操作,BX 的内容就应该加 2。我们始终没有发现哪一个寄存器是用来计数进行减操作次数的,可实际上 BX的内容与减操作的次数是有关的,减操作的次数为(BX)+1)2。观察出这些特征后,我们就可容易填出空格处的答案了。(分数:100.00)_正确答案:(INC BX(2) JNA(3) INC BX(4) SHR BX, 1(5) INC DI(6) INC SI)解析:

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