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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、PC技术机试模拟试卷 45及答案与解析 一、程序设计题 1 请编制程序,其功能是:以 SOURCE开始的内存区域存放着 N个字节的压缩BCD码,将每个压缩 BCD码转换成两个 ASCII值,并在每个 ASCII值的最高位增加偶校验位,结果存放在 RESULT指示的内存区域。 例如: 原压缩 BCD码: 26H, 75H, 91H, 33H 结果为: B2H, 36H, B7H 部分程序已经给出,其中原始数据由过程 LOAD从文件 INPUT1.DAT中读入SOURCE开始的内存单元中,转换结果要求 从 RESULT开始存放,由过程 SAVE保存到文件 OUTPUT1.DAT中。 请填空 BEG

2、IN和 END之间已经给出的一段原程序使其完整,需填空处已经用横线标出,每个空白一般只需要填一条指令或指令的一部分 (指令助记符或操作数 ),也可以填入功能相当的多条指令,或删去 BEGIN和 END之间原有的代码并自行编程来完成所要求的功能。 对程序必须进行汇编,并与 IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。 试题程序 EXTRN LOAD: FAR, SAVE: FAR N EQU 10 STAC SEGMENT STACK DB 128 DUP(?) STAC ENDS DATA SEGMENT SOURCE DB N DUP

3、(0) RESULT DB 2*N 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 MOV ES, AX ;置附力,段寄存器 LEA DX, SOURCE ;数据区起始地址 LEA SI, NANE0 ;原始数据文件名 MOV CX, N ;字节数 CALL LOAD ;从 INPUT1.

4、DAT 中读取数据 ; *BEGIN * LEA SI, SOURCE MOV DI, OFFSET RESULT MOV CX, N SERCH1: MOV (1) MOV AH, AL AND AH, 0FH AND AL, 0FOH PUSH CX MOV CL, 4 (2) (3) ADD AL, 30H (4) OR AL, 80H SERCH2: MOV DI, AL INC DI (5) JP SERCH3 OR AH, 80H SERCH3: MOV DI, AH INC DI INC SI (6) SERCH1 ; * END * LEA DX, RESULT ; 结果数据区

5、 首址 LEA SI, NAMEl ;结果文件名起始地址 MOV CX, 2*N ;字节数 CALL SAVE ;保存结果到, OUTPUT1.DAT,文件中 RET START ENDP CODE ENDS END START PC技术机试模拟试卷 45答案与解析 一、程序设 计题 1 【正确答案】 (1)AL, SI (2)SHRAL, CL (3)POPCX(4)JP SERCH2 (5)ADDAH, 30H (6)LOOP 【试题解析】 此程序要实现两个功能:将 N个字节的压缩 BCD码转换成 2N个ASCII值,并在每个 ASCII值的最高位增加偶校验位。这里考查压缩 BCD码与AS

6、CII码之间的转换,特别是对 SHR指令的理解和状态标志位 PF的运用。 程序的基本结构如下: 堆栈段定义了一个 128字节的堆栈区。堆栈段下面是数据段。数据段中定 义了四个字节型变量:原始数据区 SOURCE、结果数据区 RESULT、原始数据文件名NAME0、结果数据文件名 NAME1。数据段下面是代码段,在代码段开始告诉汇编程序,代码段、数据段和堆栈段分别属于段寄存器 CS、 DS、 SS。 先将原始数据偏移地址装入到 SI中,结果数据偏移地址送 DI。 CX赋初值为N,用于控制循环处理的次数。 SERCH1段的开始要填写第 (1)空,将 SI中的内容传送到 AL。所以第 (1)空填写“

7、AL, SI”。将 AL暂存在 AH中。接着用两条逻辑 “与 ”指令,将 AH的高四位屏蔽掉, 将 AL的低四位屏蔽掉。 CX先压入堆栈中,再将 CL赋值为 4,用以控制下面的移位指令的移位位数。将 AL逻辑右移四位,则 AL的原高四位数字移入到低四位,高四位现在变成了 0。第 (2)空填写 “SHRAL, CL”。 有压入就必有弹出,与前面的 “PUSH CX”指令相对应,第 (3)空填写 “POP CX”。然后将 AL中的值加 30H,就将压缩 BCD码的高四位转换成相应的 ASCII字符了。再由状态标志位 PF求 AL的偶校验位。若 PF=1,说明 AL中有偶数个1,则偶校验位为 0,

8、AL的最高位不变,转向 SERCH2段。否则, PF=0,则 AL的偶校验位为 1,将偶校验位 1加到 AL的最高位,用指令 “ORAL, 80H”来实现,所以第 (4)空填写 “JPSERCH2”。 SERCH2段,将转换后的结果 AL存入到 DI中, DI加 1。接着将压缩 BCD码的低四位 (已存放在 AH中 )转换成 ASCII值,所以第 (5)空填写 “ADDAH, 30H”。接下来两条指令,是同求高四位的偶校验位一样,来求低四位的偶校验位。 SERCH3段,将转换后的结果 AH存放到 DI中, DI地址加 1, SI地址加 1,然后循环到 SERCH1入口处,继续处理下一个压缩 BCD码,所以第 (6)空填写“LOOP”。

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