Spec-Zone.ru › GCC 11

Next: Массивы и указатели, Previous: Целые числа, Up: Определяемое реализацией поведение языка C [Содержание][Индекс]

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).

    Следуется C99 Приложение F.

  • Направление округления при преобразовании числа с плавающей точкой в число с плавающей точкой меньшей точности (C90 6.2.1.4, C99 и C11 6.3.1.5).

    Следуется C99 Приложение F.

  • Способ выбора ближайшего представимого значения или большего/меньшего представимого значения, непосредственно прилегающих к ближайшему представимому значению, для некоторых констант с плавающей точкой (C90 6.1.3.1, C99 и C11 6.4.4.2).

    Следуется C99 Приложение F.

  • Выполняются ли и как сокращаются выражения с плавающей точкой, если это не запрещено 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. Это может измениться.

  • Может ли исключение «неточно» (inexact) чисел с плавающей точкой быть возбуждено, когда округлённый результат фактически равен математическому результату в реализации, совместимой с IEC 60559 (C99 F.9).

    Это зависит от реализации C-библиотеки и не определено самим GCC.

  • Может ли быть возбуждено исключение «потеря точности» (underflow), и «неточно» (inexact), когда результат мал, но не неточен, в реализации, совместимой с IEC 60559 (C99 F.9)?

    Это зависит от реализации C-библиотеки и не определено самим GCC.

Next: Массивы и указатели, Previous: Целые числа, Up: Реализация поведения языка C [Содержание][Индекс]

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-11.4.0/gcc/Floating-point-implementation.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API