Изобретение относится к области вычислительной техники и может быть использовано в высокопроизводительных системах обработки информации.
Целью изобретения является рас- ширение функциональных возможностей за счет выполнения арифметических и циклических сдвигов.
На фиг. 1 изображена структурная схема устройства для сдвига операн- дон; на фиг. 2 - функциональная схема узла односторонних сдвигов при количестве разрядов, равном восьми; на фиг. 3 - схема преобразователя прямого кода в дополнительный код; на фиг. 4 - функциональная схема узла дешифрации.
Устройство для сдвига операндов (фиг.1) содержит узел 1 односторонних сдвигов, преобразователь 2 прямо го кода в дополнительный код, узел 3 дешифрации, коммутатор А, блок 5 элементов И, вход 6 знака устройства, информационный вход 7 устройства, вход 8 типа сдвига устройства, выходы 9-12 узла 3 дешифрации, инфор-, мационные входы 13 и 14 узла 1 односторонних сдвигов, вход 15 величины сдвига устройства, вход 16 величины сдвига узла 1 односторонних сдвигов выход 17 устройства.
Узел 1 односторонних сдвигов (фиг.2) содержит мультиплексоры 18.
Преобразователь 2 прямого кода в
дополнительный код (фиг.З) содержит группы 19 и 20 элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, группу 21 элементов И.Узел 3 дешифрации (фиг,4) содержит элемент НЕ 22, элемент И-НЕ 23, элемент ИЛИ 24, :элемент НЕ 25, элементы И 26,27.
Цифры над входами (выходами) указывают номера разрядов.
Узел 1 односторонних сдвигов пр ед- назначен для выполнения односторонних сдвигов вправо кодов, установленных на входе 14. В освобождаемые разряды вдвигаются биты кода, установленного на входе 13. На входе 16 устанавливается код величины сдвига, который пе- редается на управлякацие входы всех мультиплексоров 18. На выходе 17 формируется сдвинутый код.
Преобразователь .2 предназначен для
преобразования прямого кода, установ ленного на входе 15, в дополнительный код при формировании на выходе 12 единичного сигнала.
5
О 5
20
25
35
0
г „
55
При установке на выходе 12 логического нуля код со входа 15 транзитом передается на выход.
Узел 3 дешифрации предназначен и, для дешифрации кода типа сдвига, устанавливаемого на входе 8 с учетом кода величины сдвига на входе 15, и формирования управляюш1их сигналов на выходах 9-12 при следующих кодах типов сдвига, устанавливаемых на разрядах 0/2J входа 8; 001 - сдвиг вправо логический (ПЛ); 011(010) - сдвиг влево логический
(ЛЛ); 00 - сдвиг вправо арифметический
(ПА) ;
110 - сдвиг влево циклический (ЛЦ); 100 - сдвиг вправо циклический (ПЦ).
Коммутатор 4 предназначен для передачи на вход 13 узла 1 либо кода со входа 7 (без учета крайнего левого разряда), либо кода знака со входа 6 на все разряды выхода, либо формирования нулевого кода на входе 13 узла.1.
При этом, есл и на выходе 11 установлена логическая единица, то на выходе коммутатора 4 формируется нулевой Код, независимо от значения сигнала на выходе 10. Если на выходе 11 установлен логический ноль, то при установке на выходе 10 логической единицы на все разряды входа 13 передается код знака со входа 6. При установке на выходе 10 логического нуля на вход 13 передается код со входа 7.
Устройство для сдвига операндов функционирует следующим образом.
Исходное состояние устройства может быть произвольным. Для осуществления сдвига на входе 7 устройст ва устанавливают код сдвигаемого операнда , на входе 6 устанавливают код знака операнда (при арифметическом сдвиге, вправо). На входе 8 устанавливают код типа сдвига. В устройстве предусмотрены следующие типы сдвигов и соответствующие им коды: сдвиг вправо логический (Ш1); сдвиг влево логический (ЛЛ); сдвиг вправо арифметический (ПА); сдвиг влево циклический (ЛЦ); сдвиг вправо циклический (ПЦ).
На входе 15 усуанавливается код величины сдвига.
На выходе 17 формируется код сдвинутого операнда.
Рассмотрим бо.пее подробно работу устройства при каждом типе сдвига на величину, не равную нулю, т.е. при кодах на входе 15, отличных от нулевого. При любом типе сдвига в узле 1 осуществляются односторонние сдвиги вправо кода, установленного на входе 14, с вдвиганием в освобождаемые разряды битов кода, установленного на входе 13. При сдвиге вправо логическом (ПЛ) на выходах 10 и 11 устанавливается код 11. Следовательно, на входе 13 сформируется нулевой код Код с входа 15 транзитом передается на вход 16 узла 1, так как на выходе
12установлен логический ноль. Код со входа 7 транзитом передается на вход 1А, так как на выходе 9 установлена логическая единица. В узле 1 осуществляется сдвиг кода, установленного на входе 14, вправо на величину, заданную кодом на входе 15.
В освобождаемые разряды вдвигается логический ноль, так как на входе
13сформирован нулевой код. На выходе 17 формируется логический сдвинутый вправо код.
Аналогично осуществляется сдвиг вправо арифметический (ПА), с тем отличием, что в освобождаемые разряды в узле 1 вдвигается значение знака. На всех разрядах входа 13 установлено значение знака со входа 6 устройства, так как на выходах 10 и 11 установлен код 10.
Аналогично осуществляется сдвиг вправо циклический (ПЦ), с тем отличием, что в освобождаемые разряды в узле 1 осуществляется вдвигание бит кода, установленного на входе 7. Этот код (без крайнего левого разряда) передан на вход 13 узла 1, так как на выходах 10 и 11 установлен код 00..
При сдвиге влево логическом (ПЛ) на выходах 10 и 11 устанавливается код 00. На вход 13 узла 1 передается код со входа 7 устройства (без крайнего левого бита). На входе 14 формируется нулевой код, так как на выходе 9 установлен логический ноль. На входе 16 устанавливается дополнительный код от кода, установленного на входе 15, так как на выходе 12 устанавливается логическая единица. В узел 1 осуществляется сдвиг вправо нулевого кода, установленного на входе 14, на величину.
определяемую дополнительным кодом от заданного кода величины сдвига на входе 15. В освобождаемые разряды в узле 1 вдвигаются биты сдвигае- мого кода, начиная с крайнего правого бита, так как этот код установлен на входе 13 узла 1. В итоге на выходе 17 устройства сформируется сдвинутый логически влево код операнда.
Аналогично осуществляется сдвиг влево циклический, с тем отличием, что в крайние правые разряды сдвинутого кода будут переданы сигналы
(биты) крайних левых разрядов сдвигаемого кода, так как он передается со входа 7 на вход 14. На выходе 9 устанавливается логическая единица и в узле 1 осуществляется сдвиг вправо на величину, равную дополнительному коду значения на входе 15 устройства.
При нулевом коде величины сдвига на входе 15 устройства на входе 16
узла 1 также устанавливается нулевой код. В узле 1 осуществляется нулевой сдвиг. На выходе 9 узла 3 устанавливается логическая единица независимо от кода на входе 8. В результате код со входа 7 транзитом передается на выход 17 устройства, что и требуется при нулевых сдвигах.
Формула изобретения
Устройство для сдвига операндов, содержащее узел односторонних сдвигов, преобразователь прямого код& в дополнительный код, коммутатор и блок элементав И, причем информационный вход устройства соединен с информационным входом блока элементов И, разряды, кроме старшего, информационного входа устройства соедине- : ны соответственно с разрядами первого информационного входа коммутатора, второй информационный вход которого соединен с входом знака устройства, выход коммутатора соединен с первым информационным входом узла- односто
ронних сдвигов, выход которого является выходом устройства, вход величины сдвига устройства соединен с информационным входом преобразователя прямого кода и дополнительный код, выход которого соединен с входом веичины сдвига узла односторонних сдвигов, отличающееся тем, что, с целью расширения функциональных возможностей за счет вы- полне 1ия арифметических и циклических сдвигов, оно содержит узел депт- фрации, причем разряды входов типа сдви1 а и величины сдвига устройства соединены соответственно с разрядами входа узла дешифрации,первый, второй, третий и четвертый выходы которого соединены соответственно с
управляющим входом блока элементов Н, с первым и вторым управляющим входами коммутатора, с входом разрешения преобразователя прямого кода в дополнительньй код, выход блока элементов И соединен с вторым информационным входом узла односторвнних сдвигов.
н:
20
IS
Редактор Н. Егорова Заказ 890/51
fl uz, 4
Составитель А. Клюев
Техред М. Ходанич Корректор А. Зимокосо в
Тираж 673Подписное
ВНИИПИ Государственного комитета СССР
по делам изобретений и открытий 113035, Москва, Ж-35, Раушская наб., д. А/5
ПРО Й;В ДС;В% Й;;О:П;™Г;;;Й;;СК;ГП ;;ДПРИЯТ г. УЖГОРОД, ул. Проектная.4
16
Фиг,3
название | год | авторы | номер документа |
---|---|---|---|
Устройство для сдвига операндов | 1986 |
|
SU1368874A1 |
Устройство для сдвига операндов | 1987 |
|
SU1481741A1 |
Устройство для сдвига операндов | 1988 |
|
SU1633391A1 |
Модуль для сдвига операндов | 1988 |
|
SU1617434A1 |
Устройство для формирования сигналов четности при сдвигах двоичных кодов | 1989 |
|
SU1783527A1 |
Устройство для сдвига операндов | 1986 |
|
SU1330626A1 |
Вычислительное устройство | 1988 |
|
SU1545215A1 |
Устройство для сдвига операндов | 1986 |
|
SU1368873A1 |
Устройство для сдвига информации с контролем | 1985 |
|
SU1297055A1 |
Устройство для предсказания четности результата сдвигателя | 1988 |
|
SU1649545A1 |
Изобретение относится к вычислительной технике и может быть использовано в высокопроизводительных системах обработки информации. Целью изобретения является расширение функциональных возможностей за счет выполнения арифметических и циклических сдвигов. Поставленная цель достигается за счет того, что устройство, содержащее узел I односторонних сдвигов, преобразователь 2 прямого кода в дополнительный код, коммутатор 4 и блок 5 элементов И, содержит узел 3 дешифрации с соответствующими связями. 4 ил. i (Л с: 1/7 Фиг.1
Патент США № 4139899, кл | |||
Способ отопления гретым воздухом | 1922 |
|
SU340A1 |
Дверной замок, автоматически запирающийся на ригель, удерживаемый в крайних своих положениях помощью серии парных, симметрично расположенных цугальт | 1914 |
|
SU1979A1 |
Патент США № 3887799, кл | |||
Упругая металлическая шина для велосипедных колес | 1921 |
|
SU235A1 |
Сплав для отливки колец для сальниковых набивок | 1922 |
|
SU1975A1 |
Авторы
Даты
1987-03-23—Публикация
1985-10-25—Подача