欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    [计算机类试卷]PC技术机试模拟试卷58及答案与解析.doc

    • 资源ID:493473       资源大小:27.50KB        全文页数:3页
    • 资源格式: DOC        下载积分:2000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要2000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    [计算机类试卷]PC技术机试模拟试卷58及答案与解析.doc

    1、PC技术机试模拟试卷 58及答案与解析 一、程序设计题 1 编制一个程序,其功能是:计算内存中连续存放的 20个字节无符号数据的相邻两个数据之间的和,并找出和的最大值,和的最大值存放在结果的最后一个字单元,和为字数据。 例如: 内存中有: 20H, 04H, 58H, 34H, 35H, 4DH , 则结果为: 0024H, 008CH, 0082H 部分程序已经给出,其中原始数据由过程 LOAD从文件 INPUT.DAT中读入以SOURCE开始的内存单元中。运算结果要求从 RESULT开始的内存单 元存放,由过程 SAVE保存到文件 OUTPUT.DAT中。 请填空 BEGIN和 END之间

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

    3、PUT.DAT,0 NAME1 DB OUTPUT.DAT,0 DSEG DS CSEG EGMENT SSUME CS:CSEG,DS:DSEG,SS:SSEG START PROC FAR USH S OR AX,AX USH X OV AX,DSEG OV DS,AX EA DX,SOURCE EA SI,NAME0 OV CX,N*2 ALL GAD ; * BEGIN * EA SI, SOURCE EA DI,RESULT OV CX,N AGAIN0: (1) OV AL,SI DD AL,SI+1 DC AH,0 OV DI,AX DD SI, (2) (3) OOP GAIN

    4、0 OV BX,N-1 OV SI,OFFSET RESULT OV AX,SI AGAIN1: ADD SI, 2 MP AX,SI (4) OV AX,SI NEXT: DEC BX NZ AGAIN1 (5) ; * END * EA DX,RESULT EA SI,NAME1 OV CX,N+1 ALL AVE ET START ENDP CSEG ENDS END START PC技术机试模拟试卷 58答案与解析 一、程序设计题 1 【正确答案】 (1) MOV AX,0 (2) 2(3) ADD DI,2 (4) JAE NEXT (5) MOVSI+2,AX 【试题解析】 从程序

    5、的整体结构可以看出程序首先进行的是求和运算,并将结果存入从 RESULT开始的存储单元中。求和结束以后,再求 RESULT中数据的最大值。 第一个循环 AGAIN0用来对 SOURCE中相邻的数据求和,并存入 RESULT中。为了使上一次的相加结果不影响后面的运算,需要在每一次进入循环的时候将 AX寄存器清零,因此 第一个空白处应该填写的内容为 MOV AX,0(或 XOR AX,AX或 SUB AX,AX)。本程序的加法运算过程中,指针的变化要特别注意。由于是对相邻两个数据进行求和,所以尽管 SOURCE中的数据是字节类型,但由于一次操作需要使用两个数据,所以 SI指针的变化每次应该是 2,

    6、也就是说一次加法使用两个数据以后,下一次要从第三个数据开始,所以第二个空白处应填 2。指向 RESULT的指针也要变化,由于 RESULT是字类型,因此指针的变化也应该是 2,所以第三个空白处应该是 DI增加 2,即 ADD DI,2。 寻找最大值 采用的算法是逐个比较法,即将存储单元中的第一个数取到 AX寄存器中,然后逐个与存储单元的内容进行比较,如果 AX寄存器中的数据大,则进行下一次比较,否则将存储单元中的内容传送到 AX中,这样在比较结束时, AX中的内容便是这一组数中的最大值。在程序中,首先将用米控制循环次数的内容送到 BX寄存器中,然后将存储单元的偏移地址送到寄存器 SI中。将第一个数据取入 AX寄存器后,便开始比较,显然第四个空白处应该填写的内容是一个跳转语句,从下面 MOV AX,SI可以知道跳转的条件应该是 AX中的数据大于 SI中的数据,所以 应使用 JAE指令。由于需要修改指针并且判断比较是否结束,因此应该跳转到 NEXT处,即第四个空白处的程序是 JAE NEXT。最后一个语句实现的是将最大值存入 RESULT的最后一个存储单元,由于在比较时, SI已经指到了RESULT中的最后一个数据,所以只需要将指针 SI再加 2就指向了 RESULT的最后一个存储单元,即第五个空应填的内容为 MOV SI+2,AX。


    注意事项

    本文([计算机类试卷]PC技术机试模拟试卷58及答案与解析.doc)为本站会员(proposalcash356)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

    收起
    展开