www.chms.ru - вывоз мусора в Балашихе 

Динамо-машины  Обратные коды 

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 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189

данном разряде. Если мы пользуемся однородной системой счисления, то все тетрады переполнителя содержат одну и ту же величину (например, для десятичной системы ОНО, т. е. 6); для смешанных систем разные тетрады переполнителя содержат разные коды. Если все тетрады переполнителя содержат нули, то сумматор работает в обычной двоичной системе счисления (формально - в двоично-кодированной шестнадцатеричной системе). В общем случае переполнители заносятся в отведенные для них ячейки памяти при составлении программы или образуются программным путем; перед выполнением сложения из памяти (или, может быть, из регистров арифметического устройства) извлекаются и слагаемые, и переполнитель, соответствующий той системе счисления, в которой эти слагаемые записаны. Результат суммирования всегда будет получаться в той же системе, в которой представлены слагаемые.

Верхний ряд одноразрядных двоичных сумматоров на рис. 2-24 производит суммирование по правилам двоичной арифметики двух п-ичных цифр слагаемых (Ь и с) и цифры переноса из предыдущей тетрады (е = О или Е = 1). При этом суммирование выполняется по модулю 16, так что при b -\- с -\-е lt; 16 на выходах В сумматоров верхнего ряда получаем величину b -\- с + е, при Ь + с + е gt; gt; 16 - величину Ь + с + е - 16. В последнем случае образуется перенос в следующую тетраду: так как п lt; 16,. то из Ь+с + е gt; 16 вытекает непременно i -f с + е gt; п.

Нижний ряд одноразрядных двоичных сумматоров складывает величину, полученную на верхних сумматорах (Ь + с -f е или, может быть, b -\- с + е - 16) с величиной 16 - п.

Если с верхнего ряда поступает величина b -\- с -\- е - - 16, то на выходах В нижних сумматоров получаем

(Ь + с + е - 16) -f (16 - п) = Ь + с -Ь е - п,

что является правильной цифрой суммы для данного п-ичного разряда (с учетом того, что в следующую тетраду перенесена единица, - что следует из уравнений для В и в 2.1.1). Эта величина наверняка меньше чем 16: максимальные значения для Ь и с есть п - 1, максимальное значение е - это 1, поэтому 6 + с + е-п{п-1) +



j - 1) + 1 - n = n - 1 lt;; 16: следовательно, на выходе E старшего одноразрядного сумматора нижнего ряда сигнал переноса в этом случае появиться не может.

Если с верхнего ряда сумматоров передается величина , f- с + е (т. е. если оказалось, что Ь + с + е lt; 16, и на верхнем ряду сумматоров перенос в следующую тетраду не возник), то при суммировании с величиной (16 - п) могут быть два случая:

- если Ь + с + е gt; п, то (Ь + с + е) + (16 - п) gt; gt; 16; при этом необходимость переноса единицы в следующую тетраду обнаруживается по наличию единицы на выходе Е старшего двоичного сумматора нижнего ряда; на выходах В сумматоров нижнего ряда образуется величина b -\- с + е - п (потому что суммирование здесь тоже выполняется по модулю 16), соответствующая искомой цифре суммы для

, данного п-ичного разряда;

- если b + с + е lt; п,то{Ь + с + е) + (16 - п) lt;16; на выходе старшего двоичного сумматора нижнего ряда, как и на выходе старшего двоичного сумматора верхнего ряда, имеем laquo;О raquo;; в следующую тетраду единица переноситься не должна, а цифра суммы в данном п-ичном разряде равна b -\- с е.

Окончательно правило суммирования, по которому построена рассматриваемая схема, может быть сформулировано следующим образом:

если на выходе Е старшего одноразрядного двоичного сумматора верхнего ряда или на аналогичном выходе нижнего ряда появляется сигнал laquo;1 raquo;, то должен быть перенос в следующую тетраду; если на обоих указанных выходах получаются нули, то перенос в следующую тетраду отсутствует; при наличии пе-

., реноса в следующую тетраду п-ичная цифра суммы в данном разряде должна быть прочитана с выходов

У В сумматоров нижнего ряда, при отсутствии переноса - с выходов В верхнего ряда.

Сравнивая схему рис. 2-24 со схемой, например, рис. 2-16, можно видеть, что сумматор с переменным основанием получается немногим сложнее, чем обычный десятичный



сумматор. Это объясняется тем, что в схеме рис. 2-16 возможности входящего в нее оборудования используются неполностью, здесь же, если п произвольно, на входах всех двоичных сумматоров могут быть все возможные комбинации входных сигналов.

Известны и другие варианты построения сумматоров с переменным основанием *).

2.4. Особенности параллельных сумматоров

До сих пор мы рассматривали построение одноразрядных сумматоров безотносительно к тому, каким способом эти одноразрядные сумматоры объединяются в полную схему сумматора. Между тем прн создании параллельного сумматора имеется ряд специфических затруднений, приводящих, в частности, к особым требованиям к построению применяемых одноразрядных сумматоров. Их мы рассмотрим в настоящем разделе.

2.4.1. Требования к построению цепи переносов. Оптимальные схемы. Параллельный сумматор для сложения двух т-разрядных чисел содержит, грубо говоря, в т раз больше оборудования, чем последовательный сумматор. Естественно, что от него желательно получить и выигрыш по скорости примерно в т раз.

Во многих случаях исходные числа на входы сумматора поступают из триггерных регистров. Если минимальное время выполнения сдвига в регистре обозначить через Тс, то сложение двух /п-разрядных чисел с помощью последовательного сумматора, присоединенного к двум таким регистрам, будет выполняться за время /п-Тс. Применяя с теми же регистрами параллельный сумматор, желательно получить время вьшолнения суммирования порядка Тс.

Но и в параллельном сумматоре образование сигналов переноса выполняется последовательно, разряд за разрядом: цифру переноса из данного разряда в следующий нельзя получить прежде, чем известен перенос из преды-

*) См. TownsendR., Serial Digital Adders for a Variable Ra dixof Notation, Automat. Digital Сотр., London, 1954, стр. IgO-J24, Discuss., стр. 124.



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 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189