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

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

если 13 lt;/п lt;22, то г = 5,. если 23 lt; m lt; 39, то г = 6, если 40 lt; m lt; 72, то г = 7.

Количество добавочных разрядов можно существенно сократить, введя округление в каждом цикле умножения. . Обозначим через количество дополнительных разрядов, необходимых при наличии округления. Схему округления построим так, чтобы каждый раз, когда за пределы регистра множимого (С) выдвигается единица, в ближайшем такте суммирования (если это суммирование есть, т. е. если очередная цифра, множителя единица) добавлялась бы одна лишняя единица {т + Го)-го разряда. Добавление лишней единицы можно осуществить, как обьмно, через вход переноса младшего разряда сумматора.

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

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

..1000...,

а вместо нее добавляется величина

1..0000...

(двумя точками обозначена граница регистра). Погрешность в данном цикле умножения оказывается равной половине младшего разряда, т. е. 4-2~( + laquo;+i).

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



суммирования получится в том случае, когда непосредственно перед суммированием из регистра С был выдвинут нуль, но в о в с е X предьщущих циклах выдвигались единицы; за пределами регистра при этом находится величина

..01111...,

а взамен нее при суммировании ничего не добавляется. Максимальная по абсолютной величине отрицательная погрешность одного цикла умножения тоже составляет около половины младшего разряда, т. е. около -2~- +К

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

Как показал В. М. Храпченко*), максимальная положительная погрешность получается в том случае, когда

а Сг +2, Сг +з, .... Cm-i образуют последовательность из чередующихся нулей и единиц, причем Сг +2 может быть как нулем, так и единицей, и при этом

С/ = Cm+ra-i+i, i = ro+l. Го -f- 2,... , m,

где Ci - цифра t-го разряда множимого, а,- - цифра t-ro разряда множителя. Иначе говоря, максимальная положительная погрешность получается при перемножении еле-, дующих чисел:

если т - / о нечетно -

(... 10101...01) X (... 10...10101)

т-Го разрядов т-Го разрядов

И (. . . 11010...11) X (... 11...01011) -

т-Го разрядов т-Го разрядов

) Сб. laquo;Проблемы кибернетики raquo;, вып. 10, 1963, стр. 165-177.



если m - r четно -

(. . 10101...11) х(... 11...10101)

tn-rf, разрядов т-Го разрядов

и (... 11010...01) X (...10...01011)

m-r, разрядов т-Го разрядов

При ЭТОМ величина этой погрешности равна

Аналогичным образом, если Го lt; /п + 1, то максимальная по абсолютной величине отрицательная погрешность получается в тех случаях, когда

Сга Х =0, Ст = ,

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

С/ = 1 - Cm+ri+i, I = Го + 1, Го + 2, . . . , /и,

где обозначения с/, ai те же, что и прежде. Иначе говоря, максимальная по абсолютной величине отрицательная погрешность получается при перемножении следующих чисел:

если т - Гд нечетно -

(. ..01010...11) X (...00... 10101)

т-Го разрядов т-Го разрядов

И (...00101...01) х(... 01...01011),

т-Гэ разрядов т-Гц разрядов

если т - Го четно -

(...01010... 01) х(...02Л0Ш1)

1 m-r разрядов т-г, разрядов

И (. ..00101 11)х (...00. ..01011)

т-г разрядов m-r разрядов

При ЭТОМ величина указанной погрешности равна



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