试题

计算机三级PC技术上机指导

时间:2022-12-03 02:33:07 试题 我要投稿
  • 相关推荐

2016年计算机三级PC技术上机指导

  编制程序题

  这种题型是根据考题要求,在BEGIN和END区间自行编制程序,然后进行汇编、连接,并运行程序,最后得到正确结果。下面是一个编制程序的例子,题目要求是:

  内存中连续存放着二十个字(WORD),对每个字逻辑左移,使其最高位为1,其中值为零的不变。例如:

  内存中有 29C1H(0010100111000001B),0000H,134BH,...

  结果为 A704H(1010011100000100B),0000H,9A58H,...

  部分程序已给出,其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中,运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。

  下面是程序清单,其中BEGIN和END之间的程序段由考生编写。

  ;PROG1.ASM

  EXTRN LOAD:FAR,SAVE:FAR

  N EQU 20 ;需输入的字节数

  DSEG SEGMENT ;数据段

  SOURCE DW N DUP(?) ;存放原始数据

  RESULT DW N DUP(0) ;存放运算结果

  NAME0 DB 'INPUT1.DAT',0 ;输入文件名

  NAME1 DB 'OUTPUT1.DAT',0 ;输出文件名

  DSEG ENDS

  SSEG SEGMENT STACK ;堆栈段

  DB 128 DUP (?)

  SSEG ENDS

  CSEG SEGMENT ;代码段

  ASSUME CS:CSEG,DS:DSEG,SS:SSEG

  START PROC FAR

  PUSH DS

  XOR AX,AX

  PUSH AX

  MOV AX,DSEG

  MOV DS,AX

  LEA DX,SOURCE ;原始数据区首址送DX

  LEA SI,NAME0 ;输入文件名首址送SI

  MOV CX,2*N ;输入字节数送CX

  CALL LOAD ;从INPUT1.DAT中读取数据

  ; **** BEGIN ****

  LEA SI,SOURCE ;原始数据首地址送SI

  MOV DI,OFFSET RESULT ;结果数据首地址送DI

  MOV CX,N ;字节数送CX

  NEXT: MOV AX,[SI] ;取一个字数据

  CMP AX,0 ;是0吗?

  JE SKIP ;是,跳过这一个字

  LOOP1: TEST AX,8000H ;否,最高位是1吗?

  JNE SKIP ;是,跳过这一个字

  SHL AX,1 ;否,左移一位

  JMP LOOP1 ;继续测试最高位是否为1

  SKIP: MOV [DI],AX ;保存变换结果于RESULT中

  ADD SI,2 ;修改原始数据区指针

  ADD DI,2 ;修改结果数据区指针

  LOOP NEXT ;继续检查下一个字数据

  ; **** END ****

  LEA DX,RESULT ; 结果数据区首址送DX

  LEA SI,NAME1 ; 结果文件名首址送SI

  MOV CX,N*2 ; 结果字节数送CX

  CALL SAVE ; 保存结果到OUTPUT1.DAT

  RET

  START ENDP

  CSEG ENDS

  END START

【计算机三级PC技术上机指导】相关文章:

计算机三级《PC技术》考试要点:输入设备05-24

2016年计算机三级上机试题03-25

全国计算机一级B考试上机考试指导08-08

全国计算机等级考试一级WPS上机考试指导05-06

计算机三级习题:IP地址规划设计技术06-25

计算机等三级考试《网络技术》考点:信息安全技术概述06-08

计算机三级网络技术Windows操作题03-21

计算机三级软件测试技术多选题练习11-17

计算机三级考试《数据库技术》试题及答案11-27

计算机三级《信息安全技术》考试题及答案05-27