Микропроцессорный комплект больших интегральных схем, страница 4

Естественно, номер регистровой пары, в которой храниться адрес, содержит всего лишь две двоичные цифры и легко размещается  в однобайтовой команде вместе с кодом операции, которая требует меньших затрат времени для своего выполнения.

Непосредственная операция. В командах с непосредственной адресацией данные операнда находятся непосредственно  во втором или втором и третьем байтах команды. В первом байте, как обычно, размещается код операции. При использовании такого способа не требуется указания какого-либо адреса памяти. Эти данные берутся непосредственно из команды, куда они заносятся программистом при программировании. В процессе выполнения программы эти данные остаются неизменными, так как вместе с командами размещаются в ПЗУ. Этими данными обычно являются некоторые константы, заранее известные программисту.

Регистровая адресация. Если обрабатываемые данные размещены во внутренних регистрах МП, то обратиться к ним можно, указав двоичные коды регистров непосредственно в первом байте команды. Такая адресация называется регистровой. Кодирование регистров производится трехразрядными двоичными кодами:

Регистр

B - 000

Регистр

H - 100

Регистр

C - 001

Регистр

L - 101

Регистр

D - 010

Аккумулятор

A - 111

Регистр

E - 011

Память

M - 110

Наличие кода 110 в регистровой команде означает, что необходимо обратиться не к одному из перечисленных регистров, а к некоторой ячейке памяти M, адрес которой храниться в регистрах H и L, причем старшая часть адреса размещается в регистрах H, а младшая – в регистре L. Команды, в которых наряду с регистровой адресацией используется косвенная, называются командами с косвенно-регистровой адресацией.

Стековая адресация. При стековой адресации адрес операнда указывается указателем стека. Указатель стека SP – это шестнадцатеричный регистр, содержимое которого ???? текущий адрес ячейки памяти. Следовательно, стековая адресация является косвенной. В отличие от выше рассмотренных способов косвенной адресации необходимость обращения к указателю стека следует непосредственно из кода операции команды работы со стеком.

Устройство управления

В нем интерес представляют два регистра: регистр команд и программный счетчик (ПС). Назначение РК – сохранять бинарное слово команды, согласно которой ЦП в данный момент действует. Записанное в РК бинарное слово называют текущей командой. Кроме того устройство управления содержит логические схемы для декодирования команд. Декодирующее устройство расшифровывает команды и указывает, что именно должно быть предпринято.

Функция программного счетчика в том, чтобы образовывать бинарное слово, представляющее в памяти адрес следующей команды. Обычно он имеет специальное дискретное устройство, которое добавляет 1 к текущему адресу и получает следующий адрес. Поэтому адресу в памяти содержится либо операнд, либо следующая команда программы.

Устройство управления (УУ) непрерывно выполняет циклическую последовательность действий:  побитное извлечение команд из памяти и их исполнение в соответствии с программой. Содержимое ПС может быть изменено с помощью специальных команд управления (программно). Так осуществляется переход на другие ветви программы, вызовы спец. программ и т.д. Эти действия могут быть как безусловные, так и условные.

Арифметическо-логическое устройство

Оно производит обработку данных, оперируя словами (может с одним или двумя словами). Операции его выполнения: сложение, вычитание, И, ИЛИ,  искл.ИЛИ, инверсия, сдвиг вправо и влево.

Этот блок МП представляет собой сложную двухвходовую комбинационную схему, которая сигналами от устройства управления настраивается на выполнение определенной операции. Комбинация сигналов на входе однозначно определяет сигнал на выходе. Комбинационная схема состоит только из логических элементов и не содержит в своем составе регистров или иных устройств, фиксирующих информацию. Поэтому работает схема не зависимо от тактовой частоты МП и быстродействие ее определяется только временем прохождения сигнала от входа к выходу. Для  электронных схем это напосекундн.