📚 Common Misconceptions and Correction Methods in Year 12 WJEC Computer Science | WJEC 计算机科学 Year 12 常见误区与纠正方法
Many students find AS Computer Science challenging due to subtle conceptual errors that can cost marks. This article identifies ten common misconceptions in the Year 12 WJEC syllabus and provides clear corrections to help you avoid these pitfalls and deepen your understanding.
许多学生觉得 AS 计算机科学具有挑战性,因为一些细微的概念错误会导致失分。本文指出了 Year 12 WJEC 教学大纲中的十个常见误区,并提供了清晰的纠正方法,以帮助您避免这些陷阱并加深理解。
1. Misunderstanding Von Neumann Architecture | 对冯·诺依曼架构的误解
A frequently encountered error is believing that the processor fetches instructions from a separate memory unit than data. In fact, the Von Neumann architecture uses a single memory that holds both programs and data, all accessed through a shared system bus. This is why self-modifying code or buffer overflow attacks are possible – data can be mistaken for instructions.
一个常见的错误是认为处理器从与数据分离的内存单元中获取指令。实际上,冯·诺依曼架构使用单一存储器来保存程序和数据,所有内容都通过共享系统总线访问。这就是为什么自修改代码或缓冲区溢出攻击成为可能——数据可能被误认为是指令。
Correction: Memorise the key feature: stored program concept, where both instructions and data reside in the same main memory and are fetched using the same address/data buses. In contrast, Harvard architecture has separate memories.
纠正方法:记住关键特征:存储程序概念,即指令和数据驻留在同一主存储器中,并使用相同的地址/数据总线获取。相比之下,哈佛架构具有独立的存储器。
2. Confusing Lossy and Lossless Compression | 混淆有损和无损压缩
A misconception is that file size reduction always degrades quality. Lossless compression preserves all original data (e.g., run-length encoding for text, PNG images), while lossy compression discards some data to achieve higher compression rates, which may affect quality (e.g., JPEG, MP3). Students often apply lossy compression to executable files, which would corrupt them.
一个误区是认为文件大小缩减总会降低质量。无损压缩保留所有原始数据(例如文本的行程编码、PNG 图像),而有损压缩丢弃一些数据以实现更高的压缩率,这可能会影响质量(如 JPEG、MP3)。学生经常将损失压缩应用于可执行文件,这会损坏文件。
The table below summarises the key differences.
下表总结了关键区别。
| Feature | Lossless | Lossy |
|---|---|---|
| Data recovery | Original data fully restored | Some data permanently lost |
| Typical use | Text, source code, PNG | Images (JPEG), audio (MP3) |
| Compression ratio | Moderate | High |
Correction: Use the table above to remember distinctions. Lossless is suitable for text and programs; lossy for multimedia where some perceptual loss is acceptable. Never use lossy on executable code.
纠正方法:使用上表记住区别。无损适用于文本和程序;有损适用于多媒体,可接受一定的感知损失。切勿对可执行代码使用有损压缩。
3. Errors in Two's Complement Conversion | 二进制补码转换中的错误
A typical mistake when working with two' ng all bits and adding 1. For example, -6 in 8-bit: positive 6 = 00000110; flip bits → 11111001; add 1 → 11111010.
使用补码时一个典型错误是将负十进制数简单地写成正数的二进制并翻转最高有效位。正确的方法需要翻转所有位并加 1。例如,8 位 -6:正 6 = 00000110;翻转所有位 → 11111001;加 1 → 11111010。
Another misconception is that the most significant bit simply indicates sign 'with no weight'. In two's complement, the MSB has a negative weight. For 8-bit, the MSB weight is -128.
另一个误区是认为最高有效位仅表示符号而"没有权重"。在补码中,MSB 具有负权重。对于 8 位,MSB 权重为 -128。
Correction: Always use the flip+1 method and remember the MSB's weighted contribution: -2n-1 for an n-bit number. Practice with both positive and negative numbers to solidify the conversion steps.
纠正方法:始终使用翻转+1 方法,并记住 MSB 的加权贡献:对于 n 位数,为 -2n-1。练习正数和负数的转换以巩固步骤。
4. Trace Table Mistakes with Nested Loops | 嵌套循环跟踪表错误
riables. For instance, in a structure like FOR i = 1 TO 3, FOR j = 1 TO 2, the inner loop j runs completely from 1 to 2 for each value of i.
在完成嵌套 FOR 循环的跟踪表时,学生经常未按正确顺序更新循环变量,或遗漏重置内部循环变量。例如,在类似 FOR i = 1 TO 3,FOR j = 1 TO 2 的结构中,对于每个 i 值,内循环 j 都会完整地从 1 运行到 2。
Correction: Build the trace table systematically: after each increment of the outer loop, reinitialise the inner loop variable. Check each iteration explicitly, writing out all values step by step. A common exam technique is to add a column for each loop condition to verify when a loop terminates.
纠正方法:系统地构建跟踪表:外循环每次递增后,重新初始化内循环变量。明确检查每次迭代,逐步写出所有值。一个常见的考试技巧是为每个循环条件添加一列,以验证循环何时终止。
5. Stack vs Queue Behaviour | 栈与队列的行为对比
Misidentifying stack (LIFO – Last In, First Out) and queue (FIFO – First In, First Out) operations is common. A stack uses push and pop; a queue uses enqueue and dequeue. Students sometimes push to a queue or think that a stack allows access to the bottom element directly.
错误区分栈(LIFO – 后进先出)和队列(FIFO – 先进先出)的操作很常见。栈使用 push 和 pop;队列使用 enqueue 和 dequeue。学生有时会对队列进行 push 操作,或认为栈可以直接访问底部元素。
The table below clarifies their behaviour.
下表阐明了它们的操作。
| Operation | Stack | Queue |
|---|---|---|
| Insert | Push (top) | Enqueue (rear) |
| Remove | Pop (top) | Dequeue (front) |
| Order | LIFO | FIFO |
Correction: Use a simple memory aid: a stack is like a pile of plates (top access only), a queue is like a line at a ticket counter (front removal, rear addition). Always check the correct abstract data type methods and practice tracing code with stack/
Published by TutorHao | Year 12 Computer Science Revision Series | aleveler.com
更多咨询请联系16621398022(同微信)

或截图后用「扫一扫 → 相册」选择本图