194. Pha implícito

registrar PHA implícito.

Lección 194 de 356 · tests/chapter_01_cpu/test_194_PHA_implied.py

Requisito previo: el paso 193 añadió `pha. En este paso, modifica únicamente emulator/cpu/opcodes.py importando pha y añadiendo su entrada a OPCODE_TABLE`.

Por qué existe este paso

PHA obtiene su origen del registro A de la CPU, así que el opcode $48 no requiere modo de direccionamiento ni operando y puede despacharse directamente a `pha(cpu)`.

Implementación sugerida

from emulator.cpu.instructions import pha

OPCODE_TABLE = {
    # existing entries
    0x48: pha,
}

Invariantes: conserva las asignaciones existentes; asigna exactamente $48 al objeto de función `pha`; consume solo el byte de opcode; deja el comportamiento de la pila a la función del paso 193.

Concepto erróneo: el byte siguiente a $48 es el siguiente opcode, no un valor del acumulador que apilar.

Fuera de alcance: implementar `pha` es el paso 193. PLA empieza en el paso 195; el resto de asignaciones de instrucciones de pila corresponden a sus pasos numerados posteriores.

Ejecutar esta lección

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