Уровень 21: Указатели

Задание

Добавьте Index Register (IX) для косвенной адресации. Реализуйте LDX, LDAX, STAX, INX в декодере.

Решение

Word-формат, два ROM, BusMUX. 1) BusConstant = 2 → PC.Inc. 2) ROM#1 → RAM.Addr. 3) IX подключен к Clock. 4) Данные из RAM идут на ALU8.B через BusMUX: RAM → BusMUX.A, ROM#1(операнд) → BusMUX.B, BusMUX.Q → ALU8.B. Sel пока не нужен (0=RAM). 5) Используйте Splitter + AND/OR/NOT для декодирования LDX, LDA[IX], STA[IX], INX.

Справка по ассемблеру →