19
2.2 Регистры микропроцессора Z80
С точки зрения создания управляющей программы для микропроцессорной
системы, построеной на базе МП Z80, наибольший интерес представляет группа
регистров. Регистром называют элемент внутренней памяти МП, предназначен-
ный для хранения данных. Регистры принято подразделять на регистры общего
назначения (РОН) и регистры специального назначения (специальных функций).
В МП Z80 имеется две группы РОН — основные и вспомогательные. В группу
основных РОН входят аккумулятор А, регистры B, C, D, E, H, L, флаговый ре-
гистр F; в группу вспомогательных РОН, соответственно, аккумулятор А’, реги-
стры B’, C’, D’, E’, H’, L’, флаговый регистр F’. Флаговые регистры 6-разрядные,
остальные РОН — 8-разрядные. При обработке двухбайтных слов РОН объеди-
няют в пары BC, DE, HL.
Аккумуляторы и флаговые регистры отличны от остальных РОН. Аккумуля-
тор — это специальный однобайтовый регистр, отличающийся более широким
использованием при выполнении команд. В МП Z80, как и во многих других, су-
ществуют операции над данными, ранящимися в аккумуляторе — над данными,
хранящимися в других РОН подобные операции невозможны.
Во флаговом регистре хранятся флаги — специальные признаки некоторых
операций. В 6-разрядном регистре F хранятся 6 флагов, из которых 4 проверяемые
и 2 непроверяемые. Проверяемые флаги — флаг переноса C (Carry), флаг нуля Z
(Zero), флаг отрицательного числа S (Sign), флаг четности P (Parity). Непроверяе-
мые флаги — флаги полупереноса и вычитания. Флаги автоматически устанавли-
ваются и сбрасываются после выполнения команд. Считается, что флаг установ-
лен, если значением соответствующего бита во флаговом регистре равно единице.
Результат выполнения одной команды может повлиять на состояния нескольких
флагов. Однако, существуют команды, не влияющих на флаги. Состояние прове-
ряемых флагов может быть проверено программно и использовано для организа-
ции ветвлений в управляющей программе. Непроверяемые флаги программно не
опрашиваются, а используются АЛУ МП при выполнении некоторых операций.
Например, флаг вычитания используется для коррекции результатов операций над
двоично-десятичными числами.
В каждый момент времени программисту доступны либо основные, либо
вспомогательные РОН. Переключение между ними осуществляется программно.
РОН сохраняют в себе информацию даже находясь в неактивном состоянии.
Регистры специального назначения, как следует из названия, используются
для хранения специальной информации, которая используется при выполнении
тех или иных операций. К регистрам специального назначения относятся: два 16-
разрядных индексных регистра IX, IY, 16-разрядный счетчик команд PC, 16-
разрядный указатель стека SP, 8-разрядный регистр векторов прерываний I и 8-
разрядный регистр регенерации динамической памяти R. Рассмотрим только те из
регистров специального назначения, которые в том или ином виде присутствуют в
любом МП. Назначение регистров, являющихся особенностью МП Z80, рассмот-
рим в дальнейшем по мере необходимости.