a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 79|回复: 0

[PC技术] 2011下半年计算机等级三级PC技术上机100题(22)

[复制链接]
发表于 2012-7-31 20:55:16 | 显示全部楼层 |阅读模式
 请编制程序,其功能是:内存中连续存放着9个ASCII字符(8位二进制数表示,最高位为零),把它们转换成串行通讯中偶校验码,并计算9个偶校验码的累加码(累加值的低8位二进制数),将九个偶校验码按原序存入内存,累加码存放在此序最后。  例如:
5 X! C  p) h  E: A9 H$ t( f( K  内存中有: 37H,38H,39H…
: _- {; h' [8 V, l$ T3 g( v2 |  结果为 : B7H,B8H,39H…累加码
3 w! ~( o! ~% O  部分程序已给出, 其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。$ P" s$ X* F  m; F
  填空BEGIN和END之间已给出的一段源程序使其完整(空白已用横线标出,每行空白一般只需一条指令, 但采用功能相当的多条指令亦可),或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。
- w! \- l8 ~% a' E2 n) T% w% E  对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调试中若发现整个程序中存在错误之处, 请加以修改。/ B* m" r7 \2 L* b5 ?8 t# i4 J, @
  试题程序:
; `3 h% u* V5 ^3 z0 G  EXTRN LOAD:FAR,SAVE:FAR
8 k* f+ d( p8 }: e+ J* J4 c8 v  N EQU 10
  @* e- _- X& u) a1 |$ _* t8 n  STAC SEGMENT STACK
# J" c$ [. f2 V2 ~7 s  DB 128 DUP(?)
( ?( n$ t" g! b2 ~1 }% `, |  STAC ENDS
1 p2 }; |) |2 M/ O, M  DATA SEGMENT
1 ]# f0 _. D1 D9 D+ X( G  SOURCE DB 9 DUP(?) ;顺序存放9个ASCII字符
, q  P) x: @4 z$ B/ p  RESULT DB N DUP(0) ;存放结果- @$ C: U& n1 Q: b% o
  NAME0 DB 'INPUT1.DAT',0/ P4 [) Q( C- _  F$ x
  NAME1 DB 'OUTPUT1.DAT',0" E) m, U* u) v- k4 f8 z
  DATA ENDS& Q: c1 d- N# Y! D4 o
  CODE SEGMENT8 d7 B, I4 R3 A- V$ ?: B
  ASSUME CS:CODE,DS:DATA,SS:STAC. Y7 q. v0 P8 n; Y2 f8 A
  START PROC FAR: L: f% a4 L! `/ ]! q
  PUSH DS/ \1 k8 Q1 x5 J7 v
  XOR AX,AX' u1 r) r, J' p
  PUSH AX" \/ b/ i: r5 \5 N9 `& i( [
  MOV AX,DATA
1 `5 u' Q5 e6 B# [7 T# N7 H" H$ A  MOV DS,AX0 N# H3 A1 b+ f" B
  LEA DX,SOURCE ;数据区起始地址7 z. {6 {0 _" g, k; O% z
  LEA SI,NAME0 ;原始数据文件名: w$ l3 y; H- L0 o! u. K
  MOV CX,N-1 ;字节数
, B, r8 `$ D( K" `) p  CALL LOAD ;从'INPUT1.DAT'中读取数据: A& l1 }% m# B8 f9 N
  ;****BEGIN****) G. d4 j* ^* r, W6 @
  MOV SI,OFFSET SOURCE0 E) M1 C( G7 a: m
  MOV DI,OFFSET RESULT4 j8 D" Y4 Q" T+ g* Z' B6 ]
  MOV DX,N-11 |  Q2 K" D! K" B
  MOV AL,0& w& j" a5 S7 |) j6 \3 Y8 ~5 _
  LP0: MOV BL,[SI]
" p/ M, W- W0 D. ]  MOV CX,8! |/ C( P* a; m$ }) W) |5 o7 M
  ________ AX
5 ~, V" d  Z# y& h  MOV AL,0
& u% O$ d  ~5 ~' ~  LP1: ________ BL,1
' U# E" k/ [  U% b/ {4 i+ n! J  ________ AL,0
$ t8 j$ G$ a3 s+ N  LOOP LP1
" v* O1 X1 @: C- k7 s" j; V  AND AL,01H
; Z" D* i: |; ]% a% h% s  ROR AL,1
% w( g$ g& S1 c  OR _________,_________
- l! r$ B; O* a4 I1 N3 t  MOV [DI],BL
$ \- A+ L$ Z3 h$ U& d  ________ AX, O0 u2 Q0 i8 y; K
  ADD AL,BL/ z% w8 t  ?& E# ^
  INC DI; ^5 a/ X  u3 M6 y/ |
  INC SI
2 H8 ~1 B' B7 h+ t  DEC ____________________: ?, L9 y/ s& o6 d; O) I# i
  JNZ LP0! r8 g' Z( }; P3 a* s; b+ u! @  e
  _____________________________
' P1 c' c2 W8 X1 u  ;****END****
" i# }" {: F$ S! S5 X  LEA DX,RESULT ;结果数据区首址9 |" V' j1 \  r* {" j. F
  LEA SI,NAME1 ;结果文件名
0 m" c5 {6 U5 B  MOV CX,N ;字节数: [4 i) n, J7 F. e6 w4 @' ?0 L# b
  CALL SAVE ;保存结果到文件# Y/ f+ z6 T/ J9 P2 W( R* M0 a
  RET1 y1 ]6 z4 ], E
  START ENDP" W  m& r3 q4 N4 P
  CODE ENDS# B6 G1 L! l! N0 C" W' U
  END START
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-6-3 02:02 , Processed in 0.202702 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表