Мегаобучалка Главная | О нас | Обратная связь


Округление промежуточных результатов вычислений



2019-12-29 324 Обсуждений (0)
Округление промежуточных результатов вычислений 0.00 из 5.00 0 оценок




И так, мы выяснили, что часто промежуточные результаты вычислений нужно округлять, что приводит к появлению дополнительных погрешностей. Операции округления (соответственно и погрешности), зависят от способа представления чисел, используемого в вычислительном устройстве.

При использовании арифметики с фиксированной запятой операции сложения и вычитания не приводят к необходимости округления результатов — они могут вызвать лишь переполнение. Действительно, ведь количество знаков после запятой при сложении двух чисел с фиксированной запятой такое же, как было у слагаемых (слева суммируемые числа записаны в двоичной системе счисления, справа — в десятичной):

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

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

В отличие от сложения, умножение чисел с фиксированной запятой приводит к увеличению числа значащих цифр результата (по сравнению с сомножителями) и, следовательно, к необходимости округления. Перемножим те же два числа, которые использовались в примере сложения:

Результат умножения в данном примере имеет 6 значащих цифр после запятой. Если для представления результата используется тот же формат, что и для сомножителей, придется производить округление:

Для умножения чисел с плавающей запятой, все вышесказанное так же справедливо. Но, если результат умножения по модулю не превосходит единицы, использование формата с плавающей запятой даст большую точность, поскольку не будут зря тратиться разряды для представления незначащих нулей слева.

Однако операции сложения в формате с плавающей запятой тоже могут приводить к потере точности. Пусть рассматриваемые нами два числа представлены в формате с плавающей запятой, использующем 6 разрядов для хранения дробной части нормализованной мантиссы (мантисса и порядок записаны в двоичной системе счисления):

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

Как видите, для точного представления результата шести значащих цифр мантиссы оказалось мало, а значит, придется выполнять округление. В данном случае, когда погрешность округления в обе стороны одинакова, возможно использование различных подходов. Выберем, например, округление в большую сторону:

В результате при сложении чисел с плавающей запятой может не выполняться свойство ассоциативности — результат суммирования нескольких чисел может зависеть от последовательности выполнения сложений. При обучении программированию обычно дается рекомендация складывать числа, начиная с меньших (по модулю) и заканчивая самыми большими. Однако при реализации алгоритмов цифровой обработки сигналов мы, как правило, лишены возможности произвольно менять последовательность суммирования (хотя бы потому, что для сортировки слагаемых потребуется дополнительное время)



2019-12-29 324 Обсуждений (0)
Округление промежуточных результатов вычислений 0.00 из 5.00 0 оценок









Обсуждение в статье: Округление промежуточных результатов вычислений

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...
Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы...
Как построить свою речь (словесное оформление): При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою...
Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (324)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)