Микропроцессоры и микроконтроллеры

 
 
 
Хорошо, Java, ВОЗМОЖНО, хороший пример того как должен выглядеть язык. Но тогда программы на Java — это хороший пример как НЕЛЬЗЯ писать программы.
pixadel
Русский | Українська



На правах рекламы:



Rambler's Top100 Рейтинг@Mail.ru
Микропроцессоры и микроконтроллеры :: Каналы ввода-вывода на основе МК51 :: Реализация умножения в формате ПЗ

Реализация умножения в формате ПЗ

Запись операции в общем виде выглядит так:

Как видно из этого выражения, в порядке результирующего числа присутствует лишнее слагаемое “– sh”.

Результат можно записать в обобщенном виде как:

Для операции умножения мантисса результатов формируется как , а порядок результата должен формироваться таким образом:

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

Для умножения мантисс можно применить алгоритм следующий алгоритм: последовательно с младших разрядов анализируется очередной бит мантиссы m1: если m1(i)=1, то выполняется . После этого производится сдвиг mRвправо. Если m1(i)=0, то суммирование не производится, а сдвиг выполнять нужно.

При вычислении порядка eRможет получиться значение, превышающее . Это ситуация переполнения при умножении, которая должна контролироваться. Если eR < 0, то это ситуация потери порядка (очень маленький результат), которую тоже нужно проверить.

Значение мантиссы может получиться (поскольку каждая из мантисс выглядит как m = 1,f), поэтому может потребоваться нормализация мантиссы результата путем сдвига вправо на 1 разряд с соответствующей коррекцией порядка результата: .




Следующая статья >>
«Реализация деления в формате ПЗ»









При использовании любых материалов с сайта обратная ссылка на сайт Микропроцессоры и микроконтроллеры обязательна.