D.1.1 浮点计算器的精度 (Sun Studio 12:C 用户指南) 您所在的位置:网站首页 浮点计算器EDAVerilog D.1.1 浮点计算器的精度 (Sun Studio 12:C 用户指南)

D.1.1 浮点计算器的精度 (Sun Studio 12:C 用户指南)

2024-07-16 18:31| 来源: 网络整理| 查看: 265

D.1.1 浮点计算器的精度

5.2.4.2.2 浮点类型 的特性

使用浮点操作数进行运算的值以及同时符合常见算术转换和浮点常量的值经过计算所得格式的范围和精度可能大于该类型所要求的范围和精度。计算格式的使用由 FLT_EVAL_METHOD 的特定值确定:

表 D–1 FLT_EVAL_METHOD 值

值 

含义 

-1 

不能确定的。 

编译器仅根据该类型的范围和精度计算所有运算和常量的结果。 

编译器根据双精度的范围和精度计算浮点和双精度类型的运算和常量的结果。根据长双精度的范围和精度计算长双精度运算和常量的结果。 

编译器仅根据长双精度的范围和精度计算所有运算和常量的结果。 

当您将 float.h 包括在 SPARC 体系结构中时,缺省情况下 FLT_EVAL_METHOD 将扩展到 0,并根据其类型计算所有浮点表达式的结果。

当您将 float.h 包括在 x86 体系结构中时,缺省情况下 FLT_EVAL_METHOD 将扩展到 -1(当 -xarch=sse2 或 -xarch=amd64 时除外),并根据其类型计算所有浮点常量表达式的结果,同时将所有其他浮点表达式按长双精度类型进行计算。

当您指定 -flteval=2 并包括 float.h 时,FLT_EVAL_METHOD 将扩展到 2,并将所有浮点表达式按长双精度类型进行计算。有关更多信息,请参见B.2.20 -flteval[={ any|2}]。

当您在 x86 中指定 -xarch=sse2 或 -xarch=amd64 并包括 float.h 时,FLT_EVAL_METHOD 将扩展到 0,并根据其类型计算所有浮点表达式的结果。

即使浮点表达式按双精度类型来计算结果,-Xt 选项也不影响 FLT_EVAL_METHOD 的扩展。有关更多信息,请参见B.2.63 -X[c|a| t|s]。

使用 -fsingle 选项将导致浮点表达式以单精度来计算结果。有关更多信息,请参见B.2.27 -fsingle。

当您在 x86 体系结构中指定 -fprecision 以及 -xarch=sse2 或 -xarch=amd64 并包括 float.h 时,FLT_EVAL_METHOD 将扩展到 -1。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有