【计算机等级考试三级含金量】计算机等级考试三级PC上级题精选6-10
【shitiku.jxxyjl.com--等级考试】
上机题六
以下内容为程序代码:
;*      请编制程序PROG1.ASM, 其功能是: 内存中连续存放着十六个
;*  12位无符号二进制数DB[11]DB[10]…DB[0],其存放格式均为
;*  DB[11] DB[10] DB[9] DB[8] DB[7] DB[6] DB[5] DB[4]
;*  │←─────── 低地址字节───────→│
;*  DB[3] DB[2] DB[1] DB[0]  0  0  0  0
;*  │←──── 高地址字节 ────→│
;*      请判别这十六个12位二进制数是否大于800H;若大于800H,则
;*  相应地在内存中存入01H;否则,存入00H。最后存放这十六个12位
;*  二进制数中大于800H的数的个数n(n用一个字节表示)。
;*      例如:
;*      内存中有 12H,30H,84H,50H,80H,00H,……
;*      结果为   00H,01H,00H,… (共十六个字节),后跟n
;*      部分程序已给出,其中原始数据由过程LOAD从文件INPUT1.DAT
;*  中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,
;*  由过程SAVE保存到OUTPUT1.DAT文件中。
;*      填空BEGIN和END之间已给出的源程序使其完整 (空白已用横线
;*  标出,每行空白一般只需一条指令,但采用功能相当的多条指令亦
;*  可), 或删除BEGIN和END之间原有的代码并自行编程来完成要求的
;*  功能。
;*      对程序必须进行汇编, 并与IO.OBJ链接产生PROG1.EXE执行文
;*  件,最终运行程序产生结果(无结果或结果不正确者均不得分)。调
;*  试中若发现整个程序中存在错误之处,请加以修改。
          EXTRN      LOAD:FAR,SAVE:FAR
N         EQU         16
STAC      SEGMENT   STACK
           DB          128  DUP (?)
STAC      ENDS
DATA     SEGMENT
SOURCE  DB           N*2 DUP(?)
RESULT  DB           N+1 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        CH,N
           MOV        CL,00H           ; 大于800H的数的个数n
           MOV        BX,0
           MOV        DX,0100H
           mov        di,offset result
           ;MOV        DI,_____________
PRO:       MOV        AH,[BX]
           MOV        AL,[BX+1]
           cmp        ax,8000h
           jbe        c_0
           ;CMP        AX,_________
           ;JBE        ___                 ; <=800H
           MOV        [DI],DH              ; >800H
           INC        CL
           INC        DI
           JMP        JUMP
C_0:       MOV        [DI],DL
           INC        DI
JUMP:      ADD        BX,2
           DEC        CH
           JNZ        PRO
           mov        [di],cl
           ;MOV        [DI],__
; ****  END  ****
           LEA        DX,RESULT    ; 结果数据区首址
           LEA        SI,NAME1     ; 结果文件名
           MOV        CX,N+1       ; 结果字节数
           CALL       SAVE         ; 保存结果到文件
         RET
START    ENDP
CODE     ENDS
END       START
input1.dat 内容如下:
FF F0 FF 00 F0 F0 0F F0 F0 00 0F 00 00 F0 00 00 00 50 05 00 50 00 0A A0 A0 A0 AA 00 AA A0 55 50
output1.dat 内容应当如下:
01 01 01 00 01 00 00 00 00 00 00 00 01 01 01 00 
07 
PC上机题之七
以下内容为程序代码:
;*      请编制程序PROG1.ASM, 其功能是: 内存中连续存放的二十个八
;*  位无符号数是一个自动抄表仪抄录的二十个用户某月的用水量(立方
;*  米),为了控制用水量,水费计算公式如下(X表示用水量; Y表示水费,
;*  单位为分):
;*        a).    Y= X*70       X<=5
;*        b).    Y= X*100      5<X<=20
;*        c).    Y= X*150      X>20
;*      例如:
;*        用水量(X):    04H,  10H,  18H,...
;*        水费( Y ):  0118H,0640H,0E10H,...
;*      试计算出这二十个用户应缴纳的水费, 结果用字(word)表示。
;*      部分程序已在PROG1.ASM中给出, 请填空BEGIN和END之间已给
;*  出的源程序使其完整(空白已用横线标出, 每行空白一般只需一条
;*  指令, 但功能相当的多条指令亦可)或删除BEGIN和END之间原有的
;*  代码并自行编写程序片段来完成要求的功能。
;*      原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内
;*  存单元中, 结果要求从RESULT开始存放, 由过程SAVE保存到文件
;*  OUTPUT1.DAT中。
;*      对程序必须进行汇编, 并与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     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        ; 字节数
           CALL       LOAD        ; 从"input1.dat"中读取数据
;  **** BEGIN ****
           LEA        SI,SOURCE
           LEA        DI,RESULT
           CLD
           MOV        CX,N
           MOV        BL,70
           MOV        BH,100
           MOV        DL,150
NEXT:      mov        al,[si]
           ;_________________
           CMP        AL,5
           ja         gt5
           mul        bl
           ;J__        GT5
           ;_________________
           JMP        STORE
GT5:       CMP        AL,20
           ja         gt20
           mul        bh
           ;J__        GT20
           ;_________________
           JMP        STORE
GT20:      mul        dl
           ;_________________
STORE:     MOV        [DI],AX
           inc        si
           add        di,2
           ;_________________
           ;_________________
           LOOP       NEXT
;  ****  END  ****
           LEA        DX,RESULT    ; 结果数据区首址
           LEA        SI,NAME1     ; 结果文件名起始地址
           MOV        CX,N*2       ; 字节数
           CALL       SAVE         ; 保存结果到"output1.dat"文件中
           RET
START      ENDP
CODE       ENDS
           END        START
input1.dat 文件内容如下:
05 03 0A 22 0C 03 04 05 19 0C 0B 04 03 11 10 01 15 83 0F 0A
output1.dat 内容应当如下:
5E 01 D2 00 E8 03 EC 13 B0 04 D2 00 18 01 5E 01 
A6 0E B0 04 4C 04 18 01 D2 00 A4 06 40 06 46 00 
4E 0C C2 4C DC 05 E8 03
上机题之八
以下内容为程序代码:
;*      请编制程序PROG1.ASM, 其功能是: 内存中连续存放着两个无符
;*  号字节数序列Ak和Bk(k=0,…,9), 求序列Ck,Ck为Ak和Bk异或运算
;*  的结果。 以字节的形式按C0,…,C9的顺序存放逻辑运算的结果。
;*      例如:
;*      序列Ak为00H,03H,07H,…;
;*      序列Bk为FFH,AAH,55H,…。
;*      结果Ck为FFH,A9H,52H,…。
;*      部分程序已给出,其中原始数据由过程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
           LEA        DX,SOURCE        ; 数据区起始地址
           LEA        SI,NAME0         ; 原始数据文件名
           MOV        CX,N*2           ; 字节数
           CALL       LOAD             ; 从"INPUT1.DAT"中读取数据
;  **** BEGIN ****             
           mov        si,offset source
           mov        di,offset result
           ;MOV       _____________
           ;MOV       __________
           MOV       BX,0
PRO:       mov       al,[bx+N]
           ;MOV       AL,___________
           XOR       AL,[BX]
           mov       [di],al
           ;MOV       ____________
           INC        DI
           inc        bx
           ;________________
           DEC        CX
           JNZ        PRO
;  ****  END  ****
           LEA        DX,RESULT         ; 结果数据区首址
           LEA        SI,NAME1          ; 结果文件名
           MOV        CX,N              ; 结果字节数
           CALL       SAVE              ; 保存结果到文件
         RET
START    ENDP
CODE     ENDS
END      START
input1.dat 内容如下:
00 03 07 0F 10 31 55 AA FF 80 FF AA 55 70 3F 58 55 83 08 00
output1.dat 内容应当如下:
FF A9 52 7F 2F 69 00 29 F7 80
上机题之九
以下内容为程序代码:
;*      请编制程序PROG1.ASM, 其功能是: 内存中连续存放着二十个
;*  ASCII字符,如果是大写字母A~Z之间的字符, 请把它们转换成相
;*  应的小写字符;若为其他字符,不作转换。
;*      例如:内存中有
;*        31H("1"),32H("2"),61H("a"),41H("A"),42H("B"), ...
;*      结果为   31H,32H,61H,61H(a),62H(b) ...
;*     部分程序已给出,其中原始数据由过程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              ; 从 "INPUT.DAT"中读取数据
;  **** BEGIN ****
           LEA        SI,SOURCE
           LEA        DI,RESULT
           MOV       CX,N
NEXT:      MOV       AL,[SI]
           CMP       AL,"A"
           jb        lower2
           ;JB         ____
           cmp       al,"Z"
           ;CMP       AL, ____
           ja        lower2
           ;J___        LOWER2
           add       al,20h
           ;_________________
LOWER2:    mov       [di],al
           ;MOV       [DI], ____
           inc       si
           ;____________________
           inc       di
           ;INC        ____
           loop      next
           ;____       NEXT
;  ****  END  ****
           LEA        DX,RESULT    ; 结果数据区首址
           LEA        SI,NAME1     ; 结果文件名
           MOV        CX,N         ; 结果字节数
           CALL       SAVE         ; 保存结果到文件
           RET
START    ENDP
CODE     ENDS
         END        START
input1.dat 内容如下:
62 64 63 45 75 68 40 37 DF 67 AC 6E 8B 65 6C 98 34 59 87 3D
output1.dat 内容应当如下:
62 64 63 65 75 68 40 37 DF 67 AC 6E 8B 65 6C 98 
34 79 87 3D
PC上机题之10
以下内容为程序代码:
;*      请编制程序PROG1.ASM, 其功能是: 内存中存放着20个数字0~9
;*  之间的ASCII字符(包括数字0和9的ASCII字符)或SP字符(20H),请将
;*  数字0~9之间的ASCII字符 (包括数字0和9的ASCII字符)转换为相应
;*  的八位二进制数, 并将SP字符转换为$字符(24H)。将按上述方法处
;*  理后得到的20个字节存入内存中。
;*      例如:
;*      内存中有 20H("SP"),30H("0"),31H("1"),31H("1"),
;*  31H("1"),20H("SP"),32H("2"),…,39H("9")(共20个ASCII字符)
;*      结果为   24H("$"),00H,01H,01H,01H,24H("$"),02H("2"),
;*  …,09H("9") (共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 ****     
           lea        si,source
           ;_______________
           MOV        DI,0
           mov        cx,N
           ;_______________
CHAN:      mov        al,[si]
           ;_________________
           SUB        AL,20H
           JZ         CHANGE
           sub        al,10h
           ;SUB        AL,___
           MOV        RESULT[DI],AL
           inc        di
           inc        si
           ;_____________
           ;_____________
           DEC        CX
           JZ         EXIT
           JMP        CHAN
CHANGE:    MOV        RESULT[DI],24H
           INC        DI
           INC        SI
           DEC        CX
           JZ         EXIT
           jmp        chan
           ;JMP        ____
EXIT:      NOP
;  ****  END  ****
           LEA        DX,RESULT          ; 结果数据区首址
           LEA        SI,NAME1           ; 结果文件名
           MOV        CX,N               ; 结果字节数
           CALL       SAVE               ; 保存结果到文件
           RET
START      ENDP
CODE       ENDS
           END        START
input1.dat 内容如下:
20 20 30 31 32 20 33 34 35 36 20 20 37 38 39 20 33 32 31 20
output1.dat 内容应当如下:
24 24 00 01 02 24 03 04 05 06 24 24 07 08 09 24 
03 02 01 24
相关试题
- 全国计算机等级考试三级难度_2002年全国计算机等级考试三级笔试样题(信息管理技术)
- 【2000年4月20日是什么星座】2000年4月 三级(B)笔试试卷
- 1999年11月|1999年 全国计算机等级考试 三级(A)笔试试卷
- 计算机等级考试三级含金量_计算机等级考试三级PC上级题汇总1-5
- 全国计算机等级考试三级难度|2002年全国计算机等级考试三级笔试样题(数据库技术)
- 2000年4月20日是什么星座_2000年4月 三级(A)笔试试卷
- [1999年4月20日是什么星座]1999年4月 全国计算机等级考试二级笔试试题 基础部分和BASIC语言程序设计
- [全国计算机等级考试三级难度]2002年全国计算机等级考试三级笔试样题(网络技术)
- 2000年9月9日农历是多少_2000年9月 二级笔试试题BASIC
- 1999年9月_1999年9月 全国计算机等级考试二级笔试试题 基础部分和PASCAL语言程序设计
- 
					    
					    2005年正月17_2005年9月17二级C笔试试题答案详细阅读  选择题01-05)CACDC 06-10)DAABB11-15)ACBBA 16-20)CCDAB21-25)DCABC 26-30)DDABD31-35)BCCBA 36-40)DCCAD41-45)ADBAC 46-50)DABAD填空题1 数据库系统阶段2 空间3... 
- 
					    
					    [计算机等级考试三级含金量]计算机等级考试三级PC上级题精选21-25详细阅读![[计算机等级考试三级含金量]计算机等级考试三级PC上级题精选21-25](https://shitiku.jxxyjl.com/statics/images/images_jx/nopic.gif)  上机题之21以下内容为程序代码:;* 请编制程序PROG1 ASM,其功能是:内存中连续存放着十个无符;* 号8位二进制数,现将此十个数转换成十个8位格雷码表示的数,结果;* 存入内存。其转换方法为格雷码的最高位g[7]与二进制数的最高位d[7];* 相同, 格雷码的其余七位g[k]... 
- 
					    
					    2006年二级建造师网上可查询吗|2006年二级VF笔试答案(含试题)详细阅读  visual foxpro数据库程序设计(考试时间90分钟,满分100分)一、选择题((1)~(35)每小题2分,共70分)下列各题a)、b)、c)、d)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1)数据的存储结构是指a) 存储在外存中的数据b) 数据... 
- 
					    
					    2005年九月三_2005年9月17三级网络技术笔试试题答案详细阅读  选择题:01-05)DCABD 06-10)BBDCA11-15)BCABD 16-20)CABAD21-26)ADBCC 26-30)BADCB31-35)CBDBD 36-40)CCBBA41-45)DDABA 46-50)BCCBD51-55)CDDCA 56-60)A... 
- 
					    
					    全国计算机等级考试二级c语言历年真题_2005年全国计算机等级考试二级C语言真题3详细阅读  第3页 (45)有以下程序point(char *p){ p+=3;}main(){ char b[4]={a,b,c,d},*p=b; point(p); printf(%c n,*p);}程序运行后的输出结果是 AA)aB)... 
- 
					    
					    [公共基础模拟题及答案]二级公共基础模拟题第三套试题详细阅读![[公共基础模拟题及答案]二级公共基础模拟题第三套试题](https://shitiku.jxxyjl.com/statics/images/images_jx/nopic.gif)  (1)栈和队列的共同特点是A)都是先进先出B)都是先进后出C)只允许在端点处插入和删除元素 D)没有共同点(2)已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是A)acbedB)decabC)deabcD)cedba(3)链表不具有的特点是A)不必事先估... 
- 
					    
					    2005年9月二十四午时|2005年9月二级VB笔试真正标准答案详细阅读  选择题【 1- 5】 CACDC 【 6-10】 DAABB 【11-15】 BCCDC 【16-20】 CABBA 【21-25】 DAADC 【26-30】 ADBAC 【31-35】 CCDAB 填空题【1】数据库系统 【2】空间... 
- 
					    
					    全国计算机等级考试二级c语言历年真题|2005年全国计算机等级考试二级C语言真题2详细阅读  第2页 (29)有以下程序main(){ int a[3][3],*p,i; p=&a[0][0]; for(i=0;i... 
- 
					    
					    [计算机等级考试一级考试题目]计算机等级考试一级B考试自测题详细阅读![[计算机等级考试一级考试题目]计算机等级考试一级B考试自测题](https://shitiku.jxxyjl.com/statics/images/images_jx/nopic.gif)  1 现代微型机中采用的主要元件是()。 A)电子管 B)晶体管 C)中、小规模集成电路 D)大规模、超大规模集成电路 正确答案:D 2 计算机之所以能按人们的意志自动进行工作,主要是因为采用了()。 A)二进制数制 B)高速电子元件 C)存储程序控制 D)程序设计语言 正确答案:C 3 下列... 
- 
					    
					    计算机等级考试三级含金量_计算机等级考试三级PC上级题精选11-15详细阅读  PC上机题之11以下内容为程序代码:;* 请编制程序PROG1 ASM,其功能是:内存中连续存放着二十个;* ASCII字符,如果是0~9或A~F之间的字符,请把它们转换成二进制;* 数;若为其他字符,不作转换。;* 例如:;* 内存中有;* 30H(... 
