209. Nop implícito

conectar el opcode implícito oficial NOP $EA.

Lección 209 de 356 · tests/chapter_01_cpu/test_209_NOP_implied.py

Por qué existe este paso

En este paso, actualiza la importación de instrucciones y `OPCODE_TABLE de emulator/cpu/opcodes.py; emulator/cpu/instructions.py::nop` ya existe desde el paso 208. Este mapeo permite que CPU.step ejecute relleno en programas reales.

Implementación sugerida

from emulator.cpu.instructions import nop  # add to the existing import

OPCODE_TABLE = {
    # existing entries
    0xEA: nop,
}

Invariante: $EA ocupa un byte, así que un paso desde $8000 termina en $8001 únicamente porque CPU.step obtuvo el opcode; los registros, S, P y la memoria permanecen sin cambios. El error conceptual habitual es incrementar PC en `nop` u obtener un operando fantasma.

Fuera de alcance: los opcodes NOP no oficiales multibyte y los cambios de temporización corresponden a pasos posteriores. La verificación de la CPU con múltiples instrucciones corresponde al paso 210.

Ejecutar esta lección

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