Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный практикум _Корнев.doc
Скачиваний:
25
Добавлен:
07.09.2019
Размер:
4.96 Mб
Скачать

3.2.2 Сдвигающие регистры

В зависимости от параллельного или последовательного способа записи и считывания цифровой информации различают сдвигающие регистры:

- с параллельной записью и параллельным считыванием;

- с параллельной записью и последовательным считыванием;

- с последовательной записью и последовательным считыванием;

- с последовательной записью и параллельным считыванием.

Сдвигающие регистры помимо перечисленных обеспечивают выполнение следующих дополнительных микроопераций:

- сдвиг слова вправо;

- сдвиг слова влево;

- преобразование последовательного кода, принимаемого разряд за разрядом, в параллельный;

- преобразование параллельного кода в последовательный, выдаваемый разряд за разрядом;

- поразрядные логические микрооперации (логическое умножение, логическое сложение и т.д.)

При реализации различных операций в арифметических и других устройствах ЭВМ широкое применение находят различные операции сдвига слов, записанных в регистры. Сдвиги, как операции, входят в состав системы команд всех ЭВМ. Операция сдвига кода - это перемещение в регистре всех разрядов слова на одинаковое число разрядов влево или вправо. В этом случае разряды слова, вышедшие из разрядной сетки регистра влево (или вправо) либо теряются, либо передаются последовательно, разряд за разрядом, во внешнее устройство, подключенное к регистру. В освободившиеся при этом разряды регистра записываются нули.

Рассмотрим примеры сдвига числа на один разряд влево и вправо (таблица 3.1). Суть сдвига вправо состоит в том, что цифра из i-ого разряда, имевшаяся до сдвига, передается в (i-1)-й, более младший разряд; из (i-1)-го разряда в (i-2)-й и т.д. Суть сдвига влево заключается в том, что цифра, имевшаяся в i-м разряде регистра до сдвига, передается в соседний левый (i+1)-й, более старший разряд; из (i+1)-го разряда в (i+2)-ой разряд и т.д.

Таблица 3.1 – Иллюстрация сдвига числа в регистре

Номер разряда в регистре

n

i+1

i

2

1

0

Число в регистре до сдвига

0

1

0

1

0

0

1

Число в регистре после сдвига влево на 1 разряд

1

0

1

0

0

1

0

Число в регистре до сдвига

1

0

1

1

0

1

0

Число в регистре после сдвига вправо на 1 разряд

0

1

0

1

1

0

1

Сдвигающие регистры, в которых ввод и вывод двоичного слова производится в последовательном коде (с использованием операции сдвига) называют последовательными регистрами. Последовательный сдвигающий влево регистр, построенный на D-триггерах, показан на рисунке 3.15.

Рисунок 3.15 - Сдвигающий влево регистр на триггерах D-типа

Сдвигающий вправо последовательный регистр с параллельной записью кода, построенный на универсальных JK-триггерах, приведен на рисунке 3.16.

Рисунок 3.16 – Сдвигающий вправо регистр с параллельной записью информационного кода

Регистр, приведенный на рисунке 3.16, функционирует следующим образом. По сигналу W0 "СБРОС", поданному на шину R, осуществляется обнуление триггеров регистра по входам R через соответствующие логические элементы И-НЕ.

Запись данных осуществляется под управлением сигнала W1, который подается на объединенные входы элементов И-НЕ, управляющих записью.

На вторые входы соответствующих схем И-НЕ поступают сигналы Хi -ой цифры кода. Обнуление и подача записываемой в регистр информации производятся в отсутствии синхросигнала СИ (в два такта, что является недостатком данного способа записи). В момент прихода СИ на входы С триггеров сигнал с выхода Qi-ого триггера воздействует на вход (i-1)-ый триггер, с выхода Q(i-1)-ого, на вход (i-2)-ого триггера, передавая им свое состояние, т.е. происходит сдвиг вправо на один разряд от старших разрядов к младшим.

Иногда регистр должен иметь возможность сдвига информации в двух направлениях параллельной записью и считыванием числа. В этом случае используются реверсивные регистры такие, как показано на рисунке 3.17. Этот регистр организован на базе D-триггеров.

Рисунок 3.17 - Реверсивный сдвигающий регистр

Узлы записи информации в данном регистре перезаписывают информацию во время действия фронта тактового импульса Т. По шине W подается сигнал разрешения записи, а на входы Xi - данные для записи в соответствующие разряды. Для записи параллельных данных используются элементы И-ИЛИ-НЕ. С помощью этого же узла и шин > и < можно управлять направлением сдвига.