a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 69|回复: 0

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

[复制链接]
发表于 2012-7-31 20:55:16 | 显示全部楼层 |阅读模式
  请编制程序,其功能是:内存中连续存放着10个无符号8位格雷码表示的数,现将此十个数转换成十个8位二进制数,结果存入内存,其转换方法为二进制数的最高位D7与格雷码的最高位G7相同,二进制数的其余七位DK(k=6,…,0)分别为格雷码的位GK(k=6,…,0)与二进制数的位DK+1(k=6,…,0)异或的结果。
# e( [. P/ G9 C. c7 Z2 C  例如:
7 s8 g# j6 i/ g  内存中有 00H,03H,2BH,67H,0CH,15H,54H,02H,D8H,C7H
9 L4 |9 {" h/ H  结果为 00H,02H,32H,45H,08H,19H,67H,03H,90H,85H
5 _, j' r3 Z; w* O4 l  部分程序已给出, 其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。
, t- m  c3 Q0 D* l  填空BEGIN和END之间已给出的源程序使其完整(空白已用横线标出,每行空白一般只需一条指令, 但采用功能相当的多条指令亦可),或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。2 d0 e+ i9 d6 E$ i: `
  对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调试中若发现整个程序中存在错误之处, 请加以修改。/ p9 m  ]. u6 N- G' I
  试题程序:
, N4 N5 O( ?3 S5 d8 T" L  EXTRN LOAD:FAR,SAVE:FAR) J8 c6 W& C3 c* y7 s5 _) a; v
  N EQU 109 ~& h1 o4 Y! g% l
  STAC SEGMENT STACK
" x- g! Q2 N/ J4 `; d8 y5 d  DB 128 DUP(?)! d" V' c$ M; m; o
  STAC ENDS4 a: F, E6 g1 o( W, e
  DATA SEGMENT
1 b' M  a. w+ b/ C  SOURCE DB N DUP(?) ;顺序存放10个字节数
  V1 i# t" j" w. I" G/ W; E  RESULT DB N DUP(0) ;存放结果" J6 U" o/ q  i) Y8 c4 I' R
  NAME0 DB 'INPUT1.DAT',0
* T! y" q" ^6 J  Z. L1 J  NAME1 DB 'OUTPUT1.DAT',0
# k: [1 J8 C- L' ]% ?  DATA ENDS# V# C' n* N: d5 X) P2 S: Z
  CODE SEGMENT
0 A5 _+ {& U% F3 ~7 d- s  ASSUME CS:CODE,DS:DATA,SS:STAC% k' y2 S0 ?" C( \" C0 {
  START PROC FAR
# ~9 r8 b( m+ k2 H' D2 N& b/ r  PUSH DS
5 N& _: `9 U& K. y- K) _% ?9 b  XOR AX,AX
% w& `) B3 m0 X6 j, r  PUSH AX3 j" N( R' m$ Q, N; u  T
  MOV AX,DATA1 o3 A. B$ H/ f3 a! Q* t9 ~
  MOV DS,AX5 s( w6 F" V8 }
  LEA DX,SOURCE ;数据区起始地址/ j3 k) `% E) Q5 X
  LEA SI,NAME0 ;原始数据文件名0 `5 m4 u* A" `3 V4 v9 o# F+ C
  MOV CX,N ;字节数* x2 n1 ~9 k1 E* p) B
  CALL LOAD ;从'INPUT1.DAT'中读取数据
( C1 n( D; r8 @5 i* ]8 A9 W* }! B  ;****BEGIN****
' L- y3 q; z3 G& ^- A2 V0 A  LEA SI,SOURCE, m5 E) r" z9 _2 K" \9 P1 Q5 ?
  LEA DI,RESULT1 Q) A$ b5 ^/ ~1 v( [# L8 v' F
  MOV CX,10
% M5 @7 e- T+ `; y- R9 x5 @  e  AGN0: MOV AL,[SI]- S! j; Z" M: ~2 q! [0 x
  ________________
' p0 T0 r+ U* e  MOV CX,88 u1 w6 R; s; ^+ ~  u3 U* g0 [
  MOV BX,08 ~- A4 a$ k# `
  AGN1: MOV AH,01 u# C% l- P9 b6 u& u5 N* @
  SHL BL,1
! V8 h3 \! c. L! I# ^8 R  ____ AL,1
* u' f. |' y# ~  RCL AH,1
8 T! n5 H2 R; K  CMP AH,____
- v. J" O* {  f# r  ________________
5 J" O+ o1 k; r0 ^7 v  L$ j/ `' l7 ]  JMP NEXT! c& u7 V0 l, o
  SET_ONE:OR BL,01H
9 I: j& c: K7 L  NEXT: MOV ____,BL& ?% b4 Y; R! P  a. m, v
  ________________
4 J5 c4 R- m) q6 ?  LOOP AGN11 X! m2 Z' e1 P- f5 Q& g& E( c
  ________________0 ?. [- n! ~' ~0 j6 a. w
  MOV [DI],BL
, O+ o; _: I! z9 F  INC SI+ d+ Q, g4 c! L5 ^
  INC DI
! x' a+ U# ~  R- Z: C" e8 C  LOOP AGN0
! p* v/ q7 y& X3 a3 |; d2 {  ;****END****
& s. }4 |: N: g  LEA DX,RESULT ;结果数据区首址4 v0 W+ \! [, y: I
  LEA SI,NAME1 ;结果文件名
$ K9 W- u7 ?; G# [1 B: ?  MOV CX,N ;结果字节数% c- ^" o! ~4 X$ r
  CALL SAVE ;保存结果到文件6 `" i9 f: L- r' K$ L, _1 L9 B
  RET
% I! ~, `  u  L! B3 o2 N0 A% A' B' E  START ENDP% q0 m) f  }$ ]( t1 N
  CODE ENDS" m7 z8 U( j4 F$ A2 ~+ b/ n" z
  END START
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-8 01:24 , Processed in 0.185269 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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