2007年4月全国计算机等级考试三级PC技术上机试题计算机等级考试

文章作者 100test 发表时间 2009:07:27 17:26:02
来源 100Test.Com百考试题网


  试题1:
  〈三级PC南开100题〉的第五题
  一、请编制程序,其功能是:内存中从SOURCE开始连续存放着21个八位有符号数(补码),其相邻两数之间差值不超过-8至7。对这种变化缓慢的数据可采用差分方法进行压缩。即第一个数据不变,其后的数据取与前一数据的差值并用四位二进制补码表示,两个差值拼成一个字节,前一个差值放在高四位,后一个差值放在低四位。
  例如:
   原数据(X[n]):23H,27H,2AH,29H,22H…
  压缩后(Y[n]):23H, 43H, F9H…
  编程按上述方法进行压缩,结果保存在RESULT开始的内存单元中。
   部分程序已给出, 其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。
    填空BEGIN和END之间已给出的一段源程序使其完整(空白已用横线标出,每行空白一般只需一条指令, 但采用功能相当的多条指令亦可),或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。
   对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调试中若发现整个程序中存在错误之处, 请加以修改。
   试题程序:
   EXTRN LOAD:FAR,SAVE:FAR
  N EQU 10
  STAC SEGMENT STACK
   DB 128 DUP(?)
  STAC ENDS
  DATA SEGMENT
  SOURCE DB 2*N 1 DUP(?)
  RESULT DB N 1 DUP(0)
  NAME0 DB INPUT1.DAT,0
  NAME1 DB OUTPUT1.DAT,0
  NDATA DB N DUP(0)
  PDATA DB N DUP(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,NAME0 .原始数据文件名
   MOV CX,2*N 1 .字节数
   CALL LOAD .从INPUT1.DAT中读取数据
  .****BEGIN****
   LEA SI,SOURCE
   LEA DI,RESULT
   CLD
   MOVSB .Y[0]=X[0]
   XOR BX,BX .FLAG=0
   MOV DX,N*2 .COUNTER
  COMPRESS:
   LODSB .X[n]-X[n-1]
   SUB _______________ .FLAG=NOT FLAG
   ________________________
  J_______ LOW_HEX
   MOV CL,4
   ________ AL,CL
   MOV AH,AL
   JMP NEXT
  LOW_HEX:
  _________________________
   OR AL,AH
   STOSB
  NEXT: _________________________
   JNE COMPRESS
  .****END****
   LEA DX,RESULT .结果数据区首址
   LEA SI,NAME1 .结果文件名
   MOV CX,N 1 .字节数
   CALL SAVE .保存结果到文件
   RET
  START ENDP
  CODE ENDS
   END START
  答案:
5.(1)AL,[SI-2]
(2)XOR BX,0FFH
(3)Z
(4)SHL
(5)AND AL,0FH
(6)DEC DX



相关文章


计算机英语:Windows3.1操作模式计算机等级考试
2007年4月计算机三级等级考试网络考题计算机等级考试
计算机等级考试三级网络模拟试题参考答案(4)计算机等级考试
2007年4月全国计算机等级考试三级网络技术笔试试题及答案计算机等级考试
2007年4月全国计算机等级考试三级PC技术上机试题计算机等级考试
2009年上半年全国计算机等级考试三级网络技术笔试试卷及答案计算机等级考试
计算机等级考试三级网络模拟试题参考答案(1)计算机等级考试
sql2005安装过程中无法启动mssqlserver的问题计算机等级考试
永远不进别人QQ黑名单的方法计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛