首页 | 等级考试 | 水平考试 | 微软认证 | Oracle认证 | CISCO认证 | JAVA认证 | Linux认证 | NIT考试 | 专题 | 网站地图 | 会员中心
返回Q空间网首页 ·返回首页
·联系我们
·收藏本站
首页 | 等级考试 | 水平考试 | 微软认证 | Oracle认证 | CISCO认证 | JAVA认证 | Linux认证 | NIT考试
你的位置:主页>等级考试>模拟试题>三级>上机>文章内容
 
2007年9月全国三级PC技术上机编程题10道2
来源:计算机考试网 作者: 发布时间:2007-08-24收藏本文到QQ书签收藏本文到QQ书签收藏本文到百度搜藏 搜藏本文到百度搜藏


第二套 
  =============================================================================== 
  试题说明 :

        =============================================================================== 
   请编制程序PROG1.ASM, 其功能是: 内存中连续存放着二个有 
  符号字节序列A(k)和B(k)(k=0,…,9;下同),求序列C(k),C(k)=A(k)-B(k)。 
  C(k)以有符号字的形式按C(0),…,C(9)的顺序连续存放。 
   例如: 
   序列A(k)为30H,80H(-128D),7FH(127D),…; 
   序列B(k)为00H,7FH(127D),80H(-128D),…。 
   则结果C(k)为0030H,FF01H,00FFH,…。 
   部分程序已给出,其中原始数据由过程LOAD从文件INPUT1.DAT 
  中读入SOURCE开始的内存单元中,运算结果要求从RESULT开始存放, 
  由过程SAVE保存到文件OUTPUT1.DAT中。 
   填空BEGIN和END之间已给出的源程序使其完整 (空白已用横线 
  标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦 
  可), 或删除BEGIN和END之间原有的代码并自行编程来完成要求的 
  功能。 
   对程序必须进行汇编, 并与IO.OBJ链接产生PROG1.EXE执行文 
  件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调 
  试中若发现整个程序中存在错误之处,请加以修改。 
  =============================================================================== 
  程序 : 
  =============================================================================== 
   EXTRN LOAD:FAR,SAVE:FAR 
  N EQU 10 
  STAC SEGMENT STACK 
   DB 128 DUP (?) 
  STAC ENDS 
  DATA SEGMENT 
  SOURCE DB N*2 DUP(?) ; 顺序存放A0,…,A9,B0,…,B9 
  RESULT DW N DUP(0) ; 顺序存放C0,…,C9 
  NAME0 DB ’INPUT1.DAT’,0 
  NAME1 DB ’OUTPUT1.DAT’,0 
  DATA ENDS 
  CODE SEGMENT 
   ASSUME CS:CODE, DS:DATA, SS:STAC 
  START PROC FAR 
   PUSH DS 
   XOR AX,AX 
   PUSH AX 
   MOV AX,DATA 
   MOV DS,AX
   LEA DX,SOURCE ; 数据区起始地址 
   LEA SI, 原始数据文件名 
   MOV CX,N*2 ; 字节数 
   CALL LOAD ; 从 ’INPUT1.DAT’中读取数据 
  ; **** BEGIN **** 
   LEA DI,RESULT ; 结果从RESULT开始存放 
   MOV CX,N 
   MOV BX,0 
   MOV AH,0 
  PRO: MOV AL,SOURCE[BX] ; 序列Ak中的一个字节 
   MOV DH,AL 
   ___________________ ; Ck=Ak-Bk 
   JNO STAY ; 无溢出转STAY 
   ADD DH,0 ; 有溢出 
   ___ DEC1 ; Ak为正数(为一个正数减去一个负 
   ; 数,结果为负数的溢出情况)转DEC1 
   MOV AH,____ ; Ak为负数(为一个负数减去一个正 
   ; 数,结果为正数的溢出情况)将结果 
   ; 变为有符号字的形式(为负) 
   JMP _____ 
  DEC1: MOV AH,00H ; 将结果变为有符号字的形式(为正) 
   JMP _____ 
  STAY: ____ ; AL中数的符号扩展到AH,正的字节 
   ; 变成正的字,负的字节变成负的字 
  JUMP1: MOV [DI],AX 
   ADD DI,2 
   INC BX 
   DEC CX 
   JNZ PRO 
  ; **** END **** 
   LEA DX,RESULT ; 结果数据区首址 
   LEA SI,NAME1 ; 结果文件名 
   MOV CX,N*2 ; 结果字节数 
   CALL SAVE ; 保存结果到文件 
   RET 
  START ENDP 
  CODE ENDS 
  END START 
  =============================================================================== 
  所需数据 : 
  =============================================================================== 
  @2 input1.dat 001 
  80 C0 81 00 7F 40 3F 7F C0 81


上一篇:2007年9月全国三级PC技术上机编程题10道1   下一篇:2007年9月全国三级PC技术上机编程题10道3

[ 更多计算机考试资源请访问 计算机考试网 www.PCkao.com]
收藏到QQ书签  
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]
相关文章
·2007年9月全国三级PC技术上机编程题10道1
·2007年9月全国三级PC技术上机编程题10道3
·2007年9月备考三级PC(南开100题)五
·2007年9月全国三级PC技术上机编程题10道4
·2007年9月备考三级PC(南开100题)四
·2007年9月全国三级PC技术上机编程题10道5
·2007年9月备考三级PC(南开100题)三
·2007年9月全国三级PC技术上机编程题10道6
·2007年9月备考三级PC(南开100题)二
·2007年9月全国三级PC技术上机编程题10道7
·2007年9月备考三级PC(南开100题)一
·2007年9月全国三级PC技术上机编程题10道8
发表评论
要记得去论坛讨论,点击注册新会员) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
相关文章
·2007年9月全国三级PC技术上
·2007年9月全国三级PC技术上
·2007年9月备考三级PC(南开1
·2007年9月全国三级PC技术上
·2007年9月备考三级PC(南开1
·2007年9月全国三级PC技术上
热门文章
·07年9月全国计算机等级考试
·2007年9月备考三级PC(南开1
·2007年9月备考三级PC(南开1
·2007年9月备考三级PC(南开1
·2007年9月备考三级PC(南开1
·2007年9月备考三级PC(南开1

将计算机考试网设为首页 | 收藏计算机考试网 | 关于我们 | 联系我们 | 网站地图
Copyright © 2005 - 2006 计算机考试网资讯网 All rights reserved.
本站所有资源均来自网络 版权归原作者所有 欢迎任何建议、批评和鼓励