三级PC技术机试真题2007年04月_第1页
三级PC技术机试真题2007年04月_第2页
三级PC技术机试真题2007年04月_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 真题 三级 PC 技术机试真题 2007 年 04 月计算机三级PC技术(机试)第 1 题:请编制程序ex4.ASM其功能是:内存中连续存放着两个有符号字节数序列 A<sub>k</sub>和 B<sub>k</sub>(k=O ,,9),求序列 C<sub>k</sub>, C<sub>kv/sub>=Avsub>kv/sub>+Bvsub>kv/sub>(Cvsub>k</sub> 以有符号的形式 按 C<sub>O</sub>,,C

2、<sub>9</sub>的顺序连续存放)。例如:序列 A<sub>k</sub>: 80H, 31H, 61H, 7FH ;序列 B<sub>k</sub>: 80H, 01H, F1H, 7FH 。结果 C<sub>kv/sub>为:FF00H 0032H, 0052H, 00FEH 。部分程序已经给出,其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE1始的内存单元中,运算结果要求从 RESULTS始存放,由过程SAVE保 存到文件OUTPUT1.DA中。填空BEGIN和END之间

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

4、AT,。NAME1 DB'OUTPUT1.DAT0DATAENDSCODESEGMENT;顺序存放 A0 A9; B0 B9;顺序存放 C0 C9ASSUME 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 ;从INPUT1.DAT 中读取数据 ;* BEGIN *MOV DI,OFFSET RESULTMOVBX,0MOVCX,NPRO:MO

5、V AH,0MOVAL, MOV DL,ALAL,SOURCEBXJNO STAYJUMP1: MOV AH,00ADD DL,0JNS JUMPMOV AH, JMP STAY: JUMP:MOVADDDI,2INCBXDECCXJNZ PRODI,AXENDLEA DX,RESULTLEA SI,NAME1MOVCX,N*2CALLSAVERETSTART ENDP CODE ENDS ENDSTART结果数据区首址;结果文件名 ;结果字节数 ;保存结果到文件参考答案:;* BEGIN * 开始存放MOVPRO:MOV AH,0B<sub>k</sub >中的一个字

6、节 ADDAL,<u>SOURCEMOV DI,OFFSET RESULT BX,0 MOVMOV CX,NAL, <u>SOURCEBX+N</u> MOV DL,ALBX</u>结果从 RESULT;设定循环次数;序列;暂存 B<sub>k</sub>C<sub>k</sub>=B<sub>k</sub>+A<sub>k</sub> JNOSTAY无溢出转 STAYJUMP1:MOV AH,00DL,0;用来判断B<sub>k</

7、sub>的符号;有溢出?ADDJNS JUMPB<sub>k</sub>是正数(为一个正数加上一个正数,结果为负数的溢出情况)JUMP(AH已为 OOH)MOV AH,0FFH ; B<sub>k</sub>是负数(为一个负数加上一个负数, 结果为正数的溢出情况 ) 将结果变为有符号字的形式 (为 负 ) JMP <u>JUMP</u> STAY: <u>CBW</u>; AL 中数的符号扩展到AH无符号字节变成无符号字,有符号字节变成有符号字JUMP:MOV DI,AH ;修改此处,以使显示

8、的结果是高字节在前,低字节在后ADD DI,1MOV DI,ALADD DI,1INC BX DEC CX JNZ PRO ;*END*详细解答:本题主要考查对数组的求和实现问题。考生需要注意A0A9存放在内存单元的SOURCSOURCE+单元;B<sub>0</sub>B<sub>9</sub>存放在内存单元 的SOURCE+10 SOURCE+19 单 元。C<sub>i</sub>=A<sub>i</sub>+B<sub>i</sub>=(SOURCE+i)+(SOURCE+N+i。) 本 题难点在于具体求和的实现,如 JNSJUMP此时B<sub>kv/sub>是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论