<<
>>

УМНОЖЕНИЕ ДЕСЯТИЧНЫХ ЧИСЕЛ

Умножение десятичных чисел, как и умножение двоичных чисел, производится путем нахождения ЧП и СЧП, где ЧП представляет собой двоично-десятичное произведение десятичной цифры МН на десятичную цифру ММ.

Отличия десятичного умножения от двоичного состоят в том, что, во-первых, выделение цифр МН и ММ для их умножения не сводится к однократному двоичному сдвигу, а требует специальной процедуры распаковки (выделения цифр); во-вторых, формирование ЧП двух десятичных цифр не сводится к альтернативному выбору между значением множимого и нулем, а требует специальной процедуры умножения цифр; в-третьих, формирование СЧП может быть реализовано сложением только однобайтных чисел с применением команды десятичной коррекции DAA. Указанные отличия существенно усложняют программы умножения десятичных чисел, увеличивая время их выполнения и затраты памяти. Поэтому десятичное умножение целесообразно использовать для сомножителей малой разрядности, а обработку чисел большой разрядности вести средствами двоичной арифметики с предварительным преобразованием десятичных чисел в двоичные.

Рассмотрим две программы умножения десятичных чисел. Программа У410 реализует точное умножение формата 4-4 = 8 двух десятичных цифр методом двоичнодесятичного накопления ММ в соответствии со значением МН:

Сравнивая быстродействие и затраты памяти программы У810 с аналогичной по точности программой двоичного умножения У88А1, можно заметить трехкратное преимущество последней по быстродействию и пятикратное по экономии памяти. Быстродействие программ десятичного умножения можно существенно повысить (увеличив затраты памяти) за счет применения табличных методов умножения [20].

1.5.

<< | >>
Источник: Гуртовцев А. Л., Гудыменко С. В.. Программы для микропроцессоров: Справ, пособие.— Мн.: Выш. шк.,1989.— 352 с.: ил.. 1989

Еще по теме УМНОЖЕНИЕ ДЕСЯТИЧНЫХ ЧИСЕЛ: