a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 64|回复: 0

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

[复制链接]
发表于 2012-7-31 20:55:16 | 显示全部楼层 |阅读模式
 请编制程序,其功能是:内存中连续存放着两个无符号字节数序列AK和BK(k=0,…,9),求序列CK,CK=AK×BK(CK以有符号字的形式按C0,…,C9的顺序连续存放)。  例如:) v2 Y7 W4 I' A3 x3 }
  序列AK为 FFH,80H,7FH,00H…
  ?7 y3 s* F9 `5 ?  序列BK为 FFH,80H,01H,02H…
+ Q& A9 W7 k1 N0 t) d( t8 D  则结果CK为 FE01H,4000H,007FH,0000H…) t) w' J. ]! B+ \- S) o
  部分程序已给出, 其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。3 [8 p7 j. I; _5 r
  填空BEGIN和END之间已给出的一段源程序使其完整(空白已用横线标出,每行空白一般只需一条指令, 但采用功能相当的多条指令亦可),或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。
/ y8 O) e( l8 u  对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调试中若发现整个程序中存在错误之处, 请加以修改。
: C8 m5 _3 U! o- i* @: z: T% r  试题程序:
8 u# b* x$ o5 P, \8 g  EXTRN LOAD:FAR,SAVE:FAR1 G2 U8 G* @6 ?, O
  N EQU 10+ a8 {) {6 W0 O5 V, p
  STAC SEGMENT STACK" t) V# g% ^: a. }4 x0 N$ n
  DB 128 DUP(?)
: R  W- P3 i3 [  {5 C- }  STAC ENDS
& a2 v: i5 ]% _4 |( E& N  DATA SEGMENT
6 h; n: H$ Y- c! A  K0 w2 u" }  SOURCE DB N*2 DUP(?)# k/ ?% M. C/ F8 i% c
  RESULT DW N DUP(0)
: l7 l# M. u" b% A" f, G  R  NAME0 DB 'INPUT1.DAT',0
! D6 L; V! Q* C7 C. e/ t  NAME1 DB 'OUTPUT1.DAT',0
1 d" A% w& O2 b  DATA ENDS
" \# _- `5 O! [! ]% A: H  CODE SEGMENT2 u% e- p, O! G2 D# S! J
  ASSUME CS:CODE,DS:DATA,SS:STAC
; [) L; F+ o+ r' K% M# N; j& T  START PROC FAR
  T, M, ~0 E* Z) d' c7 |) k; `  PUSH DS9 w3 s- D* S. x. X6 h" G1 d
  XOR AX,AX6 S) |4 z% L8 y9 h" R
  PUSH AX
: e, g5 V) m. m. o9 ]$ c; e+ E  MOV AX,DATA
/ X7 l$ K$ @; U9 _' q0 e  MOV DS,AX
1 C$ Y: j% k4 I" r1 ~  LEA DX,SOURCE ;数据区起始地址: K2 P! c# {1 ~: q" d$ P
  LEA SI,NAME0 ;原始数据文件名  u9 J% E( B7 K
  MOV CX,N*2 ;字节数
  t* t, Y- q  |( K  CALL LOAD ;从'INPUT1.DAT'中读取数据/ E  h6 O% l1 d" d. o
  ;****BEGIN****
2 v. I( ]7 g$ F8 B  ___________,OFFSET RESULT: Q( X- Y* f$ e: a* R
  MOV BX,0
/ A7 \# L8 s- ?  __________________________
) |4 P' p" z, P2 S* o8 \6 k2 l% F! C  PRO: ___________,SOURCE[BX+N]6 e) u" p& c; c* ]" N% ]$ L
  ___________________________
8 K" \) l4 j) o! H! x# q: V) u  MOV [DI],AX
+ q( p8 k* E& R0 ?4 _( H. T, ~  ADD DI,22 ]% y, ]  S; J3 a6 u2 L3 A
  INC BX( r/ E4 v  C9 f  Q
  ___________________________
4 G( e( r4 j. L( p- I2 Q  JNZ PRO
1 N% Z4 U/ D# N% v/ r2 \2 z  ;****END****. h5 k) w6 S9 m
  LEA DX,RESULT ;结果数据区首址- d" E! W+ }$ K' _, B
  LEA SI,NAME1 ;结果文件名
1 D5 X" u8 B0 l  MOV CX,N*2 ;字节数2 t4 d; h0 ]9 y& c% T
  CALL SAVE ;保存结果到文件% O+ T+ f- m% T: p4 `
  RET
6 T( M% \; ~- ^' f' z" p0 O4 J  START ENDP
4 Z( G) d5 c) y7 f  CODE ENDS
: n4 ~( M) k- a" |! v  END START
回复

使用道具 举报

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

本版积分规则

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

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

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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