a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 49|回复: 0

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

[复制链接]
发表于 2012-7-31 20:55:16 | 显示全部楼层 |阅读模式
请编制程序,其功能是:以SOURCE开始的内存区域存放着N个字节的有符号数。现找出最大的数,结果存放到RESULT指示的单元,其后存放原N个数逻辑取反后的值。  内存中有 09H,7EH,89H,F3H,17H,…,67H(N个数据)1 e$ B, L' M! F8 L& g" }/ {' A
  结果为 7EH(最大数),F6H,81H,76H,0CH,E8H,…,98H(原来N个数的逻辑反)$ i! v# S0 e( U! K, E
  部分程序已给出, 其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。
$ l- W. ]& h. M9 Q  填空BEGIN和END之间已给出的一段源程序使其完整(空白已用横线标出,每行空白一般只需一条指令, 但采用功能相当的多条指令亦可),或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。! c1 d0 b7 M3 Z: }: \
  对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调试中若发现整个程序中存在错误之处, 请加以修改。
3 r! {" J7 d/ c3 Z; b- a6 b' ?" H  试题程序:3 C' f- o/ H5 c8 x; t& P* _. a! g
  EXTRN LOAD:FAR,SAVE:FAR
& o7 [+ h1 ~. L8 e! N$ X  N EQU 194 _: `5 z6 N3 b8 h  g* C) U7 {
  STAC SEGMENT STACK( r2 d  ^9 t  X+ C/ o1 N4 C' o# Q
  DB 128 DUP(?)- u& C# w. Q& W# r$ M5 C0 @
  STAC ENDS
  I. _% [- D0 v+ ~  DATA SEGMENT
% S5 k1 i/ M$ ^+ ~8 }% g, u. P" ?  SOURCE DB N DUP(?)
  `, Z2 y  t, o( z. _, T' v' c  RESULT DB N+1 DUP(0); U; r4 N# O7 q. V' `' c; n- y& w* r
  NAME0 DB 'INPUT1.DAT',05 {, @7 K) L9 O* ]3 S
  NAME1 DB 'OUTPUT1.DAT',0  ^9 F# v) }/ S: x1 m
  DATA ENDS
7 i: o' b7 V' h: E- y- |6 n' |  CODE SEGMENT7 _. o+ D; O( c$ Y, t  k, Z6 K
  ASSUME CS:CODE,DS:DATA,SS:STAC1 O! t$ [1 e  Z8 Z7 ?
  START PROC FAR* d( T" a% ~( `6 s1 ~; v
  PUSH DS) H0 G: A0 J6 g% l* X6 D- k% D% d
  XOR AX,AX$ d+ y1 \/ i1 V+ c9 m
  PUSH AX+ c% x* ~. L+ N# S1 j( p
  MOV AX,DATA
  b% L: x( b# Q7 S. M, a  MOV DS,AX
# Q7 ?1 E+ X) u& D- z9 ]* G  MOV ES,AX ;置附加段寄存器
2 B- C6 s- s5 P' F" m  b  LEA DX,SOURCE ;数据区起始地址
; t" D5 c+ k2 X* U: z0 o$ f  LEA SI,NAME0 ;原始数据文件名2 _) _8 m7 p6 P; T
  MOV CX,N ;字节数
* w: N% z( v# R7 K, n" q; e5 q" c  CALL LOAD ;从'INPUT1.DAT'中读取数据+ N1 y8 w; Q/ r7 w* I
  ;****BEGIN****
9 v6 R3 h; ]! {7 Y1 U  ________ SI,SOURCE1 l/ _3 q. ?+ l2 _5 L
  MOV BX,OFFSET SOURCE
; q+ e" F3 B; A; ~# u$ R) }  LEA DI,RESULT
& |- Q, k5 O- {9 V& r. H  MAXD1: MOV CX,N
8 |0 d8 Y, b- P" k- t  MOV DX,CX8 S2 L  ]7 D' t/ S: z" f; I
  MOV AL,_______________
! v  t* B" F; a  MAXD2: INC BX
- t0 J3 y2 _9 {& e  u  ________ AL,[BX]
" `  l4 ^4 q7 [  ___________________________
2 _7 P8 B4 N! {2 d  MOV AL,[BX]
0 e  Q2 t# \  M; b# D  MAXD3: DEC DX* Y# @6 I$ W. B# t$ R
  JNZ __________________
  @& w- H) y8 R  MOV [DI],AL
  p2 y: m1 f9 G  INC DI
6 t! u8 w& M, w2 N8 M  CLD, o! J  d% u- a% f
  MREP: LODSB  M0 H) p- a, o: K
  NOT AL
1 r0 s7 g1 G, u2 ]  ____________________________( v# G7 {# B% D4 X- S
  LOOP MREP) G. T  C# _$ X. D2 Q; i
  ;****END****5 Q5 B% ^: n5 @( r3 S& F* E! W
  LEA DX,RESULT ;结果数据区首址
9 c8 z: W1 n6 f3 @5 _  u  LEA SI,NAME1 ;结果文件名% g. s0 `) V8 C3 O4 H# H9 I
  MOV CX,N+1 ;字节数
' Z$ u# E; A- s6 V* x: E  CALL SAVE ;保存结果到文件: i' q6 }+ {" D) N- x
  RET/ s. b2 I6 S6 l3 J% T
  START ENDP2 {! t/ A: G( F* |9 j" n* d& T
  CODE ENDS- F6 }, G. u, C0 B  q" E
  END START
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-18 15:05 , Processed in 0.193971 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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