Программирование - курс изучения ассемблера от Wlodek Black, продолжение.
╔═══════════════════════════════════════════════════════════╗
║ ▒▒▒ ▒▒▒ ▒▒▒ ▒▒▒▒ ▒▒ ▒▒ ▒▒▒▒▒ ▒▒▒▒ ▒▒▒▒ ▒▒▒▒▒ ║
║ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒▒ ▒▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ║
║ ▒▒▒▒▒ ▒▒ ▒▒ ▒▒▒▒ ▒▒ ▒ ▒▒ ▒▒▒▒▒ ▒▒ ▒▒ ▒▒▒▒ ▒▒▒▒▒ ║
║ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ║
║ ▒▒ ▒▒ ▒▒▒ ▒▒▒ ▒▒▒▒ ▒▒ ▒▒ ▒▒▒▒▒ ▒▒ ▒▒ ▒▒▒▒ ▒▒ Z80 ║
╚═══════════════════════════════════════════════════════════╝
(Продолжение).
(C) WLODEK BLACK
00Bh. ГРУППА КОМАНД ДЛЯ РАБОТЫ С ОТДЕЛЬНЫМИ БИТАМИ.
В эту группу входят две разновидности команд для изменения со-
стояния отдельных разрядов и одна подгруппа команд для анализа
состояния битов.
SET - установить бит в 1;
RES - сбросить бит в 0;
BIT - выяснить состояние бита.
Способы адресации - A,B,C,D,E,H,L,(HL),(IX+nn),(IY+nn).
Полная запись команды образуется из мнемоники, номера бита и ад-
реса операнда:
SET 0,E
RES 7,(HL)
BIT 1,(IX+1).
Команда SET устанавливает соответствующий бит в 1, команда RES -
сбрасывает в 0. Команды SET и RES не влияют на флаги.Применение
команд установки и сброса бита практикуется при программирова-
нии внешних устройств, включенных как ячейки памяти; в процеду-
рах коррекции данных, например, при перекодировании строчных
букв в прописные; в алгоритмах расчетов и так далее.
Команда BIT заносит инверсию указанного в команде бита в приз-
нак нуля Z, после чего тот можно проконтролировать с помощью
команд условного перехода. Почему заносится инверсия бита, а не
прямое значение? Вспомним, что установленный флаг нуля Z=1 гово-
рит о том, что истинно условие р а в е н с т в а нулю.
Если бит равен 0, то во флаг будет занесена 1, то есть сформиро-
вано условие равенства нулю. Инвертирование бита введено для
удобства программирования.
Когда мы пишем "JR Z,..." после "BIT...", мы подразумеваем раве-
нство нулю самого проверяемого бита. Конечно, это удобно.
Команда BIT также поддерживает все вышеперечисленные способы ад-
ресации.
Помимо флага Z, команда BIT влияет и на флаги P/V и S, но это
влияние неопределенно и использовано быть не может.
BIT 2,L
BIT 0,(HL)
BIT 7,(IX+0).
[ Конец 7-го текста ].
Другие статьи номера:
|
|
|
|
|
|
Программирование - курс изучения ассемблера от Wlodek Black, продолжение.
|
|
|
|
|
|
|
|
|
|
|