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