a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 72|回复: 0

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

[复制链接]
发表于 2012-7-31 20:55:16 | 显示全部楼层 |阅读模式
 请编制程序,其功能是:内存中连续存放着10个16位二进制数,分别对每个数的高位字节和低位字节进行逻辑与运算及逻辑或运算。运算结果以字的形式按序连续存放(低位字节存入逻辑与运算的结果,高位字节存入逻辑或运算的结果)。  例如:
8 e7 ^0 B% o, S  内存中有 AA55H,55AAH,FFAAH…
' d$ C& K  @6 F0 q" e  结果为 FF00H,FF00H,FFAAH…
: l) j) f1 s1 h' Z  部分程序已给出, 其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。6 ?1 H7 \" J2 ^& Q
  填空BEGIN和END之间已给出的一段源程序使其完整(空白已用横线标出,每行空白一般只需一条指令, 但采用功能相当的多条指令亦可),或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。  k5 S) E$ L, r: U) x; w
  对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调试中若发现整个程序中存在错误之处, 请加以修改。  |0 v0 ?' d! m! p/ H
  试题程序:
. ?2 \) a* _; F) D# z# r  EXTRN LOAD:FAR,SAVE:FAR) l/ s# k& K1 o
  N EQU 10
- @0 ~! d' J) C, I% E/ ~* D' ^  STAC SEGMENT STACK1 o* E* d* j9 E1 V2 P
  DB 128 DUP(?)  M7 r4 H0 u3 I' q
  STAC ENDS
2 M  f% X, T8 j0 G+ p, s  DATA SEGMENT6 |  j( o% w# U5 H0 E9 S8 D
  SOURCE DB N DUP(?)
. e4 E4 \, \) j" t$ Z  RESULT DB N DUP(0)2 ?3 o; f5 O( S3 _% |; Q
  NAME0 DB 'INPUT1.DAT',0) _( _, R3 p) X5 f
  NAME1 DB 'OUTPUT1.DAT',0
- x3 Y- h/ Q' d7 b$ I: m- d; Q- T  DATA ENDS
! P0 d% t8 o6 ~  CODE SEGMENT
$ |0 H. K" n0 k  ?8 r' c9 @  ASSUME CS:CODE,DS:DATA,SS:STAC9 y9 X! f! z) ^, f3 v
  START PROC FAR
. Q2 r3 K4 ?, C  m; Q* `/ c9 F  PUSH DS' P' U" G7 s8 _4 u/ |+ z  k
  XOR AX,AX5 l, ^1 N/ T% _( |0 j- d/ O$ t
  PUSH AX% v' R5 P  P7 e3 E6 d7 P" R
  MOV AX,DATA4 ?7 j( b+ J( G$ v/ U0 T
  MOV DS,AX  I* T9 C4 H9 m# X
  LEA DX,SOURCE ;数据区起始地址; n9 p( O' A, {9 F9 M6 R5 T
  LEA SI,NAME0 ;原始数据文件名
$ {. _8 b$ t! i' u6 i/ a: V( h- L$ i7 `# \  MOV CX,N*2 ;字节数
  Q* ^" @% e3 {: V1 o% `+ C  CALL LOAD ;从'INPUT1.DAT'中读取数据
5 {( U, D* i3 ?- Z. `  ;****BEGIN****. z9 Y5 K4 @3 h
  MOV DI,OFFSET RESULT5 {, Z5 s# Y! e+ f+ k, E4 J
  MOV CX,N7 ]- {5 p: A9 t0 @5 o
  MOV BX,005 I4 t& O' v: ]" \
  PRO: MOV AX,_______________5 L/ e7 h- Y$ v9 [: G
  MOV DX,AX) ]; |/ {% p! i6 E- \9 c: a" Z0 b, o
  AND _________,DH
& r1 q( l' o% z$ H" L, C. o6 Z/ f  ________ AH,AL
- P- B! s5 D! h+ a  MOV _________,DL
8 E5 r  |0 X. t8 O  ADD BX,2
3 c" ]- ^( o' W$ H( T9 m  ___________________________
% Q" @( Y: C# g& |: d  JNZ PRO
+ i+ F1 i0 X4 U& j% v$ w% t) Z  ;****END****
9 Z! ]. ~: h3 H/ J2 K  LEA DX,RESULT ;结果数据区首址
9 ]' D7 J$ q, u  LEA SI,NAME1 ;结果文件名! M* p9 B2 |5 R9 K/ I# o
  MOV CX,N*2 ;字节数
4 G. x: S* M1 k  CALL SAVE ;保存结果到文件
6 x! a0 z  Z3 V8 m+ b  RET
9 x* X6 w3 ?/ ]  b9 g  START ENDP, O/ p  O' R# u- s
  CODE ENDS
; @8 o5 ^6 @2 Z8 E  END START
回复

使用道具 举报

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

本版积分规则

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

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

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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