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

Исключение составляет такая схема параллельногр сумматора с парафазной цепью переносов, в которой каждый разряд вырабатывает сигнал отсутствия или наличия переноса только после получения сигнала отсутствия или наличия переноса от предыдущего разряда (см. рис. 2-27 на стр. 200); распространение переносов в сумматоре такого типа начинается лишь с момента поступления сигнала laquo;отсутствие переноса raquo; или laquo;наличие переноса raquo; от схемы управления на младший разряд.

Ясно, что при указанном построении сумматора наличие цепи кругового переноса удлинило бы время устанойлениЖ цифр переноса до 2тт .

Необходимо учитывать также, что наличие цепи кругового переноса иногда приводит к повышению требований к техническому уровню проектирования. Представим себе, например, что параллельный сумматор с круговым переносом строится из потенциальных элементов и что при этом допускается некоторая неодновременность в установке сигналов слагаемых на входах. В результате могло бы получиться, что в некотором разряде при установлении на входе комбинации цифр слагаемых 0,1 или 1,0 на короткое время появилась бы комбинация 1,1, и в данном разряде сумматора появился бы кратковременный сигнал переноса в следующий разряд; если и во всех остальных разрядах имеются комбинации цифр слагаемых О, 1 или 1, О, то этот сигнал стал бы непрерывно циркулировать по цепи кругового переноса с периодом ште- Если несинфазность в установлении сигналов слагаемых больше шхе или если один из одноразрядных сумматоров дает задержку больше, чем другие одноразрядные сумматоры, то при наличии во всех разрядах цифр слагаемых О, 1 или 1,0 в цепи кругового переноса может даже установиться ложный потенциальный сигнал laquo;Ь gt; по всем разрядам. По сути дела, при появлении таких слагаемых цепь кругового переноса превращается в триггер (усилитель постоянного тока с коэффициентом усиления 1, выход которого замкнут со входом). Триггер может иметь 2 устойчивых состояния: О (нули на входах и выходах переноса во всех разрядах) и 1 (единицы на входах и выходах переноса во всех разрядах). Аналогичные неприятности могут возникать в импульсных и импульсно-потенциальных системах.



Если отвлечься от указанных тонкостей, то метод выполнения вычитания через обратные коды применим в любой схеме шраллельного сумматора; он, следовательно, более универсален, чем второй метод.

Подводя итоги, мы можем сформулировать его следующим образом (трети й метод).

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

(в ) выполнить суммирование основных разрядов (без знаков) В и С; при этом от схемы управления никакие сигналы на вход переноса младшего разряда не поступают; если необходимо, то сигнал laquo;1 raquo; может прийти на этот вход по цепи кругового переноса;

(г ) если в предыдущем пункте не было единицы в цепи кругового переноса, то обратить код результата, изменив одновременно его алгебраический знак на противоположный; п. (д) при этом отсутствует.

По оборудованию схема для осуществления этого метода отличается от схемы рис. 3-1, о только отсутствием в схеме управления цепей для выработки сигналов вщ и наличием вместо этого цепи кругового переноса в сумматоре.

Максимальная длительность выполнения сложения-вы-.читания по третьему методу оказывается равной 2то+ ts, где То - время обращения кода, те - время суммирования (вместо 2то + 2ts в основном методе); средняя длительность выполнения сложения-вычитания по третьему методу равна Tq Н- Tg (вместо Тр + Те для основного метода).



пример. Пусть требуется произвести сложение чисел (+Vi6) + (-Vie)- Числа представлены в двоичной системе, позиционным способом с естественньши весами разрядов (количество основных разрядов т = 4), прямыми кодами.

Каким бы методом ни выполнялось сложение-вычитание, оно начинается с приема 1-го слагаемого в регистр В и 2-го слагаемого в регистр С:

(Б) .1011+ (С) .0101 -

Далее производится сравнение алгебраических знаков и выясняется, что вместо сложения нужно выполнять вычитание (п. (а)).

Поэтому дальше в любом методе выполняется п. (б) - обращение кода В:

(Б) .0100 -(С) .0101 -

Затем при использовании разных методов действуем различно.

По первому методу:

(в) выполняем суммирование основных разрядов В и С, посылая при этом единицу на вход переноса младшего разряда:

(исходные числа) (Б) -О 1 0 0 -

{С) -О 1 О 1 -

(цифры переноса) (0) (1)(0) (1) reg;

(сумма) .10 10 -

(г) так как в предыдущем пункте не было переноса из старшего разряда, производим обращение кода суммы

.0101 -Ь

(д) добавляем единицу переноса в младший разряд

О 1 О 1 -f 1

(цифры переноса) (0). (0)(0)(1)1

(сумма) . О 1 ГО -f



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