page24
которые по действию аналогичны NOP, т.к. фактического переноса данных не происходит, и
флаги не изменяются.
Источником переносимых данных может быть константа, непосредственно представленная
в команде сразу за кодом операции. Команда в этом случае выглядит так:
LD r,n
Как источником, так и приёмником может служить память. Это дает три типа команд:
LD r,(HL)
LD (HL),r
LD (HL),n
Память не может быть одновременно и источником, и приёмником пересылаемых данных;
пересылка всегда происходит через ЦП.
С помощью управляющего слова DD либо FD предоставляется возможность использовать
команды с индексным способом адресации. В этих командах за кодом операции следует смещение
d.
LD r,(IX+d)
LD r,(IY+d)
LD (IX+d),r
LD (IY+d),r
LD (IX+d),n
LD (IY+d),n
Эти команды не влияют на состояние флагов.
В следующих командах данные пересылаются между аккумулятором и ячейкой памяти,
адресуемой абсолютно – (nn), либо косвенно через регистровую пару:
LD A,(BC)
LD A,(DE)
LD A,(nn)
LD (BC),A
LD (DE),A
LD (nn),A
Флаги также остаются без изменений.
Регистры
I
и
R
могут
использоваться
как
источник
или
приёмник
в
сочетании
с
аккумулятором:
LD A,I
LD A,R
LD I,A
LD R,A
Команды LD A,I и LD A,R в отличим от всех остальных команд загрузки оказывают
влияние на флаги:
Н ← 0
N ← 0
P/V ← IFF2 (триггер разрешения /запрещения прерываний)
В сумке группа 8-битных команд загрузки содержит 104 различных кода.
16 битовые команды загрузки. Команды этой группы представлены в таблице 5.1.2. В них
возможна регистровая адресация и косвенная через указатель стека. Сюда же входят команды
пересылки
в
стек
и
извлечения
из
стека,
их
мнемонические
обозначения
PUSH
и
POP
соответственно. Отличие их от обычных команд загрузки состоит в том, что указатель стека
автоматически уменьшается или увеличивается, когда байт "заталкивается" в стек или извлекается
из стека. По действию команды PUSH и POP взаимно обратные. Это в равной степени откосится и
к последовательности обработки байтов (см. таблицу 5.3): при PUSH сначала обрабатывается
старший байт, при POP - младший.
При всех 16-битовых командах загрузки, за исключением POP AF не происходит изменения
флагов
16-битовые
команды
обмена.
Эта
группа
содержит
6
команд,
которые
изображены
в
таблице 5.1.8. Мнемоническое обозначение EX происходит от слова Exchange (обмен).