📚 Pre-U Cambridge Computer Science: A Quick Guide to Key Terminology | Pre-U Cambridge 计算机:核心术语速记指南
Mastering the vocabulary of computer science is half the battle won. This guide breaks down the essential terms you are likely to encounter in the Cambridge Pre-U Computer Science course, pairing each with a clear definition and a memory-friendly explanation. Use it to reinforce your understanding and to ensure every technical conversation feels second nature.
掌握计算机科学的词汇是成功的一半。本指南将带您梳理 Cambridge Pre-U 计算机科学课程中最常见的核心术语,每个术语都配有清晰的定义和便于记忆的解释。用它来巩固理解,确保每一次技术交流都得心应手。
1. Abstraction and Data Representation | 抽象与数据表示
Abstraction means hiding unnecessary details to focus on the essential features of a problem. In data representation, we abstract the real world into bits — binary digits (0 or 1).
抽象意味着隐藏不必要的细节,专注于问题的核心特征。在数据表示中,我们将现实世界抽象为比特——即二进制位(0 或 1)。
A ‘nibble’ is a group of 4 bits, a ‘byte’ is 8 bits, and a ‘word’ is the natural unit of data for a processor (commonly 16, 32, or 64 bits). The hexadecimal system (base-16) uses digits 0–9 and letters A–F, making it a compact way to read binary values.
“半字节 (nibble)” 是 4 位比特的组合,“字节 (byte)” 是 8 位比特,“字 (word)” 则是处理器处理数据的自然单位(通常为 16、32 或 64 位)。十六进制系统(基数为 16)使用数字 0–9 和字母 A–F,是一种紧凑地阅读二进制值的方式。
Two’s complement is the standard method for representing signed integers in binary. The most significant bit acts as the sign bit, and negative numbers are obtained by inverting all bits of the positive value and adding 1. This elegantly simplifies addition circuits.
二进制补码 (two’s complement) 是表示有符号整数的标准方法。最高位充当符号位,负数由正数的所有位取反再加 1 得到。这样巧妙地简化了加法电路的设计。
2. Algorithmic Thinking and Pseudocode | 算法思维与伪代码
An algorithm is a step-by-step procedure for solving a problem, expressed in a finite sequence of well-defined instructions. It must terminate, be unambiguous, and be executable with the resources available.
算法 (algorithm) 是解决问题的分步过程,用一组有穷且明确定义的指令表达。它必须可终止、无歧义,并能在可用资源下执行。
Pseudocode bridges human language and programming syntax. It uses keywords like INPUT, OUTPUT, IF…THEN…ELSE…ENDIF, and WHILE…DO…ENDWHILE to describe logic without worrying about specific language rules. This is a core skill in Cambridge exams for planning solutions.
伪代码 (pseudocode) 是自然语言和编程语法之间的桥梁。它使用诸如 INPUT、OUTPUT、IF…THEN…ELSE…ENDIF 和 WHILE…DO…ENDWHILE 等关键词描述逻辑,而不必拘泥于特定语言的规则。这是剑桥考试中规划解决方案的核心技能。
An invariant is a condition that holds true before and after each iteration of a loop. Using invariants helps you reason about the correctness of an algorithm — a concept frequently tested in advanced Pre-U questions.
不变式 (invariant) 是在循环的每次迭代之前和之后都为真的条件。使用不变式有助于论证算法的正确性——这是 Pre-U 高级考题中经常考查的概念。
3. Complexity and Big O Notation | 复杂度与大O表示法
Time complexity describes how the running time of an algorithm grows relative to the input size n. The Big O notation expresses the upper bound of this growth. For example, O(1) means constant time, O(n) linear time, and O(n²) quadratic time.
时间复杂度 (time complexity) 描述算法的运行时间相对于输入规模 n 的增长情况。大O表示法 (Big O notation) 表达了这种增长的上界。例如,O(1) 表示常数时间,O(n) 表示线性时间,O(n²) 表示平方时间。
Space complexity similarly quantifies the extra memory an algorithm requires. A quick memory trick: ‘nested loops often imply O(n²)’ and ‘dividing the problem size by a constant each step often gives O(log n)’.
空间复杂度 (space complexity) 同样量化了算法所需的额外内存。一个简单的记忆窍门:“嵌套循环通常暗示 O(n²)”,“每一步将问题规模除以一个常数则通常得出 O(log n)”。
Other useful bounds include Omega notation (Ω) for the best-case lower bound and Theta notation (Θ) for a tight bound when the upper and lower bounds match. Cambridge Pre-U expects you to compare algorithms using these precise descriptors.
其他常用的表达还包括表示最佳情况下界的 Omega 符号 (Ω) 以及当上下界匹配时使用的 Theta 符号 (Θ)。Cambridge Pre-U 期望你能够使用这些精确的描述符来比较算法。
4. Core Data Structures | 核心数据结构
An array is a contiguous block of memory storing elements of the same type, accessed via an index. Its strength is constant-time access (O(1)), but insertion and deletion can be costly because elements may need to be shifted.
数组 (array) 是内存中连续的一块区域,存储相同类型的元素,通过索引访问。其优点是O(1)的常数时间存取,但插入和删除可能代价高昂,因为元素可能需要移动。
A linked list chains nodes together, where each node holds data and a pointer to the next node. This allows O(1) insertion at the head, but accessing the nth element takes O(n). Variations include doubly linked lists and circular linked lists.
链表 (linked list) 将节点串接在一起,每个节点包含数据和指向下一个节点的指针。这使得在头部插入时只需 O(1),但访问第 n 个元素需要 O(n)。常用的变体有双向链表和循环链表。
A stack is a Last-In-First-Out (LIFO) structure, like a pile of plates. It supports push and pop. A queue is First-In-First-Out (FIFO), like a line of people, with enqueue and dequeue. Think of a “stack of pancakes” versus a “queue at a bus stop” to recall their behaviour.
栈 (stack) 是后进先出 (LIFO) 的结构,就像一叠盘子,支持压栈 (push) 和弹栈 (pop)。队列 (queue) 是先进先出 (FIFO),就像排队的人群,支持入队 (enqueue) 和出队 (dequeue)。联想“一叠煎饼”与“公交站间隔排队”就能轻松记住它们的行为。
Binary trees consist of nodes with at most two children. A binary search tree (BST) organises data so that left child values are less than the parent, and right child values are greater, enabling O(log n) search efficiency when balanced.
二叉树 (binary tree) 由每个节点最多有两个子节点的结构组成。二叉搜索树 (BST) 组织数据时使得左子节点值小于父节点,右子节点值大于父节点,因而在平衡的理想情况下可以实现 O(log n) 的搜索效率。
5. Object-Oriented Programming (OOP) | 面向对象编程
A class is a blueprint defining the attributes and methods that its objects will have. An object is an instance of that class. This is the heart of OOP: “A class is the recipe, an object is the cake.”
类 (class) 是定义对象属性和方法的蓝图。对象 (object) 是该类的实例。这是面向对象编程的核心:“类是食谱,对象是蛋糕。”
Encapsulation bundles data and the methods that operate on that data within one unit, and restricts direct access to some of the object’s components. This is achieved with access modifiers such as private and public.
封装 (encapsulation) 将数据和操作数据的方法捆绑在一个单元内,并限制对对象某些组成部分的直接访问。这是通过 private 和 public 等访问修饰符实现的。
Inheritance allows a new class to adopt properties and methods from an existing class. The child class (subclass) can also add new features or override inherited ones. Polymorphism lets objects of different classes respond to the same method call in their own way, promoting flexible and reusable code.
继承 (inheritance) 允许新类沿用现有类的属性和方法。子类还可以添加新特性或重写继承的方法。多态 (polymorphism) 允许不同类的对象以自己的方式响应相同的方法调用,提升了代码的灵活性和可重用性。
6. Programming Paradigms | 编程范式
Beyond OOP, Pre-U candidates should recognise the imperative paradigm, where programs are sequences of commands that change state. Procedural programming (e.g., C, Pascal) is an extension breaking programs into functions or procedures.
除了面向对象,Pre-U 考生还应当认识命令式范式 (imperative paradigm),程序是一系列改变状态的命令。过程式编程(如 C、Pascal)是其延伸,将程序划分为函数或过程。
The functional paradigm treats computation as the evaluation of mathematical functions and avoids changing state or mutable data. Key concepts include pure functions, first-class functions, recursion, and higher-order functions such as map, filter, and reduce. Think of it as “everything is an expression, nothing is a side effect.”
函数式范式 (functional paradigm) 将计算视为数学函数的求值,并避免状态变化和可变数据。核心概念包括纯函数、一等函数、递归,以及像 map、filter 和 reduce 这样的高阶函数。可以将其记忆为“万物皆表达式,没有副作用”。
Declarative languages focus on describing what the problem is, not how to solve it. SQL and logic programming languages (like Prolog) fall into this category. In logic programming, you state facts and rules; the inference engine finds solutions by searching the rule base.
声明式语言 (declarative languages) 侧重于描述问题的“是什么”,而非“如何做”。SQL 和逻辑编程语言(如 Prolog)就属于这一范畴。在逻辑编程中,你声明事实和规则,推理引擎通过搜索规则库来寻找解决方案。
7. Operating Systems Essentials | 操作系统核心概念
A process is an instance of a program in execution. Each process has its own memory space, registers, and an execution state (new, ready, running, waiting, terminated). A thread is the smallest unit of execution within a process; threads of the same process share memory space.
进程 (process) 是正在执行的程序的实例。每个进程拥有自己的内存空间、寄存器组和执行状态(新建、就绪、运行、等待、终止)。线程 (thread) 是进程内最小的执行单元;同一进程的线程共享内存空间。
Scheduling is the OS component that decides which process gets the CPU. Common algorithms include First-Come First-Served (FCFS), Shortest Job First (SJF), Round Robin (RR), and priority-based scheduling. Remember “Round Robin is fair — each process gets a time slice.”
调度 (scheduling) 是决定哪个进程获得 CPU 的操作系统组件。常见算法有先来先服务 (FCFS)、最短作业优先 (SJF)、轮转调度 (RR) 和基于优先级的调度。记住“轮转调度很公平——每个进程都能获得时间片”。
Deadlock occurs when a set of processes are blocked, each waiting for a resource held by another process. The four Coffman conditions (mutual exclusion, hold and wait, no preemption, circular wait) must all hold for a deadlock to occur. Prevention means breaking at least one of these conditions.
死锁 (deadlock) 发生在一组进程全部阻塞,每个进程都在等待另一个进程持有的资源。产生死锁必须同时满足四个 Coffman 条件(互斥、持有并等待、不可抢占、循环等待)。预防死锁意味着破坏其中至少一个条件。
8. Computer Networks and Protocols | 计算机网络与协议
The OSI model (Open Systems Interconnection) partitions network communication into seven layers: Physical, Data Link, Network, Transport, Session, Presentation, and Application. A mnemonic: “Please Do Not Throw Sausage Pizza Away.”
OSI 模型 (Open Systems Interconnection) 将网络通信分为七层:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。记忆口诀:“Please Do Not Throw Sausage Pizza Away”。
The TCP/IP suite is a more practical four-layer model: Application, Transport, Internet, and Network Access. TCP (Transmission Control Protocol) guarantees reliable, ordered delivery via acknowledgments, while UDP (User Datagram Protocol) sends packets without guarantees, prioritising speed.
TCP/IP 协议族 是一个更实用的四层模型:应用层、传输层、互联网络层和网络接入层。TCP(传输控制协议)通过确认机制保证可靠、有序的交付,而 UDP(用户数据报协议)则无保证地发送数据包,以速度优先。
Protocols are agreed sets of rules for communication. Key ones include HTTP (hypertext transfer), SMTP (email sending), POP3/IMAP (email retrieval), FTP (file transfer), and DNS (name to IP resolution). DNS can be recalled as the “phonebook of the internet.”
协议 (protocols) 是通信的约定规则集。关键协议包括 HTTP(超文本传输)、SMTP(电子邮件发送)、POP3/IMAP(电子邮件接收)、FTP(文件传输)和 DNS(域名至 IP 解析)。DNS 可联想为“互联网的电话簿”。
9. Databases and Normalisation | 数据库与规范化
A relational database organises data into tables (relations) with rows (tuples) and columns (attributes). Each table has a primary key uniquely identifying each row, and foreign keys establish links between tables, maintaining referential integrity.
关系数据库 (relational database) 将数据组织成表(关系),由行(元组)和列(属性)构成。每个表都有一个主键 (primary key) 唯一标识每一行,外键 (foreign key) 则在表之间建立链接,保持参照完整性。
Normalisation is a systematic process to reduce data redundancy and avoid anomalies. The first three normal forms (1NF, 2NF, 3NF) are key for Pre-U: 1NF requires atomic values; 2NF requires no partial dependencies; 3NF eliminates transitive dependencies on non-prime attributes. A quick thought: “Each non-key attribute must describe the key, the whole key, and nothing but the key – so help me Codd.”
规范化 (normalisation) 是一种减少数据冗余并避免异常的体系化过程。前三范式 (1NF, 2NF, 3NF) 是 Pre-U 的重点:1NF 要求原子值;2NF 要求不存在部分依赖;3NF 消除对非主属性的传递依赖。简而言之:“每个非键属性必须描述键、整个键,且只描述键——此乃 Codd 之训。”
SQL (Structured Query Language) is used to interact with relational databases. Remember the core commands: SELECT for retrieval, INSERT to add rows, UPDATE to modify, DELETE to remove, and JOIN to combine tables based on a related column.
SQL(结构化查询语言) 用于与关系数据库交互。牢记核心命令:SELECT 用于检索,INSERT 用于添加行,UPDATE 用于修改,DELETE 用于删除,JOIN 则根据相关列合并表。
10. Theory of Computation and Automata | 计算理论与自动机
The theory of computation explores what can be computed and how efficiently. Automata are abstract machines used to model computation. A finite state machine (FSM) has a finite number of states, and transitions occur based on inputs. It can recognise regular languages.
计算理论探索什么可以计算以及计算的效率如何。自动机 (automata) 是用于建模计算的抽象机器。有限状态机 (FSM) 拥有有限数量的状态,并根据输入进行状态转换。它可以识别正则语言。
A pushdown automaton (PDA) extends an FSM with a stack, enabling it to recognise context-free languages. A Turing machine uses an infinite tape and a read/write head, and is powerful enough to model any algorithmic process — the foundation of the Church-Turing thesis.
下推自动机 (PDA) 通过增加一个栈扩展了有限状态机,使其能够识别上下文无关语言。图灵机 (Turing machine) 使用一条无限长的带和一个读写头,其能力足以模拟任何算法过程——这就是 Church-Turing 论题的基础。
A problem is computable if there exists a Turing machine that always halts with the correct answer. The Halting Problem is a famous example of an uncomputable problem: no general algorithm can determine whether an arbitrary program will halt. Remember the paradox: “If you could solve it, you could construct a contradiction.”
如果存在一台总能停机并给出正确答案的图灵机,则该问题是可计算的 (computable)。停机问题 (Halting Problem) 是不可计算问题的一个著名实例:不存在通用的算法能够判断任意程序是否会停机。记住这个悖论:“如果你能解决它,你就能构造出一个矛盾。”
Published by TutorHao | Computer Science Revision Series | aleveler.com
更多咨询请联系16621398022(同微信)
屏轩国际教育cambridge primary/secondary checkpoint, cat4, ukiset,ukcat,igcse,alevel,PAT,STEP,MAT, ibdp,ap,ssat,sat,sat2课程辅导,国外大学本科硕士研究生博士课程论文辅导Cancel reply