Учебное пособие: Виконання операцій множення і ділення у двійковій системі числення
Припустимо, що всі розряди, які розташовані праворуч від вертикальної лінії, відкидаються. Якщо додавати тільки n розрядів, то вноситься похибка, тому що не враховуються перенесення з відкинутих розрядів у розряди, які розташовані ліворуч від лінії. Ці перенесення можуть поширитися на k розрядів ліворуч від лінії. Якщо всі , то кожен розряд дає одиницю перенесення і загальна кількість одиниць перенесень з відкинутої частини буде дорівнювати
.
Для досить великих значень n маємо: .
Одиниці перенесень поширяться на k розрядів суматора, і добуток буде містити тільки точних розрядів. Отже, щоб одержати результат з точністю до n розрядів, необхідно виділити розрядів у суматорі НСМ і регістрі РгА. Кількість додаткових розрядів k при цьому визначається за формулою:
. (3.6)
Нижче приведені результати розрахунку за (3.6) :
п |
24 |
32 |
40 |
48 |
64 |
72 |
k |
5 |
5 |
6 |
6 |
6 |
7 |
3.2.3. Множення обернених кодів чисел
Операцію множення найпростіше виконувати в прямих кодах чисел. Разом з тим застосування обернених кодів дозволяє істотно спростити операцію алгебричного додавання. Тому числа бажано зберігати в запам'ятовувальному пристрої в оберненому коді і множити також обернені коди. Розглянемо правила множення операндів, що представлені в оберненому коді.
Нехай множене А - будь-яке число, а множник B > 0, тобто А = [A ]об і [В ]об . Тоді
.
Згідно з теоремою про додавання обернених кодів можна стверджувати, що права частина цього співвідношення відповідає оберненому коду результату.
Розглянемо випадок, коли множене А - будь-яке число, а множник B < 0, тобто А =[A ]об і [В ]об . Виходячи з означення оберненого коду . Отже,
.
Тоді
.