• 网络学院
  • IT资讯
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
计算机等级考试三级PC上级题精选31-40
  站点:
  • 首 页
  • 最新软件
  • 文章教程
  • 国内软件
  • 国外软件
  • 绿色软件
  • 源码下载
  • 字体下载
计算机等级考试三级PC上级题精选31-40
软件发布 计算机等级考试三级PC上级题精选31-40
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件 绿软下载
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回文章教程首页 >> 认证考试 >> 计算机等级考试 >> 计算机等级考试动态 >> 计算机等级考试三级PC上级题精选31-40

计算机等级考试三级PC上级题精选31-40

添加时间: 2007-5-25 5:43:06  作者: 计算机等级考试认证参考  阅读次数:28   来源: http://www.d9soft.com

       

上机题之31 
以下内容为程序代码: 

     请编制程序PROG1.ASM, 其功能是: 内存中连续存放着二十个十进制数的ASCII字符,把它们转换成压缩型(组合型)BCD码。 
例如:  
   内存中有  

    31H(’1’),32H(’2’),33H(’3’),34H(’4’) ...(共二十个字节)  
      结果为   21H,43H, ... (共十个字节)  
     部分程序已给出,其中原始数据由过程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(?) 
RESULT   DB          N DUP(0) 
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 
           MOV        ES,AX 
           LEA        DX,SOURCE        ; 数据区起始地址

           LEA        SI,NAME0         ; 原始数据文件名 
           MOV        CX,N*2           ; 字节数 
           CALL       LOAD             ; 从’INPUT.DAT’中读取数据 
;  **** BEGIN **** 
           LEA        SI,SOURCE 
           LEA        DI,RESULT 
           MOV        CX,N 
           CLD 
NEXT:      lodsb 
          ;LODS__ 
           and        al,0fh 
          ;AND        AL, ____ 
           MOV        BL,AL 
           lodsb 
          ;LODS__ 
           push       cx 
           mov        cl,4 
          ;PUSH       ____ 
          ;MOV        CL, ____ 
           SAL        AL,CL 
           pop        cx 
          ;POP         ____ 
           add        al,bl 
           stosb 
          ;ADD        AL, ____ 
          ;STOS__ 
           LOOP       NEXT 
           ;  ****  END  **** 
           LEA        DX,RESULT         ; 结果数据区首址

           LEA        SI,NAME1          ; 结果文件名 
           MOV        CX,N              ; 结果字节数 
           CALL       SAVE              ; 保存结果到文件 
           RET 
START    ENDP 
CODE     ENDS 
         END        START 

  


input1.dat 内容如下: 
30 39 32 39 34 35 30 35 39 33 38 35 36 39 34 32 33 31 36 37 
output1.dat 内容应当如下: 
90 92 54 50 39 58 96 24 13 76 

上机题之32 
以下内容为程序代码: 

     请编制程序PROG1.ASM, 其功能是:对内存中存放的四组带符号8位二进制数(每组由五个数组成,均不为零)进行处理。处理方法为:当每组中负数多于正数时,将组内正数变成负数(但绝对值不变,下同),组内负数不变。反之,将组内负数变成正数,组内正数不变。变换好的数按原序存放在内存中。 例如:  
     内存中有 FDH,FEH,02H,01H,03H,03H,01H,FFH,FEH,FDH,… (共四组20个数)  
     结果为   03H,02H,02H,01H,03H,FDH,FFH,FFH,FEH,FDH,…  (共20个数)  
      部分程序已给出, 其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放, 由过程SAVE保存到文件OUTPUT1.DAT中。  
     填空BEGIN和END之间已给出的源程序使其完整(空白已用横线标出,每行空白一般只需一条指令, 但采用功能相当的多条指令亦可), 
或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。  
   对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件, 最终运行程序产生结果(无结果或结果不正确者均不得分)。调试中 
若发现整个程序中存在错误之处, 请加以修改。 

           EXTRN      LOAD:FAR,SAVE:FAR 
N          EQU        20 
STAC       SEGMENT    STACK 
           DB         128 DUP (?) 
STAC       ENDS 
DATA       SEGMENT 
SOURCE     DB         N DUP(?)

RESULT     DB         N DUP(0) 
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,NAME0          ; 原始数据文件名 
           MOV        CX,N              ; 字节数 
           CALL       LOAD              ; 从 ’INPUT1.DAT’中读取数据 
;  **** BEGIN **** 
           MOV        SI,0 
           MOV        DI,0 
           mov        bx,4 
          ;MOV        BX,___ 
REPT1:     MOV        DX,0 
           MOV        CX,5 
CAMP:      MOV        AL,SOURCE[SI] 
           INC        SI 
           CMP        AL,0 
           jl         cont

           jmp        next 
          ;___        CONT 
          ;JMP        ____ 
CONT:      INC        DX 
NEXT:      LOOP       CAMP 
           SUB        SI,5 
           MOV        CX,5 
           CMP        DX,3 
           jge        neg1 
          ;___        NEG1 
           JMP        NEXT1 
NEG1:      MOV        AL,SOURCE[SI] 
           INC        SI 
           CMP        AL,0 
           JG         NEG2 
           JMP        NOTNEG 
NEG2:      NEG        AL 
NOTNEG:    MOV        RESULT[DI],AL 
           INC        DI 
           LOOP       NEG1 
           JMP        NEXT2 
NEXT1:     MOV        AL,SOURCE[SI] 
           INC        SI 
           cmp        al,0 
          ;CMP        AL,___ 
           JL         NEG3 
           jmp        notneg1 
          ;JMP        _______ 
NEG3:      NEG        AL

NOTNEG1:   MOV        RESULT[DI],AL 
           INC        DI 
           LOOP       NEXT1 
NEXT2:     DEC        BX 
           jz         exit 
           ;________________ 
           JMP        REPT1 
EXIT:      NOP 
;  ****  END  **** 
           LEA        DX,RESULT          ; 结果数据区首址 
           LEA        SI,NAME1           ; 结果文件名 
           MOV        CX,N               ; 结果字节数 
           CALL       SAVE               ; 保存结果到文件 
           RET 
START      ENDP 
CODE       ENDS 
           END        START 

  


input1.dat 内容如下: 
03 01 02 03 04 03 01 FF FE FD FD FE 02 01 03 FF FE FD FC FB 
output1.dat 内容应当如下: 
03 01 02 03 04 FD FF FF FE FD 03 02 02 01 03 FF  FE FD FC FB 

上机题之33 
以下内容为程序代码: 

    请编制程序PROG1.ASM, 其功能是: 在递增的有序字节数组中插入一个正整数,  并按指定的数组个数存入内存区中。假设数组元素均为正数。  
例如, 将02H插入下面的数组中:  
       01H,03H,04H,05H,.... 结果为    01H,02H,03H,04H,05H,....部分程序已经给出,其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中, 转换结果要求从RESULT开始存放, 由过程SAVE保存到文件OUTPUT1.DAT中。    填空BEGIN和END之间已经给出的一段源程序使其完整,填空处已经用横线标出, 每个空白一般只需要填一条指令或指令的一部分(指令助记符或操作数), 考生也可以填入功能相当的多条指令, 或删去BEGIN和END之间原有的代码并自行编程来完成要求的功能。对程序必须进行汇编,并与IO.OBJ链接产生PROG1.EXE执行文件, 最终运行程序产生结果(无结果或结果不正确者均不得分)。 

EXTRN LOAD:FAR,SAVE:FAR 
N       EQU     10 
DSEG    SEGMENT 
MIN     DB      -1 
SOURCE  DB      N DUP(?) 
X       EQU     2           ; 插入的数 
RESULT  DB      N DUP(0) 
NAME0   DB      ’INPUT1.DAT’,0 
NAME1   DB      ’OUTPUT1.DAT’,0 
DSEG    ENDS 

SSEG    SEGMENT STACK 
        DB      256 DUP (?) 
SSEG    ENDS 

CSEG    SEGMENT 
        ASSUME  CS:CSEG,SS:SSEG,DS:DSEG 
START PROC FAR 
PUSH DS 
XOR AX,AX 
PUSH AX 
        MOV     AX,DSEG 
MOV DS,AX 
        MOV     ES,AX 

LEA DX,SOURCE 
LEA SI,NAME0 
        MOV     CX,N 
        CALL    LOAD 
;   *** BEGIN *** 
        LEA     BX,SOURCE 
        MOV     SI,N-2 
        ADD     BX,SI 
        MOV     SI,0 
        MOV     AL,X 
LP:     cmp     al,[bx+si] 
       ;CMP     __,[BX+SI] 
        JGE     INS 
        MOV     DL,[BX+SI] 
        mov     [bx+si+1],dl 
        dec     bx 
       ;MOV     [BX+SI+1],___ 
       ;DEC     _____________ 
        JMP     LP 
INS:    mov     [bx+si+1],al 
       ;MOV     _________,AL

        CLD 
        LEA     SI,SOURCE 
        LEA     DI,RESULT 
        MOV     CX,N 
        rep     movsb 
       ;___     MOVSB 
;   *** END   *** 
        LEA     DX,RESULT 
        LEA     SI,NAME1 
        MOV     CX,N 
        CALL    SAVE 
        RET 
START ENDP 
CSEG    ENDS 
        END     START 

  


input1.dat 内容如下: 
01030405060708090A0B 
output1.dat 内容应当如下: 
01 02 03 04 05 06 07 08 09 0A 


上机题之34 
以下内容为程序代码: 

     请编制程序PROG1.ASM, 其功能是: 内存中连续存放着两个有符号字节数序列Ak和Bk(k=0,…,9),求序列Ck,Ck= Ak×Bk(Ck 
以有符号字的形式按C0,…,C9 的顺序连续存放)。  
      例如:  
      序列Ak为80H,C0H,81H,00H,…;  
      序列Bk为80H,C0H,81H,7FH,…。结果Ck为4000H,1000H,3F01H,0000H,…。部分程序已给出,其中原始数据由过程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(?)

RESULT   DW          N DUP(0) 
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,NAME0         ; 原始数据文件名 
           MOV       CX,N*2           ; 字节数 
           CALL      LOAD             ; 从 ’INPUT1.DAT’中读取数据 
;  **** BEGIN ****                                 
           mov       di,offset result 
           mov       bx,0 
          ;MOV       DI,_____________ 
          ;______________ 
           MOV       CX,N 
PRO:       mov       al,source[bx+N] 
           imul      source[bx] 
          ;MOV       AL,______________ 
          ;_____     SOURCE[BX] 
           MOV       [DI],AX

          JNZ         PRO 
;  ****  END  **** 
          LEA         DX,RESULT         ; 结果数据区首址 
          LEA         SI,NAME1          ; 结果文件名 
          MOV         CX,N*2            ; 结果字节数 
          CALL        SAVE              ; 保存结果到文件 
          RET 
START     ENDP 
CODE      ENDS 
END       START 

  


input1.dat 内容如下: 
80 C0 81 00 7F 40 3F 80 C0 81 80 C0 81 00 7F 40 3F 7F 7F 64  
output1.dat 内容应当如下: 
00 FF 80 FF 02 FF 00 00 FE 00 80 00 7E 00 FF FF  
3F 00 E5 FF

 

上下文章:

 

上一篇文章: 海南:2005年下半年NCRE报名截至8月10日 下一篇文章: 以二级C语言为例分析如何准备计算机考试

相关文章:

  • 确保计算机安全 个人用户责无旁贷
  • 计算机病毒中心:重视微软高危漏洞补丁程序
  • 微软第二代超级计算机版Windows发布在即
  • 无纸化考试流程轻松实现
  • 江民推出六大创新计算机反病毒技术

相关软件:

  • Winamp皮肤精选 2.0.081005 社区5C版
  • 执业药师考试宝典 V6.1 中药版
  • 执业药师考试宝典 V6.1 西药版
  • 报检员考试全程通 V6.5
  • 春浪考试系统ASP版 V3.66
  • 计算机等级考试训练模拟软件(三级数据库技术) V1.01

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

计算机等级考试分类导航

  • 计算机等级考试动态
  • 计算机一级考试
  • 计算机二级考试
  • 计算机三级考试
  • 计算机四级考试

本类经典文章推荐

  • 全国计算机等级考试三级网络技术(...
  • 三级网络技术复习笔记(第1-2章)
  • 三级笔试样题(PC技术)
  • 三级数据库技术样题
  • 三级网络技术复习笔记(5-7)
  • 三级网络技术复习笔记(第3-4章)
  • 笔试样题(网络技术)
  • 机考如何避免范围性错误
  • 2003年最新三级网络模拟题(2)
  • 全国计算机等级考试三级网络技术部...

计算机等级考试动态阅读排行

  • 9月17日计算机等级考试二级VF答案
  • 完整的计算机等级考试上机模拟系统
  • 计算机等级考试:VFp练习题1
  • 全国计算机等级考试三级网络技术(...
  • 历年操作系统论述题及答案(2)
  • 计算机等级考试:VFp练习题2
  • 计算机二级VB软件环境、考试时间、...
  • 2005年全国计算机等级考试全真模拟...
  • 三级网络技术复习笔记(第1-2章)
  • 全国计算机等级考试报名时间、级别...

计算机等级考试阅读总排行

  • 全国计算机等级考试一级模拟试题01
  • 全国计算机等级考试一级模拟试题10
  • 全国计算机等级考试一级模拟试题08
  • 全国计算机等级考试一级考试最新模...
  • 全国计算机等级考试一级模拟试题02
  • 全国计算机等级考试一级模拟试题07
  • 全国计算机等级考试上机考试应试技...
  • 一级(WINDOWS)试题解析-Word篇
  • 全国计算机等级考试一级模拟试题06
  • 全国计算机等级考试一级模拟试题03

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有