Хелпикс

Главная

Контакты

Случайная статья





Источники возникновения ошибок и потери точности



Источники возникновения ошибок и потери точности

1) Уже на этапе записи чисел в компьютере возникают ошибки округления, которые при выполнении арифметических действий нарастают.

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

2) Наличие погрешности округления приводит к следующему правилу программирования: неразумно сравнивать в программе никакие два вещественных значения на точное равенство

3) Потеря значащих цифр мантиссы у меньшего из слагаемых при выравнивании порядков

4) Потеря крайней справа значащей цифры результата при сложении или вычитании мантисс (при нормализации)

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

5) Выход за границу допустимого диапазона значений того или иного вещественного типа при нормализации результата

6) Добавление или вычитание малого числа может никак не сказаться на результате

7) Получение при умножении или делении очень больших чисел, не представимых в данном числовом типе («переполнение порядка») или очень маленьких чисел («машинный нуль» или исчезновение числа)

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.