国家计算机等级考试三级PC技术上机试题解析与解答

需积分: 3 22 下载量 163 浏览量 更新于2024-07-31 收藏 1.03MB DOC 举报
"国家计算机等级考试三级PC技术上机真题,主要涉及计算机编程和数据处理,要求考生根据给定的题目要求,编写程序将内存中的有符号数组分成正数和负数两个部分,并计算各自数量,存储结果并保存到指定文件。题目提供了一部分程序框架,需要考生填充或重新编写BEGIN和END之间的代码,以实现所需功能。" 这篇资源是关于国家计算机等级考试三级PC技术的部分内容,特别是针对上机考试部分。这100题中的第一题是一道编程题,要求考生处理内存中的40字节有符号整数数组。具体任务包括: 1. **数据分离**:将数组分为正数和负数两部分。 2. **计数**:计算正数和负数的个数。 3. **存储结果**:将正数个数、正数数组、负数个数以及负数数组按特定顺序存放在RESULT指定的内存区域。 4. **输入输出**:原始数据从名为'INPUT1.DAT'的文件读取,处理后的数据需保存至'OUTPUT1.DAT'文件。 题目已经给出了一些基础框架,包括数据段定义、栈段定义以及一些外部过程调用,如`LOAD`用于读取文件数据,`SAVE`用于保存处理后的数据。考生需要在BEGIN和END之间填写或替换代码,确保程序能正确实现上述功能。程序需要经过汇编、链接,并生成可执行文件`PROG1.EXE`,最终运行该程序验证结果。 在解决这道题目时,考生可能需要考虑以下编程步骤: 1. 初始化DI和SI寄存器,分别指向SOURCE(原始数据)和RESULT(结果数据)的起始地址。 2. 使用CX寄存器记录数组的长度(N)。 3. 遍历数组,判断每个元素的正负,根据结果分别放入正数和负数数组。 4. 在遍历过程中,同时更新正数和负数的计数。 5. 将计数值分别写入RESULT的前两位。 6. 调用`SAVE`过程,将处理后的数据保存到'OUTPUT1.DAT'。 由于篇幅限制,具体实现代码没有给出,考生需要根据提供的上下文和已有的编程知识来完成这个任务。这个问题涉及到汇编语言编程,数据处理,文件操作,以及对内存管理和寄存器使用的理解,是计算机三级考试中常见的技能测试。