a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 75|回复: 0

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

[复制链接]
发表于 2012-7-31 20:55:16 | 显示全部楼层 |阅读模式
 请编制程序,其功能是:将一数据采集系统中采集的80个字节无符号数(已存于SOURCE开始的内存区域)按算术平均数字滤波方法进行数字滤波,每8个数求一个平均值(舍去余数)。将10个平均值依次写入RESULT指示的内存区域。  例如:
+ N: D" F% t( c: a9 I8 X+ ]4 F  原采集数据 1EH 31H 31H 33H 58H 75H 38H 34H 49H A2H 98H
/ H: X0 f! e) H  [6 E+ r  DFH 99H 64H 64H B7H…1 Z( o1 M: Y0 C! Q
  结果为 3DH CCH…# o- T# X; C) A$ i4 v1 D0 I
  部分程序已给出, 其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。
9 J5 @$ u( i: |  填空BEGIN和END之间已给出的一段源程序使其完整(空白已用横线标出,每行空白一般只需一条指令, 但采用功能相当的多条指令亦可),或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。
8 W( J$ B0 `. U7 i6 v; m' ~  对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调试中若发现整个程序中存在错误之处, 请加以修改。% R4 v/ n8 K" W
  试题程序:
; C; f7 U+ b8 S6 A  EXTRN LOAD:FAR,SAVE:FAR' D1 v( J. U: k3 k# M
  N EQU 109 ?2 Q' P9 v, y7 p! \
  STAC SEGMENT STACK" }2 z( ]) Y5 r( {5 p) p, F
  DB 128 DUP(?)7 R2 D% P# q: @. T# S1 h. T4 v0 y0 t
  STAC ENDS* M4 I2 D1 l4 |: Z
  DATA SEGMENT3 ?' H. d. y7 g+ i$ h
  SOURCE DB 8*N DUP(?)0 _/ _" E' W4 x. s7 C
  RESULT DB N DUP(0)# f+ a4 S" z6 C, l6 t3 t2 r; c
  NAME0 DB 'INPUT1.DAT',0
. \0 ]+ g6 X& Y+ F  NAME1 DB 'OUTPUT1.DAT',0
, s8 b, f# c& C  DATA ENDS
, E% X* q. \" f. o  CODE SEGMENT
9 o2 [% t3 W, ~  ASSUME CS:CODE,DS:DATA,SS:STAC
  ^4 o- F" |$ c# @. H  START PROC FAR8 Z* a  Q! s, A+ D
  PUSH DS
! U6 C* f0 l7 h/ W2 [  XOR AX,AX9 L# {: B4 E/ W3 q
  PUSH AX
- ^( H" v  o/ q0 o9 q  G  MOV AX,DATA
. k& v% j' ?+ t% q  MOV DS,AX
+ v& O7 P8 ?0 j% L  LEA DX,SOURCE ;数据区起始地址. z: c: P, S+ s5 O( q3 F$ W6 B/ _
  LEA SI,NAME0 ;原始数据文件名$ V6 L/ v# }# v* F
  MOV CX,6*N ;字节数
2 D/ R  \5 H8 N9 O& W1 X' j/ r  CALL LOAD ;从'INPUT1.DAT'中读取数据- X4 H$ h' {0 ~% {
  ;****BEGIN****% h, C) ?  j2 u" ^
  LEA SI,SOURCE+ A4 M! W/ ^& G/ _# E0 t7 r4 e5 D
  MOV __________________
/ A# w' Z; z! R: B7 q  MOV DX,N+ N4 H* D( l$ D* |4 Z
  MAGN1: XOR AX,AX2 z) H1 t7 z4 m/ v+ ?
  XOR BX,BX
/ P! E( A* \  z( B+ e  MOV CX,_______________
/ k0 k/ Z, l" J$ U! q  MAGN2: MOV AL,[SI] ;取数并求和放BX中) M, m: }- |  C, g. H- `7 Y! S
  ADD BX,_______________. S2 f3 g5 a0 q* P, e5 h1 g# M% @0 ?6 [
  INC SI" J! `7 \' h0 j, }
  ____________________________
7 b. f+ `4 K. t4 W- |  MOV AX,BX
7 U9 T6 n9 w3 A* j  ____________________________
# k. S: a( z6 P! t/ ]* p: ~  ____________________________
% _& T0 N! h. ]  p2 z1 _  ____________________________& m$ d9 T( ~" l, [% c* k
  ____________________________
" J6 x; ], O8 p  p* k3 F  DEC DX
, Q6 B- V8 j. _- Y. I/ R4 A- t9 J  ________ MAGN1% y5 @! l+ X- b2 O5 f% C* j) R
  ;****END****
. p- C) B5 E* Q, U0 ^' O3 n  LEA DX,RESULT ;结果数据区首址: R  t1 Q+ F& g5 K! F4 @/ E
  LEA SI,NAME1 ;结果文件名" Y) ?9 q6 y; X
  MOV CX,N ;字节数
2 A$ G3 t5 c# f5 v) ]  CALL SAVE ;保存结果到文件; u, H0 r* q+ n
  RET
( h3 ?  q7 N8 ?! }( h5 z4 p  START ENDP
/ Z( j" s, T# D7 \2 y  CODE ENDS
- j0 T% m3 J' l, f  END START
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-18 09:47 , Processed in 0.393575 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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