Изобретение относится к вычислительной технике. Цель изобретения - расширение функциональных возможностей за счет работы устройства в избыточной системе остаточных классов с числами, представленными в прямом и дополнительном кодах - достигается введением сумматора по модулю, осуществляющему сдвиг полярности путем прибавления перед выполнением операции необходимой константы, и коммутатора, который ее пропускает. В устройстве также вычисляется ранг числа, определяются десятичное представление заданного непозиционного кода и знак. 3 ил.
Изобретение относится к вычислительной технике и может быть использовано в вычислительных системах, использующих непозиционные коды, а также в технике связи при передаче информации кодами СОК.
Цель изобретения - расширение функциональных возможностей за счет работы устройства в избыточной системе остаточных классов с числами, представленными в прямом и дополнительном кодах.
На фиг. 1 представлена функциональная схема устройства; на фиг. 2 - отображение динамического диапазона областей для положительных чисел при четных и нечетных Р; на фиг. 3 - отображение динамического диапазона областей для отрицательных чисел.
Устройство (фиг. 1) содержит входы 1
1-1
n остатков числа устройства, входные регистры 2
1-2
n, сумматор 3 по модулю, коммутатор 4, первый вход 5 константы устройства, вход 6 режима работы устройства, выход 7 позиционного кода числа устройства, второй вход 8 константы устройства, блок 9 преобразования кода в системе остаточных классов в полиадический код, блок 10 определения ранга числа, 11 - выход блока определения ранга числа, блок 12 определения знака числа, первый 13 и второй 14 выходы знака числа устройства, блока 15
1-15
k умножения на константу, сумматор 16.
Входные регистры 2
1-2
n предназначены для хранения остатков числа.
Сумматор 3 по модулю предназначен для осуществления сдвига полярности путем прибавления перед выполнением операции необходимой константы.
Коммутатор 4 предназначен для пропуска константы С = 0 (в случае работы с прямым кодом числа; сигнал на входе 6 равен нулю), либо констант C =

при нечетном Р и C =

при четном Р (в случае работы с дополнительным кодом числа сигнал на входе 6 равен единице).
Предлагаемое устройство осуществляет определение позиционных характеристик следующим образом.
Ранг числа А определяется в соответствии с выражением
a=

+

+ ... +

+

, в котором
1...
n остатки от деления числа А на основания Р
1...Р
nсоответственно (n - количество оснований).
i=

B
iR

i = 1,2,..., n-1
n= P
n-

R

modP
n, где R = P
1P
2...P
n B
i=

и m
i удовлетворяет условию

1(modP
i) - константы, определяемые выбором системы оснований.
Определение знака и нахождение десятичного представления производятся следующим образом.
Любое число в полиадической системе можно представить в виде А = а
0 + а
2Р
1 + а
3Р
1Р
2 + а
nP
1P
2...P
n где Р
1 и Р
2 - основания системы; а
i - коэффициенты (i = 1,...,n).
Для того, чтобы определить знак числа в системе остаточных классов, необходимо решить задачу о принадлежности числа той или иной половине диапазона [0; R), к первой [0, R/2) или к второй [R/2, R].
Эта задача решается путем сравнения данного представления с представлением [R/2] и в данном устройстве осуществляется комбинационной схемой, построение которой определяется значениями оснований Р
1...Р
n. Реализация блока 9 в совокупности с блоком 12 приведена в а.с. N 705443, кл. Н 03 М 7/18, 1979.
Применение полиадической системы для определения знака позволяет упростить операцию сравнения с [R/2], а также более простым путем получить десятичное представление числа А. Оно образуется как сумма произведений коэффициентов А на соответствующие основания.
Избыточные СОК обладают свойствами, которые можно использовать для контроля ошибок и устранения отказов цифровых процессов. Избыточная СОК имеет в общем случае К рабочих и r контрольных оснований. В предлагаемом устройстве r = 1 и в качестве контрольного взято последнее n-е основание. Для обеспечения единственности разложения все основания должны быть взаимно простыми. В избыточной СОК число А представляется К + r остаточными цифрами.
Для кодировки отрицательных чисел используется дополнительный код, при этом A

O;

-
i=

A

i = 1, ... , k+r A

-

;O

-
i= P
i-

A

i = 1, ... , k+r
Остаточные цифры
1,
2,...,
k являются неизбыточными цифрами, a
k+1,.. .,
k+r - избыточными. Весь диапазон разбивается на смежные области, определяемые неизбыточными и избыточными основаниями. Область [0,R] называется рабочим диапазоном, а область [P,R] представляет собой полный диапазон. При кодировании дополнительным кодом отрицательная часть динамического диапазона находится у верхнего предела полного диапазона. Положительные числа отображаются на области [0;P/2] при четных Р и [0;(P-1)/2] при нечетных Р. Как видно из фиг. 2, динамический диапазон, состоящий из положительных и отрицательных частей, разбивается на области, расположенные в рабочем и полном диапазоне. Это обстоятельство затрудняет обнаружение и исправление ошибок, так как ошибки обнаруживаются тем, что число попадает в недопустимую область полного диапазона. Вследствие того, что отрицательные числа появляются в верхней части недопустимой области полного диапазона, результатом операции обнаружения ошибок, реализуемой условием А > Р, будет отнесение всех отрицательных чисел к ошибочным, что не соответствует действительности в силу разнесения динамического диапазона.
Для определения этого необходимо провести сдвиг отрицательной области путем вращения остаточного кольца в положение, указанное на фиг. 3, в результате чего динамический диапазон будет однозначно отображаться на области рабочего диапазона.
Показанное на фиг. 3 вращение называется сдвигом полярности. Его можно осуществить путем прибавления перед выполнением операции определения ошибок константы C =

при нечетных Р и

при четных к каждому A

[0;R].
Устройство работает следующим образом.
Число А поступает по шинам 1
1-1
n на входы регистров 2
1-2
n. Через коммутатор в зависимости от рода работы подаются константы. С выхода сумматора 3 сигнал подается в блок 10 определения ранга числа, реализация которого приведена в а.с. N 1125619, кл. К 03 М 7/18, 1984, и в блок 9 преобразования кодов, с выхода которого сигнал подается на вход блока 12 определения знака числа. Сигнал на выходе 13 соответствует положительному числу, на выходе 14 - отрицательному. В блоках 15
1-15k умножения и сумматоре 16 реализуется перевод в позиционную систему для К неизбыточных оснований.
Формула изобретения
УСТРОЙСТВО ДЛЯ ОПРЕДЕЛЕНИЯ ПОЗИЦИОННЫХ ХАРАКТЕРИСТИК НЕПОЗИЦИОННОГО КОДА, содержащее n входных регистров (n - число оснований системы остаточных классов), и K блоков умножения на константу (K - число рабочих оснований), причем входы остатков числа устройства соединены с входами соответствующих регистров, отличающееся тем, что, с целью расширения функциональных возможностей за счет работы устройства в избыточной системе остаточных классов с числами, представленными в прямом и дополнительном кодах, в него введены сумматор по модулю, коммутатор, блок преобразования кода в системе остаточных классов в полиадический код, блок определения ранга числа, блок определения знака числа и сумматор, выход которого соединен с выходом позиционного кода числа устройства, первый и второй входы констант которого соединены соответственно с первым и вторым информационными входами коммутатора, выход которого соединен с входами первого слагаемого сумматора по модулю, входы второго слагаемого которого соединены с выходами соответствующих входных регистров, а выходы - с соответствующими входами блока преобразования кода в системе остаточных классов в полиадический код и блока определения ранга числа, выход которого соединен с выходом ранга числа устройства, первый и второй выходы знака числа которого соединены соответственно с первым и вторым выходами блока определения знака числа, входы которого соединены с соответствующими выходами блока преобразования кода в системе остаточных классов в полиадический код и входами соответствующих блоков умножения на константу, выходы которых соединены с входами сумматора, вход режима работы устройства соединен с управляющим входом коммутатора.
РИСУНКИ
Рисунок 1,
Рисунок 2,
Рисунок 3