Арифметико-логическое устройство (АЛУ): это устройство выполняет операции
арифметические, логические и сдвига, в результате которых устанавливает регистр состояния (индикаторы).
Результаты помещаются в аккумулятор, связанный с внутренней шиной. Часто внутренние регистры и
аккумулятор рассматриваются как часть АЛУ. Условия индикатора передаются в устройство управления и
синхронизации.
Аккумулятор: это устройство является универсальным 8-разрядным регистром, где
концентрируется большинство результатов выполнения команд — арифметических, логических, загрузки,
запоминания результата, ввода/вывода.
Счетчик команд: это устройство является разновидностью 16-разрядной памяти, которое
постоянно указывает на следующую выполняемую команду. Оно всегда содержит 16-разрядный адрес.
Счетчик может быть инкрементировап или сброшен устройством управления или изменен командой
передачи данных.
Устройство управления и синхронизации: это устройство получает сигналы дешифратора команд
для определения природы выполняемой команды. Оно получает также информацию от регистра состояния в
случае условного перехода. Сигналы управления и синхронизации передаются во все устройства системы
для координации выполнения команд, и, наконец, оно вырабатывает сигналы управления внешними
устройствами (ОЗУ, ПЗУ, УВВ и т. д.).
Регистр состояния: элементарный микропроцессор на рис. 5.6 содержит в своем регистре
состояния индикаторы только нуля и переноса.
Новые дополнительные устройства этого микропроцессора содержат внутренний ГТИ, систему
управления прерываниями, указатель стека и универсальный регистр данных/адреса.
Устройство управления прерываниями принимает сигнал прерывания с внешнего устройства
через вход 1NTR. Оно управляет по этому сигналу МП в соответствии с ранее рассмотренными этапами (см.
§ 3.2). Таким образом, МП ветвится в подпрограмму обслуживания прерываний, которая отвечает на
требование прерывания, и по окончании ее МП возвращается в основную программу.
Указатель стека подобен счетчику команд в том смысле, что в нем содержится адрес, который он
инкрементирует или декрементирует, он может быть также загружен новым адресом. Емкость указателя
стека составляет 16 бит, т. е. он может посылать адрес по 16 линиям.
Регистр данных/адреса составляется из двух 8-разрядных регистров, которые могут быть исполь-
зованы вместе или раздельно; они обозначены Н и L соответственно старшему (HIGH) и младшему (LOW)
байтам. Когда эти два регистра используются вместе, мы обращаемся к паре HL. Регистры Н и L являются
универсальными подобно аккумулятору в том смысле, что они могут быть инкрементированы,
декрементированы, загружены данными и служить источником данных. Пара HL может служить также
адресным регистром и хранить адрес назначения в ходе размещения данных в памяти или адресом
источника в ходе загрузки аккумулятора. Некоторые микропроцессоры обладают специальным регистром
— счетчиком данных, который указывает на ячейку памяти (он используется подобно паре регистров HL
нашего МП).
5.4. Использование регистра адреса/данных
Использование пары регистров HL в качестве указателя адреса является интересным свойством
типового МП. Обычно рассматривают его использование в качестве указателя адреса, когда она временно
берет на себя роль основного счетчика команд, указывая адрес ячейки памяти или УВВ. Многие широко
распространенные МП (например, Intel 8080/8085, Z80) содержат регистры такого типа. Регистры
адреса/данных в рассматриваемом типовом МП называются также парой HL-регистров, регистром адреса,
счетчиком данных или указателем адреса. Рассмотрим простую задачу сложения содержимого трех
последовательных ячеек памяти с размещением суммы в следующей ячейке памяти (выполнение ее
показано на рис. 3.9). Программа загружена в ячейки памяти 2000Н— 200АН, а три слагаемых
(ОСН+ОАН+07Н) — в ячейки памяти 2100Н—2102Н. Программа содержит 6 команд, записанных справа на
рис. 3.9. Не следует забывать, что текущая сумма будет всегда помещаться в аккумулятор содержащий
вначале первое слагаемое (ОСН).