Арифметические операции, к числу которых относится умножение, часто встречаются при решении задач на ЭВМ. Умножение является длинной операцией. Временные затраты на умножение чисел в прямых кодах можно оценить по формуле
(3)
где pi – вероятность появления единицы в разрядах множителя, tсл – время формирования очередной частичной суммы, tсдв – время выполнения сдвига числа на один разряд.
Анализируя выражение (3), можно предложить различные пути сокращения величины Тумн: уменьшение времени на сдвиг, на формирование очередной суммы, уменьшение числа разрядов множителя. Этого можно достигнуть логическими или аппаратными методами. Рассмотрим логические методы ускорения умножения.
Один из наиболее простых способов состоит в том, чтобы при наличии нулевого разряда в множителе не выполнять формирование очередного (нулевого) частичного произведения, не изменяющего содержимое сумматора. В зависимости от используемого алгоритма умножения выполняется сдвиг либо частичной суммы, либо частичного произведения без выполнения суммирования.