![]() | |
![]() |
Электронные компоненты Мануалы где W = 10"-X; X = \Х\. Полезно сравнить это соотношение с выражением (1.15) для дополнительного кода двоичных чисел. Поскольку операция вычитания из X числа Y заменяется операцией сложения X, с дополнением W, то основным требованием к кодам, используемьм для выполнения арифметических операций сложения и вычитания, является схемотехническая простота отыскания дополнения W. Код с избытком 3 относится к классу самодополняю- иу1хся кодов: \Хр] + Хр] = 9 для любых [Хр] = {0}, {1}, {9 Действительно, пусть Хр = 4 = (О, 1, О, 0). Тогда [Хр] = (О, 1, 1, 1 [Хр = (1, О, О, 0) и [Хр] + [Хр] = (1, 1,1,1)- (О, О, 1, 1) = = (1, 1, О, 0) = {9}. Поэтому для дополнительного кода с избытком 3 имеет место соотношение: (И?) = {F} + 1, из которого следует алгоритм получения дополнения W в коде с избытком 3 (аналогичное соотношение было получено и для двоичного дополнительного кода). Правила преобразования прямого кода с избытком 3 в дополнительный с избытком 3 и правила обратного преобразования такие же, как и для двоичного дополнительного кода. Правило сложения чисел, представленных в дополнительном коде, определяется соотношением, ППд = П-Пд + П1]д при условии, что нет переполнения разрядной сетки (совпадает с правилом сложения двоичных чисел в дополнительном коде). Используя данные правила, рассмотрим числовой пример. Пусть требуется вычислить сумму S чисел X и У, где X = +257, Y = = -648. Все необходимые для этого преобразования чисел X и Y описываются схемой: 0010. 0101. 0111 ~ X = 257 (код 8-4-2-1), ООП. ООН. ООН - внесение избытка 3, 0101. 1000. ЮЮ ~ {X}, ОНО. 0100. 1000 ~ к = 648, ООН. ООП. ООП - внесение избытка 3, 100!. 0111. 1011 ~ {Y}, ОНО. 1000. 0100 - {?), 0000. 0000. 0001 ~ 1, {W} = {F} + i, [{}]д, {Х}]д.
Убедимся, что полученная сумма S = 257 - 648 = -391. Для этого преобразуем ЦХд в значение, представленное в прямом коде 8-4-2-1. Преобразования определяются схемой:
2-1. Из рассмотренного примера видно, что все операции выполняются с помощью ЛЭ «исключающее ИЛИ» и двоичных четырехразрядных сумматоров (подобно тому, как показано на рис. 1.20). Из сказанного следует, что одноразрядные десятичные сумматоры, показанные на рис. I.2I, можно использовать как для сложения, так и для вычитания п-разрядных двоичных чисел, если они представлены в дополнительном коде с избытком 3. В заключение отметим, что иногда возникает необходимость использования шестиричной системы счисления (например, при построении многоканальных таймеров на основе оперативных запоминающих устройств). В этом случае сложение и вычитание проще всего выполнять в дополнительном трехразрядном двоичном (4-2-1) коде с избытком 1 или в дополнительном четырехразрядном двоичном (8-4-2-1) коде с избытком 5. Эти коды обладают теми же свойствами, что и дополнительный код с избытком 3 для десятичной системы счисления. Дополнение W числа X в шестиричной системе счисления определяется соотношением: W = 6"-X, где X - п-раз-рядное шестиричное число. § 1.11. ПОРОГОВЫЕ СХЕМЫ И МАЖОРИТАРНЫЕ ЭЛЕМЕНТЫ Пороговой схемой из п называется КС, имеющая п входов и один выходи реализующая функцию f(v), равную 1 только в тех случаях, когда не менее входных сигналов равны 1. Пороговые схемы используются в обнаружителях сигналов, работающих по принципу k из п (п - число выборочных значений случайного процесса, k - число выборочных значений, превысивших заданный порог, т. е. анализируемые случайные величины принимают только два значения О или 1). В этом случае символы О и 1 являются числами О и 1, поэтому такие КС могут быть реализованы с помощью двоичных сумматоров. Так как все входные переменные имеют одинаковый вес - 1, то для их сложения с целью последующего сравнения с порогом k требуются одноразрядные двоичные сумматоры. Чаще всего в сериях микросхем выпускаются четырехразрядные сумматоры, использование которых в качестве одноразрядных сумматоров неэффективно. Покажем, что четырехразрядный сумматор можно использовать в качестве двух одноразрядных сумматоров. Сумматор, показанный на рис. 1.18, о, описывается функциями: 8, = А@ВфР„ Р, = ЛВ\/А,Р,УВ,Р,. где Pi = АВУ АРоУВРо, Рг = 22 V еЛ V Рз = ЛззУ У АдРУ В3Р2 - внутренние сигналы микросхемы. Подставив в эти функции значения Лг = = О, Аз = 8 = Ро, Л4 = Л1 и 4 = = Bi (рис. 1.22, с), получим s = Pv 83 = 0, 8,А[фВ[фРо =s;. 4=л; fiiv л;р; V5;p;=p;, т. е. четырехразрядный сумматор при указанных на рис. 1.22, а соединениях входов может быть использован в качестве двух независимых одноразрядных сумматоров. В,-В4 в,-в; /1,-а! -"о" Рис. 1.22. Два независимых одноразрядных сумматора: й - на одном qeTbipexpaspHBHOM сумматоре, 6 - их условное обозначение При использовании четырехразрядных сумматоров в режиме двух одноразрядных используют упрощенное графическое обозначение (см. рис. 1.22, б). При реализации пороговых схем в МИФ в базисе И-НЕ потребовалось бы в первом ярусе ЛЭ И-НЕ, так как наименьшее число сочетаний входных сигналов, достигающих в сумме порога k, равно 2 j Второй ярус состоит из Одного ЛЭ И-НЕ с числом входов Пусть требуется синтезировать пороговую схему для /г = 9 и = =6. При реализации данной пороговой схемы в СНФ в базисе И-НЕ потребовалось бы j + 1 = + 1 = 85 ЛЭ И-НЕ. Такой способ реализации неудовлетворителен. На рис. 1.23 показана эта же пороговая схема, реализованная на шести одноразрядных сумматорах и одном ЛЭ ИЛИ. Если на вход сумматора подается переменная, имеющая вес 2*", то выход суммы имеет также вес 2", а перенос - вес 2"*-. На все три входа сумматора можно подавать только переменные, имеющие одинаковые веса. С помощью сумматоров Di, и верхней части сумматора D3 производится обычное сложение двоичных чисел. Выходными сигналами этой чаети схемы являются сигналы tjj, / = О, 1,2, 3. Так как k - =: 6 - четное число, то переменная у, имеющая вес 1, не может оказать влияния на превышение суммой переменных Хр (р = I, 2, 9) порога k, т. е. эту переменную можно исключить из дальнейшего рассмотрения. Таким образом, остались три переменные! yi - переменная, имеющая вес 4, и переменные и уз, имеющие вес 2. Очевидно, что порог = 6 будет превышен только в двух случаях: 1) еали 1 = 1 и f/2 = 1, 2) f/i = I и f/з == I. Поэтому для окончательного построения пороговой схемы надо реализовать функцию /(v) 0 1 2 3 4 5 6 7 8 [ 9 ] 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||