4.6 Плавающая точка
- Точность операций с плавающей запятой и функций библиотеки в
<math.h>и<complex.h>возвращающих результаты с плавающей запятой (C90, C99 и C11 5.2.4.2.2).Точность неизвестна.
- Правила округления, характеризующиеся нестандартными значениями
FLT_ROUNDS(C90, C99 и C11 5.2.4.2.2).GCC не использует такие значения.
- Методы вычисления, характеризующиеся нестандартными отрицательными значениями
FLT_EVAL_METHOD(C99 и C11 5.2.4.2.2).GCC не использует такие значения.
- Направление округления при преобразовании целого числа в число с плавающей запятой, которое не может точно представить исходное значение (C90 6.2.1.3, C99 и C11 6.3.1.4).
Следуется приложению F к C99.
- Направление округления при преобразовании числа с плавающей запятой в число с плавающей запятой меньшей точности (C90 6.2.1.4, C99 и C11 6.3.1.5).
Следуется приложению F к C99.
- Способ выбора ближайшего представимого значения или ближайших представимых значений, больших или меньших, для определенных констант с плавающей запятой (C90 6.1.3.1, C99 и C11 6.4.4.2).
Следуется приложению F к C99.
- Сжатие выражений с плавающей запятой, когда это не запрещено препроцессорной директивой
FP_CONTRACT(C99 и C11 6.5).В настоящее время выражения сжимаются только если используются
-ffp-contract=fast,-funsafe-math-optimizationsили-ffast-math. Это может измениться. - Стандартное состояние препроцессорной директивы
FENV_ACCESS(C99 и C11 7.6.1).Эта директива не реализована, но по умолчанию она выключена, если не используется
-frounding-math, в этом случае она включена. - Дополнительные исключения, режимы округления, среды и классификации для чисел с плавающей запятой, а также имена их макросов (C99 и C11 7.6, C99 и C11 7.12).
Это зависит от реализации C библиотеки и не определено самим GCC.
- Стандартное состояние для директивы
FP_CONTRACT(C99 и C11 7.12.2).Эта директива не реализована. В настоящее время выражения сжимаются только, если используются
-ffp-contract=fast,-funsafe-math-optimizationsили-ffast-math. Это может измениться. - Возможность возникновения исключения «неточность» для чисел с плавающей запятой, когда округлённый результат фактически равен математическому результату в реализации, совместимой с IEC 60559 (C99 F.9).
Это зависит от реализации C библиотеки и не определено самим GCC.
- Возможность возникновения исключения «потеря значимости» (и «неточность») для чисел с плавающей запятой, когда результат очень мал, но не неточен в реализации, совместимой с IEC 60559 (C99 F.9).
Это зависит от реализации C библиотеки и не определено самим GCC.
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-4.9.4/gcc/Floating-point-implementation.html