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 (веса разрядов проставлены на рис. 5-5 внизу), то в дешифратор сигналов управления должны входить из предыдущего ряда сумматоров: цифра с весом 2 (с выхода Е левого, дополнительного, одноразрядного сумматора, который на рис. 5-5 находится в пунктирной рамке), цифра с весом 2 +2 (с выхода В того же сумматора), две цифры с весами 2+ (с выхода В старшего из основных одноразрядных сумматоров и с выхода Е второго из основных одноразрядных сумматоров) и две цифры с весами 2- (с выхода В второго из основных сумматоров и с выхода Е третьего). Правила, по которым обра зуется очередная цифра частного, сходны с описанными ра нее (см. 5.1.3 и 5.1.4). Что касается самого первого дешифратора, то, поскольку первый остаток является разностью двух нормализованных чисел (эта разность - результат вычитания делителя из делимого - в схеме рис. 5-5 нигде в явном виде не присутствует), то, как нетрудно проверить, Б него достаточно подать только вторую цифру делителя; дешифратор этот значительно проще, чем все остальные.

Второй дополнительный параллельный сумматор, тоже обведенный на рис. 5-5 пунктиром и расположенный левее первого, при выполнении деления служит для получения частного Б обычной форме. На одни его входы (Ь) подается число, составленное из цифр частного на другие входы (с) - обратный код числа, составленного из цифр частного laquo;-1 raquo; (обратный код образуется инверторами - элементами laquo;нет raquo;); сумматор фактически производит вычитание этих чисел, Б результате чего получается частное, записанное цифрами О, -f- 1, как это обычно и требуется.

При выполнении умножения этот параллельный сумматор служит для получения произведения в виде одного числа. Вообще при выполнении умножения схема рис. 5-5 работает в общем так же, как схема рис. 4-11. Дешифраторы сигналов управления вырабатывают сигналы laquo;+ raquo; или не вырабатывают никаких сигналов в зависимости от соответ ствующих цифр множителя. Наличие регистра делимого и laquo;лишнего raquo; по сравнению с рис. 4-11 ряда одноразрядных сумматоров (верхний горизонтальный ряд) позволяет выполнять не только простое умножение, но и умножение со



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

Усложнения, сделанные специально для деления, невелики: логические схемы на входах горизонтальных рядов сумматоров и на входах дополнительного параллельного сумматора, дешифраторы сигналов управления. Зато оборудование, затраченное для ускорения умножения, позволяет почти с такой же скоростью выполнять деление. Разница в скоростях получается только за счет того, что при -умножении дешифраторы сигналов управления подготавливаются все одновременно (сразу вслед за приемом в свой регистр множителя), а при делении каждый из дешифраторов сигналов управления срабатывает после того, как сработает предыдущий ряд сумматоров.

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

5;.1.6. Выполнение двоичного деления в упрощенном арифметическом устройстве последовательного типа. Во

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

Б качестве примера покажем, как можно реализовать деление в упрощенном арифметическом устройстве для последовательной машины с магнитным барабаном, приведенным на рис. 4-18 (стр. 467) и описанным в 4.6.3. Напомним, что все арифметическое устройство это состоит из одного последовательного сумматора и одного регистра с цепями сдвига вправо, а также нескольких вспомогательных вентилей и инверторов. Для выполнения умножения дополнительно занималась одна дорожка магнитного барабана, причем умножение выполнялось в течение 3 оборотов барабана.



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

В течение первого оборота барабана в регистре находится делитель; он расписывается на рабочей дорожке барабана столько раз, сколько разрядов содержится в исходных числах.

Затем в регистр помещается делимое. В начале второго оборота барабана из делимого вычитается делитель, причем разность возвращается в регистр через элемент задержки на один такт, т. е. сдвинутой влево на 1 разряд. Знак разности записывается на рабочую дорожку барабана в промежутке между первой и второй записью делителя или, скажем, вместо младшей цифры в первой записи делителя. В зависимости от того, положительной или отрицательной получилась первая разность, далее производится соответственно вычитание или прибавление делителя; результат снова через однотактный элемент задержки возвращается в регистр, а его знак выводится на рабочую дорожку барабана между второй и третьей записью делителя и т. д.

В течение третьего оборота барабана в регистре собирается частное. Частное фактически уже имеется на рабочей дорожке барабана. Трудность состоит только в том, что его цифры расположены на дорожке, начиная от старшей, а Б регистре отсутствуют цепи для сдвига влево. Так как цифры частного записаны на барабане с большими промежутками, то можно поступить следующим образом: каждую очередную цифру частного будем вносить в старший разряд регистра; в промежутке времени до появления следующей цифры Б регистре будут выполняться сдвиги вправо, причем цифры, выходящие из младшего разряда регистра, будут по кольцу вдвигаться в его младший разряд, а количество сдвигов каждый раз должно быть на единицу меньше количества разрядов в регистре. Нетрудно видеть, что при этом фактически получается сдвиг влево на один разряд. В итоге к концу третьего оборота в регистре в правильном порядке оказываются все цифры частного.

Таким образом, весьма простое арифметическое устройство, показанное на рис. 4-18,-может обеспечить достаточную- (для машины с магнитным барабаном) скорость



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