【问题标题】:What is the full version of the number: 1.7976931348623158E+308?完整版号是多少:1.7976931348623158E+308?
【发布时间】:2021-12-26 08:36:59
【问题描述】:

我一直在互联网上搜索,发现 1.7976931348623158E+308 作为最高浮点值。可以给我完整版吗?

【问题讨论】:

    标签: floating-point numbers


    【解决方案1】:

    我不太清楚您所说的“完整版”是什么意思,但假设采用 IEEE-754 格式,以下是最大双精度值的表示方式:

     VALUE = 1.7976931348623157e308 :: Double
                      6    5          4         3         2         1         0
                      3 21098765432 1098765432109876543210987654321098765432109876543210
                      S ----E11---- ------------------------S52-------------------------
       Binary layout: 0 11111111110 1111111111111111111111111111111111111111111111111111
          Hex layout: 7FEF FFFF FFFF FFFF
           Precision: Double
                Sign: Positive
            Exponent: 1023 (Stored: 2046, Bias: 1023)
      Classification: FP_NORMAL
              Binary: 0b1.1111111111111111111111111111111111111111111111111111p+1023
               Octal: 0o1.777777777777777774p+1023
             Decimal: 1.7976931348623157e308
                 Hex: 0xF.FFFFFFFFFFFF8p+1020
    

    【讨论】:

      【解决方案2】:

      如果您想要更短的形式,IEEE754 max (finite) double 是 2^1024 - 2^(1024-53)

      使用任何大整数算术包来打印它。

      【讨论】:

        【解决方案3】:

        普通DBL_MAX的近似值为

        printf("%.*e\n", DBL_DECIMAL_DIG-1, DBL_MAX);
        // 1.7976931348623157e+308 
        

        通常,DBL_DECIMAL_DIG(例如 17)位有效十进制数字就足够了。

        普通DBL_MAXexactly value 是 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368.0 P>


        要找到十六进制有效/以 2 为底的十进制指数的确切值,请使用

        printf("%a\n", DBL_MAX);
        // 0x1.fffffffffffffp+1023
        

        【讨论】:

        • DBL_MAX? OP 没有指明一种语言、一个平台、一个标准,甚至一个星球。我们所知道的只是“浮点数”
        • 谢谢!正是我需要的!
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-10-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多