Микрооперации сдвига

Сдвиг — это одновременное пространственное перемещение двоичного слова в разрядной сетке с сохранением порядка следования нулей и единиц. Регистры, предназначенные для выполнения микроопераций сдвига, называются регистрами сдвига или сдвиговыми.

Микрооперации сдвига используют в процессе выполнения команд умножения, деления и нормализации. Кроме того, с помощью сдвига осуществляется преобра­зование параллельного кода в последовательный или наоборот (например, при об­мене информацией с магнитными лентами и дисками).

Сдвиг слова может выполняться вправо (в сторону младших разрядов) или влево (в сторону старших разрядов).

Обозначим одноразрядные микрооперации сдвига вправо и влево символами R и L соответственно.

Различают правый и ле­вый арифметический (Ra, La), логический (Rл, Lл) и циклический (Rц, Lц) сдвиги сло­ва.

Пусть в регистре А записано слово Аn, Ап-1... А2 А1

где А1 — младший разряд; Аn — старший разряд.

Символически микрооперации сдвига записываются сле­дующим образом:

• арифметические сдвиги (знаковый разряд не сдвигается):

RGA: = Ra(A) = An 0 An-1... A2; RGA: = La (A) = Аn Аn-2...А1 0;

• логические сдвиги (одновременно сдвигаются все разряды);

RGA: = Rл(A) = 0 Аn Аn-1...А2; RGA: = Lл(A) = Аn-1Аn-2...А1 0;

• циклические сдвиги (между старшим и младшим разрядами имеется коль­цевая связь):

RGA:= Rц (A) =A1 Аn Аn-1...А2; RGA: = Lц(A) = An-1 An-2...А1 An

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

Сдвиговые регистры проектируют на двухступенчатых RS- (или JK-) или D-триггерах с динамическим управлением по фронту. Такие триггеры обеспечивают разделение во время процессов приема новой информации в каждом разряде и вы­дачи (сдвига)старой.

Примем, что в реверсивном регистре должны выполняться параллельная за­пись слова А по сигналу управления Yзп и сдвиги информации влево и вправо под воздействием управляющих сигналов Lл и Rл.

Схема одного разряда регистра сдвига на RS-триггерах показана на рис. 5.6, а.

Экономичная схема разряда регистра, в которой функция на R-входе триггера
образуется инвертированием сигнала Si показана на рис. 3.6, б.

Однако в этом слу­чае время записи данных увеличивается за счет задержки инвертора.

Схема разряда регистра сдвига на D-триггерах показана на рис. 5.6 в.


Рисунок 5.6-Схема разряда регистра сдвига:

а)-на RS-триггере; б)-с инвентором на входе R; в)-на D-триггере

Пример построения реверсивного трехразрядного регистра сдвига на D-триггерах с динамическим управлением представлен на рис. 5.7.


Рисунок 5.7-Схема реверсивного регистра на D-триггерах

Реверсивный регистр сдвига работает следующим образом.

При значении сиг­нала Yзп = 1 в регистр записывается информация параллельным однофазным ко­дом.

При значении сигнала Rл = 1 хранимая информация одновременно сдвигается в сторону младших разрядов, при этом разряд Q3 обнуляется.

При значении сигнала Lл = 1 информация в регистре одновременно сдвигается в сторону старших разря­дов, при этом разряд Q1 обнуляется.

Запись и сдвиг информации происходят по фронту синхроимпульса.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: