1/26
基于 AS 计算机科学教材词汇表与课程标准生成的练习卡片,系统涵盖信息表示、网络通信、硬件架构、操作系统、安全完整性、数据库、算法与程序设计(涵盖局部与全局变量、关系运算、布尔运算等考点)。
在编程中,局部变量(Local variable)与全局变量(Global variable)有什么主要区别?
局部变量仅在其被声明的特定模块、过程或函数(作用域)内部可被访问与使用,其生命周期随该子程序的执行结束而结束;全局变量在整个程序的所有模块中均可被访问和修改,在程序执行的整个生命周期中都存在并占用存储空间。
在编程语言中,常见的六种关系运算(Relational operations)分别是什么?
六种关系运算包括:等于(Equal to,如 = 或 ==)、不等于(Not equal to,如 = 或 <>)、小于(Less than,<)、大于(Greater than,>)、小于或等于(Less than or equal to,≤ 或 <=\text{})、大于或等于(Greater than or equal to,≥ 或 >=$$)。它们用于比较两个操作数并返回布尔值。
在编程语言中,NOT、AND、OR 和 XOR 四种布尔逻辑运算(Boolean operations)的规则分别是什么?
① NOT(非):单输入运算,输入为 1 时输出 0,输入为 0 时输出 1;② AND(与):当且仅当所有输入均为 1 时,输出才为 1;③ OR(或):只要至少有一个输入为 1,输出就为 1;④ XOR(异或):当输入相异(一个为 1、一个为 0)时输出为 1,输入相同(全为 0 或全为 1)时输出为 0。
什么是位图图像(Bit-map image)与矢量图形(Vector graphics)?二者有何根本区别?
位图图像是由像素(Pixels)矩阵构成的图像,其清晰度受分辨率与位深度影响,放大时会出现像素化(Pixelated)失真;矢量图形使用二维坐标点、直线、曲线及几何属性来描述图像,任意缩放都不会损失画质,且文件体积通常更小。
图像分辨率(Image resolution)与颜色深度(Colour depth)的定义分别是什么?
图像分辨率指构成一幅图像的像素总数(如 4096×3192=13074432 个像素);颜色深度(也称位深度)指用于表示单个像素中颜色所分配的二进制位数,位数越多,可表示的颜色越丰富、质量越高。
有损文件压缩(Lossy compression)与无损文件压缩(Lossless compression)的核心区别是什么?
有损压缩通过永久删除人眼或人耳不易察觉的次要数据来大幅减小文件体积,解压缩后无法完全还原原始细节(如 MP3、JPEG);无损压缩在缩减体积的同时保留所有原始数据(如 RLE 算法),解压缩后能够精确还原原始文件。
计算机中如何通过二进制补码(Two's complement)表示一个负数?
首先写出对应正数的二进制表示,接着将每一个二进制位反转(即按位取反,0 变为 1,1 变为 0,得到一的补码),最后在最右侧最低位加 1(即 +1)。
网络通信中,电路交换(Circuit switching)与分组交换(Packet switching)有何区别?
电路交换在通信期间全程维持一条专用的物理连接通路(如传统公共交换电话网 PSTN);分组交换不使用专用线路,而是将数据分割成多个独立的数据包(Packets)按需路由传输,到达目的地后再重新组装(如 VoIP 和互联网)。
瘦客户端(Thin client)与胖客户端(Thick client)在网络架构中有何不同?
瘦客户端必须接入网络/互联网才能工作,主要依赖远程中心服务器进行数据处理与存储;胖客户端自身拥有独立的操作系统、处理器和存储设备,既能在线工作也能离线独立执行数据处理。
集线器(Hub)与交换机(Switch)在局域网内分发数据包时有何不同?
集线器(Hub)将接收到的任意数据包广播转发给局域网内的所有相连设备,安全性低且浪费带宽;交换机(Switch)能够读取数据包的目标硬件地址(如 MAC 地址),仅将数据包定向转发给指定的单一目标设备。
动态RAM(DRAM)与静态RAM(SRAM)在结构与工作机制上有何区别?
DRAM 由微小的电容和晶体管构成,电容电荷会逐渐漏失,必须每隔约 15μs 恒定刷新(Refresh)以维持数据;SRAM 由触发器(Flip-flops)构成,只要供电就无需刷新,存取速度远高于 DRAM,常用于处理器的内部高速缓存(Memory cache)。
控制系统中的传感器(Sensor)与执行器(Actuator)分别具有什么功能?
传感器是输入设备,用于采集周围环境的物理量(如温度、光照、压力等)并通常由 ADC 转换成数字数据供处理器分析;执行器是机电输出设备(如继电器、螺线管、电机等),用于接收计算机输出信号以执行物理操作(如开阀、转动马达)。
电容式触摸屏(Capacitive)与电阻式触摸屏(Resistive)的工作机制有何差异?
电容式触摸屏由多层玻璃构成电容电场,裸指触摸时会改变电场电流,进而计算触控坐标;电阻式触摸屏由柔性顶层与基层组成,手指或触控笔施压使两层电路接触接通,从而检测触摸位置。
CPU 架构中程序计数器(PC)与当前指令寄存器(CIR)各自承担什么任务?
程序计数器(Program Counter, PC)用于保存当前正在执行或下一条将要被读取执行的指令所在的内存地址;当前指令寄存器(Current Instruction Register, CIR)用于保存当前刚从内存取出、正在被解码或执行的指令本身。
在汇编语言中,直接寻址(Direct addressing)与间接寻址(Indirect addressing)有何不同?
直接寻址(也称绝对寻址)中指令的操作数直接就是存放目标数据的内存单元地址;间接寻址中指令操作数所指向的内存单元中存放的是另一个内存地址(指针),通过该指针地址才能获取目标数据。
处理器的逻辑移位(Logical shift)、算术移位(Arithmetic shift)与循环移位(Cyclic shift)有何区别?
① 逻辑移位:移出寄存器的位被丢弃,空出的位补 0;② 算术移位:移位时保留数值的符号位(最高位)不变,常用于带符号数的乘除运算;③ 循环移位:不会丢失任何位,从一端移出的位会循环回填到另一端空出的位置。
操作系统内存管理中,分页(Paging)与分段(Segmentation)的主要区别是什么?
分页是将物理内存和逻辑内存划分成固定大小(Fixed-size)的内存块(页面与页框);分段则是根据程序的逻辑结构(如数组、模块、过程)将内存划分为大小不固定的逻辑块(Segments)。
编译器(Compiler)与解释器(Interpreter)翻译高级语言程序的方式有何不同?
编译器将整个高级语言源程序一次性翻译为独立的机器代码或中间代码(目标代码),生成可执行文件后可脱离编译器独立高效运行;解释器逐行分析并执行高级语言程序,每次运行程序都必须重新翻译,不会产生独立的目标代码。
数据安全(Data security)、数据隐私(Data privacy)与数据完整性(Data integrity)的含义分别是什么?
① 数据安全:防止数据遭到未授权访问并在丢失或损坏时能够恢复的方法与措施;② 数据隐私:保护个人或组织机密信息不被未授权方非法查看或泄露的权利;③ 数据完整性:确保数据在录入、传输和存储过程中的准确性(Accuracy)、完整性(Completeness)与一致性(Consistency)。
数据验证(Validation)与数据校验(Verification)的核心区别是什么?
验证(Validation)是检查录入的数据是否合理(Reasonable)且符合既定输入规则(如范围检查、长度检查、格式检查),但不能保证数据事实上的真实正确;校验(Verification)是检查数据在转录或传输前后是否准确无误、未遭篡改(如双重输入比对、奇偶校验、校验和)。
开源软件(Open source software)与专有软件(Proprietary software)在授权上有何本质区别?
开源软件提供源代码,允许并鼓励用户自由运行、查看、修改并与他人协作重新分发;专有软件(闭源软件)受严格版权法保护,不提供源代码,用户仅购买单机或多用户的使用许可,严禁擅自复制、反编译或修改代码。
关系数据库中的主键(Primary key)与外键(Foreign key)分别指什么?
主键是能够唯一标识数据库表中每一条记录(元组)的一个或一组属性,其值不可重复且非空;外键是当前表中的一个字段,它引用并对应另一个表中的主键,用于建立两表间的关联并维持参照完整性(Referential integrity)。
数据库规范化(Normalisation)的目的是什么?第一范式(1NF)与第二范式(2NF)分别要求什么?
规范化的目的是组织数据表以最大限度减少数据冗余(Data redundancy)并防止更新/删除异常。1NF 要求表中所有属性均为不可再分的原子值,且不存在重复组;2NF 在满足 1NF 的基础上,消除所有非键属性对复合主键的部分函数依赖(所有非键属性必须完全依赖整个主键)。
计算思维(Computational thinking)中的“抽象(Abstraction)”与“分解(Decomposition)”指什么?
抽象指在建立问题模型时提取解决问题所必需的核心信息,同时过滤和忽略无关细节的过程;分解指将一个复杂的综合性问题拆解成若干更小、更易单独分析与实现的子任务或模块的过程。
作为抽象数据类型(ADT),栈(Stack)与队列(Queue)遵循的操作原则有何区别?
栈遵循后进先出(LIFO,Last In First Out)原则,数据的添加(Push)和移除(Pop)均发生在同一端(栈顶);队列遵循先进先出(FIFO,First In First Out)原则,数据从队尾(Rear)添加(Enqueue),从队首(Front)移除(Dequeue)。
软件测试中的正常测试数据(Normal)、边界/极端测试数据(Boundary/Extreme)与异常测试数据(Abnormal)分别是什么?
正常数据是处于合法规则范围内的典型有效数据,程序应正常接受;边界/极端数据是刚好处于程序接受范围边界临界点上的数据(以及刚刚超出边界的数值);异常数据是完全超出合法取值范围或类型格式不符合要求的数据,程序应当拒绝并给出错误提示。
白盒测试(White-box testing)与黑盒测试(Black-box testing)的测试方法有何不同?
白盒测试深入程序内部源代码与架构,系统测试模块内每一条逻辑执行路径与结构是否正确;黑盒测试不关注内部代码逻辑,仅依据功能需求规范对模块的输入与输出结果进行验证测试。