208. 指令 nop

实现 NOP 操作。

208 / 356 · tests/chapter_01_cpu/test_208_instruction_nop.py

本步骤存在的原因

在本步骤中,添加 `emulator/cpu/instructions.py::nop`。这个显式的空操作为该官方指令提供了一个可调用对象,同时将操作码取指相关事宜留给 CPU.step 处理。

建议实现

def nop(cpu: CPU):
    pass

不变式:直接调用不会改变任何寄存器、P 中的位、S、PC 或内存。常见的误解是在 `nop` 内部递增 PC;分派过程已经完成了操作码取指,而该操作本身不占用任何字节。

范围之外:在 `emulator/cpu/opcodes.py::OPCODE_TABLE` 中导入 NOP 并映射官方操作码 $EA 属于步骤 209。非官方的 NOP 变体、时序变化以及后续的追踪功能不在此引入。

运行本课

uv run pytest tests/chapter_01_cpu/test_208_instruction_nop.py -v