Урок 207 из 356 · tests/chapter_01_cpu/test_207_flag_control_implied_opcodes.py
Зачем нужен этот шаг
На этом шаге обновите импорт инструкций и `OPCODE_TABLE в emulator/cpu/opcodes.py. Функции из шага 206 становятся исполняемыми через emulator/cpu/cpu.py::CPU.step`.
Инвариант: каждое отображение диспетчеризует напрямую в операцию с одним аргументом; каждая инструкция занимает один байт, поэтому одна лишь выборка опкода продвигает PC к следующему байту, и меняется только целевой флаг. Распространённое заблуждение — добавить режим адресации, потребляющий операнд, либо перепутать местами пары опкодов установки/сброса.
Вне рамок: NOP и опкод $EA относятся к шагам 208-209, а семантика доставки прерываний — это более позднее поведение.
Запустить этот урок
uv run pytest tests/chapter_01_cpu/test_207_flag_control_implied_opcodes.py -v