Изобретение относится к автоматике и вычислительной технике и может быть использовано в цифровых вычислительных машинах для преобразования двоичных чисел из прямого кода в дополнительный и обратно. Известен преобразователь из прямо го кода в дополнительный, содержащий триггерный регистр, две группы элементов И, входы которых соединены с единичными и нулевыми выходами триггеров регистра, и группу элементов ИЛИ, выходы которых соединены со сче ными входами триггеров регистра 1. Известный преобразователь имеет высокое быстродействие, однако имеет большое количество аппаратуры, связанное с наличием многовходовых элементов ИЛИ. Наиболее близким к предлагаемому является преобразователь двоичного кода в дополнительный, содержащий (п-1) одноразрядных сумматоров, где п - число разрядов преобразуемого ко да, выходы суммы которых являются разрядными выходами преобразователя, а выход переноса i-ro i I-(n-2Q одноразрядного сукматора соединен со входом переноса (i + 1)-ого одноразрядного сукматора. Кроме того, из вестный преобразователь содержит входной регистр и блок управления 2. Недостаток данного преобразователя состоит в низком быстродействии, связанном с двухтактным принципом работЫ(, и большое количество аппаратуры. Цель изобретения - увеличение быстродействия и упрощение преобразования. Поставленная цель достигается тем, что в преобразователе двоичного кода в дополнительный, содержащем (n-l) одноразрядный сумматор, где п - числе разрядов преобразуемого кода, выходы суммы которых являются разрядными выходами преобразователя, выхода пер« носа i-ro i - l-(n-2) одноразрядного сумматора соединен со входом переноса (I 1)-ого одноразрядного сумматора, первые входы всех однора1рядных сукматоров связаны с информационными входами преобразователя, младший разряд информационного входа преобразователя соединен со вторым входом первого одноразрядного сукматора и является младшим разрядом выхода преобразователя, выход суммы i-ro одноразрядного сумматора связан
со вторым входом (i -I- 1)-ого одноразрядного сумматора.
На чертеже приведена блок-схема предлагаемого пр)еобразователя.
Преобразователь двоичного кода в дополнительный содержит полусумматор 1, одноразрядные сумматоры 2, информационнь е входы 3 и выходы 4 преобразователя.
Пусть задан прямой код двоичного числа (старший разряд - крайний слева; знаковый разряд не показан 10011
Операцию суммирова 1ия значений младшего разряда со значением соседнего старшего разряда для. наглядности производим по этапам.
Этап 1. Значение младшего (первого справа) разряда заданного кода, сдвинутого на один разряд в сторону старш-их разрядов, слагаем с исходным кодом
10011 + 1
10101
Этап 2. В полученном коде значение второго разряда, сдвинутого на один разряд в сторону старших разрядов, слагаем с исходным кодом
10101 + О
ясь, поступает на выход преобразователя, а значение второго разряда формируется на выходе суммы полусумматора 1. Значения остальных разрядов выходного кода поступают на соответствующие разряды выходов 4 преобразователя с выходов сумм соо.тветствуюадих одноразрядных сумматоров 2. Эти значения получаются путем суммирования значений соседнего млад ° разряда и переноса с него соответствующего разряда входного кода, которые поступают на входы этого сумматора. Сигнал переноса с выхода сумматора 2 старшего разряда выходного кода суммируется со значением
знакового разряда. Перенос со знакового разряда теряется. Первый одноразрядный сумматор может быть заменен полусумматором.
Предлагаемый преобразователь позволяет произвести требуемое преобразование за один такт, чем и достигается ускорение преобразования, а также автоматически получить правильное значение знакового разряда. В известHbjx преобразователях приходится искусственно инвертировать значение этого разряда. Кромв того, предлагаемое устройство применимо как для преобразования прямого кода в дополнительный, так и наоборот, дополнительного кода в прямой.
10101
Этапы 3 и 4 осуществляются аналогично.
Этап 3.
11101
Этап 4.
11101 + 1
0,01101.
Единица переноса из старшего разряда переносится в знаковый разряд, где нуль индицирует знак +.
Данный алгоритм является модификацией алгоритма, реализуемого преобразователем различием, что инвертирование осуществляется последовательным прибавлением цифр кгикдого разряда единицы результата, сдвинутых на один разряд в сторону старших, разрядов к значению исходного кода с учетом всех возникаю«цих при этом переносов.
Преобразователь работает следующим образом.
При поступлении входного кода значение младшего разряда, не меняФормула изобретения Преобразователь двоичного кода в
дополнительный, содержащий (п-1) одноразрядных сумматоров, где п - число разрядов преобразуемого кода, выходы суммы которых являются разряд0 ными выходами преобразователя, а выход переноса V-ro fi 1-(n-2) одноразрядного сумматора соединен со входом переноса (i + 1)-ого одноразрядного сумиатора, отличаюj щ и и с я тем, что, с целью увеличения быстродействия и упрощения устройства, в нем первые входы всех одноразрядных сумматоров соединены с информационными входами преобразователя, младший разряд информационного входа . преобразователя соединен со вторым входом первого одноразрядного сумматора и является младшим разрядом выхода преобразователя, выход суммы i-ro одноразрядного сумматора соединен со вторым входом (I + 1)-ого однораэрядного сумматора.
Источники информации, принятые во внимание при экспертизе 1. Авторское свидетельство СССР № 238225, КЛ. G 06 F 5/02, 1968.
2. Хилбурн Дж., Джулич П. МикроЭВМ и микропроцессоры. Мир, 1979, с. 82, рис. 3.14 (прототип).
название | год | авторы | номер документа |
---|---|---|---|
Преобразователь двоично-десятичного кода в двоичный | 1988 |
|
SU1569993A1 |
Устройство для деления двоичных чисел | 1978 |
|
SU748410A1 |
Преобразователь правильной двоично-десятичной дроби в двоичную дробь и целых двоичных чисел в двоично-десятичные | 1978 |
|
SU741260A1 |
Устройство для вычисления произведения векторов (его варианты) | 1984 |
|
SU1280389A1 |
Устройство для преобразования двоичного кода в код системы счисления с отрицательным основанием /его варианты/ | 1982 |
|
SU1097994A1 |
Устройство для вычисления сумм произведений | 1980 |
|
SU905814A1 |
Устройство для вычисления сумм произведений | 1982 |
|
SU1056184A2 |
Устройство для умножения | 1983 |
|
SU1130859A1 |
Преобразователь кода грея в двоичныйКОд | 1973 |
|
SU842783A1 |
Устройство для умножения | 1986 |
|
SU1339551A1 |
Авторы
Даты
1981-07-30—Публикация
1979-12-10—Подача