(54) УСТРОЙСТВО ДЛЯ СУММИРОВАНИЯ И ВЫЧИТАНИЯ ДВОИЧНО-ДЕСЯТИЧНЫХ КЬДОВ
название | год | авторы | номер документа |
---|---|---|---|
Последовательный двоично-десятичный сумматор-вычитатель | 1977 |
|
SU693369A1 |
УСТРОЙСТВО для СУММИРОВАНИЯ | 1973 |
|
SU393740A1 |
Устройство для суммирования двоично-десятичных чисел | 1980 |
|
SU1001087A1 |
Устройство для сложения и вычитания | 1978 |
|
SU842798A1 |
Преобразователь двоичных чисел в двоично-десятичные | 1987 |
|
SU1481897A1 |
Арифметико-логическое устройство | 1978 |
|
SU922727A1 |
Последовательный двоично-десятичный сумматор-вычитатель | 1978 |
|
SU734685A1 |
Арифметико-логическое устройство | 1977 |
|
SU703808A1 |
Устройство для вычитания десятичных чисел | 1984 |
|
SU1262478A1 |
Матричное устройство для умножения | 1985 |
|
SU1267408A1 |
1
Изобретение относится к вычислительной технике и предназначено для алгебраического сложения двоично-десятичных кодов.
Известны устройства для алгебраического сложения двоично-десятичных кодов, в которых операции сложения и вычитания производятся по правилам двоичной арифметики с применением соответствующих корректирующих кодов и инвертированием при вычитании кодов отрицательного слагаемого и результата, содержащие входные и выходные блоки инвертирования кодов, первый и второй сумматоры, блоки коррекции и формирования межтетрадных переносов 1.
Эти устройства предназначены для сложения и вычитания чисел, представленных параллельными двоично-десятичными кодами. Коррекция результата в них осуществляется с помощью двух видов корректирующих кодов 0110 и 1010.
Наиболее близким по технической сущности и достигаемому результату к предлагаемому является устройство для суммирования и вычитания двоично-десятичных кодов, которое содержит ходной блок инвертирования кодов, входной сумматор, выходной сумматор, выходной блок инвертирования кодов и блок коррекции и формирования межтетрадных переносов, выполненный на элементах И, НЕ, ИЛИ 2.
Это устройство выполнено таким обэазом, что при одинаковых знаках слагаеиых числа участвуют в сложении на первом сумматоре в прямых кодах, и при возникновении межтетрадного переноса в первом сумматоре или десятичном значении результата сложения двух тетрад более 9 осуществляется коррекция результата на втором сумматоре кодом 0110. Знак результата в этом случае соответствует знакам слагаемых. При разных знаках слагаемых отрицательное число поступает на сумматор в инверсном коде, положительное - в прямом коде. Знак результата в этом случае определяется результатом сложения чисел с учетом знаковых разрядов. При отрицательном знаке результата производится коррекция кодом ОНО в разрядах, где возник межтетрадный перенос, и последующее инвертирование результата выходным блоком инвертирования кодов. При положительном знаке результата производится коррекция кодом 1010 в разрядах, где не возник межтетрадныи перенос, причем перенос от коррекции игнорируется. В этом случае инвертирование результата не производится, но для получения правильного результата необходимо учесть возникающий циклический перенос. Недостатки такого устройства состоят в том, что в нем используются два вида корректирующих кодов 0110 и 1010, в результате чего усложняется схема коррекции и формирования межтетрадных переносов, а также необходи.мость учета циклического переноса, возникающего при разных знаках слагаемых и положительном знаке результата, что приводит к уменьшению быстродействия устройства, так как циклический перенос может вызвать вновь распространение межтетрадпых переносов в устройстве, и время до установления правильного окончательного результата увеличится. Цель изобретения - упрощение устройства. Эта цель достигается тем, что в устройстве, содержагцем входной блок инвертирования, управляющий вход которого соединен с Н1ИНОЙ соотнощения знаков слагаемых, входной сумматор, входы которого соединены с выходами входного блока инвертирования кодов и шиной одного из слагаемых, а выходы соединены со входами блока коррекции и формирования межтетрадных переносов, выходного блока инвертирования кодов и выходного сумматора, с другими входами которого соединены выходы блока коррекции и формирования межтетрадпых переносов, управляющий вход которого соединен с тиной соотношения знаков слагаемых, а выходы выходного-сумматора соединены со входами выходного блока инвертирования кодов, ВЫХОДЕ) которого являются выходами устройства, вход входного блока инвертирования кодов соединен с шиной другого сла1аемого, выход межтетрадного переноса выходного сум.матора соединен со входом блока коррекции и формирования межтетрадных переносов, а управляющий вход вь ходного блока инвертирова ;ия кодов соединен с шиной соотношения знаков слагаемых, а блок коррекции и фор.мирования межтетрадных переносов содержит элементы И, ИЛИ,входы первого элемента ИЛИ соединены с первым и вторым входами блока выход первого элемента ИЛИ соединен с первым входом элемента И, со вторым входом которого соединен третий вход блока, а третий вход соединен е управляющим входом блока, выход элемента И соединен с первым входом второго элемента ИЛИ, второй вход которого соединен с четвертым входом блока,а выход - с первым выходом блока, пятый вход которого соединен с первым входом третьего элемента ИЛИ, другой вход которого соединен с четвертым входом блока, а выход являе тся вторым выходом блока. На чертеже изображена схема устройства для суммирования двоично-десятичных Устройство для одного десятичного разряда содержит входной блок 1 инвертирования кодов, входной сумматор 2, выполненный на двоичных сум.маторах 3,...6, выходной сумматор 7 выполненный на по.псумматорах 8, 9 и двоичном сумматоре 10, выходной блок 11 инвертирования кодов, блок 12 коррекции и формирования межтетрадных переносов, выполненный на элементах ИЛИ 13-15 и элементе И 16, входы 17 для подачи тетрады большего но абсолютной величине слагаемого, управляюн1ую шину 18 соотношения знаков слагаемых, входы 19 для подачи тетрады меньшего по абсолютной величине слагае.мого, вход 20 /ьля подачи межтетрадного переноса из 1:редыдущего десятичного разряда, выходы- 21 тетрады суммы и выход 22 .межтетрадного переноса из данного десятичного разряда. Устройство работает следующим образом. Два числа в прямом параллельном двоично-десятичном коде 8--4--2- поступают на входы 17 и 19, причем на входы 17 поступает тетрада большего по абсолютной величир1е слагаемого. При одинаковых знаках обоих слагаемых (и-люс минус) первое слагаемое через входной блок 1 инвертирования кодов проходит на вход входного сумматора 2 в прямом коде, и сложение и нем осуществляется по правилам двоичной арифметики. При сложении может иметь место нарущение двоично-десятичного кода при но.тучении в тетраде суммы на выходе входного су.мматора 2 числа больше 9 или при возникновении в нем межтетрадного переноса. Оба эти наруп.гения кода могут быть устранены путем сложения на выходном сумматоре 7 выходного кода входного сумматора 2 с корректирующим кодом нк-сть (0110). Код коррекции HJecTb вырабатывается в блоке коррекции и формирования межтетрадных переносов 12 элементом ИЛИ 14, один вход которого соединен с выходом межтетрадного переноса входного сум.матора 2. возникающего на вы.ходе переноса двоичного сумматора б, а другой вход соединен с выходом элемента И 16, который при одинаковых знака.х слагаемых вырабатывает признак сумма больще 9, для чего его первый вход соединен с щиной 18 соотношения знаков слагае.мых, второй вход соединен с выходо.м суммы двоичного сумматора 6, на котором осуществляется сложение четвертых (старших) разрядов тетрад слагаемых, третий вход эле.мента И 16 соединен с выходом элемента ИЛИ 13, входы которого соединены с выходами двоичных сумматоров 4 и 5, складывающих соответственно вторые и третьи разряды тетрад слагаемых. Выход элемента ИЛИ 14 соединен со входами полусумматора 8 и cyMiviaropa 10, на другие входы которых поступают соответственно второй и третий разряды суммы с выхода входного сумматора 2. В результате этого на выходном сумматоре 7 происходит еложение выходного кода входного сумматора с корректирующим кодом шесть, причем возникающий на выходе переноса полусумматора 9 перенос при сложении четвертого разряда тетрады суммы входного сумматора 2 с переносом сумматора 10 является также межтетрадным переносом из десятичного разряда и через элемент ИЛИ 15, на другой вход которого поступает межтетрадный перенос из входного сумматора 2, выдается на выход 22. Разряды суммы с выходов выходного сумматора 7 и сумматора 3 поступают на вход выходного блока 11 инвертирования кодов, управляемого сигналом с шины 18 соотношения знаков слагаемых. При одинаковых знаках слагаемых код через выходной блок 11 инвертирования проходит на выходы 21 без инвертирования. При разных знаках слагаемых тетрада большего по абсолютной величине слагаемого поступает на входной сумматор 2 с выхода входного блока 1 инвертирования в инверсном виде и складывается по правилам двоичной арифметики с прямым кодом меньшего по абсолютной величине слагаемого, поступающего на входы 19. При этом также происходит нарушение кода в случае возникновения межтетрадного переноса из входного сумматора 2, которое также устраняется сложением на выходном сумматоре 7 тетрады суммы с корректирующим кодом шесть. При разных знаках слагаемых (независимо от знака результата) выходной блок 11 инвертирования работает в режиме «Инверсный код, т. е. инвертирует перед выдачей на шины 21 код результата сложения. Межтетрадный перенос при разных знаках слагаемых на выходе выходного сумматера 7 возникнуть не может, не может также возникнуть и циклический перенос на выходе устройства. Определение соотношения знаков слагаемых знака результата суммирования и большего из слагаемых при вычитании выполняется как и в известно.м устройстве вне схемы, приведенной на чертеже. Пиже приведены примеры выполнения предлагаемым устройством операций сложений и вычитани я. Пример 1. Знаки слагаемых одинаковые. 148 + 259 407 (знак результата « + запоминается), или - 148 - 259 -407 (знак результата «- запоминается). а) операция сложения 0001.0100.1000 + 0010.0101.1001 001К1010.0001 б 0110.0110 . коррекция в разря0100.0000.0111 дах, где возник меж407 тетрадный перенос или сумма больше 9 Пример 2. Знаки слагаемых разные. 273-471 -198 (отрицательное число по абсолютной величине большего положительного, знак результата будет , или - 273471 198 (отрицательное число по абсолютной величине меньше положительного, знак результата будет «-ь. а)инвертирование кода большего числа 471 (1011.1000.1110) б)операция сложения 0010.0111.0011 + 1011.1000.1110 1110.0000.0001 в)+0,110.0110 -коррекция в разрядах, где возник меж1110.0110.0111 тетрадный перенос г) 0001.1001.1000 -инвертирование результата сложения 198 Использование в предлагаемом устройстве для суммирования и вычитания двоичнодесятичных кодов одного типа корректирующего кода щесть (ОНО) как при сложении, так и при вычитании позволяет упростить схему устройства по сравнению с известным за счет уменьщения числа элементов в блоке коррекции и формирования межтетрадных переносов. По сравнению с известным в блоке коррекции и формирования межтетрадных переносов предлагаемого устройства на каждый десятичный разряд экономия составляет два элемента И, два элемента ИЛИ и один элемент НЕ. Кроме того, в выходном сумматоре 7 предлагаемого устройства для сложения четвертых разрядов используется полусумматор 9, а не сумматор, как в известном устройстве. Реализованная в устройстве коррекция при разных знаках слагаемых обладает большим быстродействием по сравнению с известным в случае, когда отрицательное число по абсолютной величине меньше положительного, так как отпадает необходимость в учете циклического переноса, отсутствующего при этой коррекции. Формула изобретения 1. Устройство для суммирования и вычитания двоично-десятичных кодов, содержащее входной и выходной блоки инвертирования кодов, входной и выходной сумматоры и блок коррекции и формирования межтетрадных переносов, причем управляющий вход входного блока инвертирования кодов соединен с шиной соотношения знаков ела
Авторы
Даты
1981-03-15—Публикация
1978-06-01—Подача