╔═══════════════════════════════════════════════════════════╗ ║ ▒▒▒ ▒▒▒ ▒▒▒ ▒▒▒▒ ▒▒ ▒▒ ▒▒▒▒▒ ▒▒▒▒ ▒▒▒▒ ▒▒▒▒▒ ║ ║ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒▒ ▒▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ║ ║ ▒▒▒▒▒ ▒▒ ▒▒ ▒▒▒▒ ▒▒ ▒ ▒▒ ▒▒▒▒▒ ▒▒ ▒▒ ▒▒▒▒ ▒▒▒▒▒ ║ ║ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ║ ║ ▒▒ ▒▒ ▒▒▒ ▒▒▒ ▒▒▒▒ ▒▒ ▒▒ ▒▒▒▒▒ ▒▒ ▒▒ ▒▒▒▒ ▒▒ 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-го текста ].