Арифметичні основи цифрової техніки (Глава 1 навчального посібника), страница 15

За необхідністю розрядність сум можна одразу зменшити, нехтуючи молодшими бітами, які під час зсуву виходять за межі розрядної сітки (показана пунктиром).

Існують і інші алгоритми множення, зокрема, у доповняльному або оберненому кодах з одночасним визначенням знака й модуля добутку. Але через те, що множення довгих чисел потребує багато кроків зсуву і додавання, воно може займати до 80% часу в пристроях обробки інформації і знижує їх швидкодію. Якщо це виявляється неприйнятним, особливо в радіотехнічних пристроях, вдаються до вживання апаратурних та алгоритмічних засобів пришвидшення множення.

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

Множення  чисел  та  у форматі з рухомою комою виконується за правилами множення та  додавання чисел з нерухомою комою: модуль добутку

обчислюється множенням модулів мантис M1M2, його порядок – алгебричним додаванням порядків співмножників E1+E2, та знак – порівнянням знаків чисел A і B. Нарешті, як звичайно, може виконуватися  операція нормалізації мантиси добутку.

Найпростіший спосіб множення в ДДК полягає в додаванні множеного таку кількість разів, яка дорівнює множнику. Для цього множник записується в лічильник, вміст якого декрементується (зменшується на одиницю) під час кожного додавання доти, поки не стане рівним нулю. Отримана сума й буде дорівнювати добутку. З огляду на те, що такий спосіб потребує багато часу, вдаються до різних алгоритмів пришвидшення множення, включаючи дуже складні. Тому майже кожний тип ЕОМ має свій спосіб множення в ДДК.

1.4.6. Ділення

У цифрових пристроях ділення можна виконати аналогічно ручному способу (рис. 1.11,б). У двійковій арифметиці воно полягає у відніманні дільника від діленого або наступних залишків від ділення та зсуву залишків з приписаним черговим розрядом діленого (показано стрілками: зсуваються розряди модуля, а знаковий розряд залишається нерухомим). Якщо різниця після віднімання додатна або дорівнює нулю (показано в дужках: 1, 3, 4), у частку записують одиницю, а якщо різниця від'ємна (2), до частки вносять нуль.

Відмінність машинних методів полягає в тому, що віднімання замінюється алгебричним додаванням, причому після отримання від’ємного залишку (2) в черговому кроці ділення дільник додається не в доповняльному (1.0110), а в прямому (0.1010) коді. Крім того, замість зсувати дільник праворуч ("учнівський" спосіб) з метою заощадження обладнання його залишають нерухомим, а зсувають залишки ліворуч (показано стрілками). Процес повторюється до отримання нуля в залишку або здобуття  потрібної кількості розрядів.

Таким чином, ділення чисел з нерухомою комою аналогічне множенню: знак визначається так само, а модуль обчислюється виконанням операцій додавання в доповняльному коді та зсуву. Застосовується ділення зі зсувом дільника праворуч (краща швидкодія) або залишків ліворуч (спрощується обладнання). З огляду на те, що операції ділення та множення є сумісні, їх виконують на спільному обладнанні, побудова якого визначається множенням, бо воно зустрічається на порядок частіше ділення.

У формі зображення чисел з рухомою комою ділення також аналогічне множенню з тією різницею, що мантиси ділять як числа з нерухомою комою, а порядки віднімають, тобто додають алгебрично.