zoukankan      html  css  js  c++  java
  • 浮点数的内存表示方法

    定点记法

      对于32位整数来说,包含1位符号位,16位整数位,15位小数位。整数部分表示2个递增次幂(和普通整数一样,2,4,8...),小数部分表示2的倒数的弟减次幂(1/2, 1/4, 1/8 ...)。例如把-173.25用定点记法表示,则

      符号=1,173=10101101,0.25=0100000000000

      最终结果为 1 0000000010101101 010000000000000

    浮点记法

      浮点记法包括1位符号位,8位指数位,23位小数位。符号位和小数位的意义和定点记法中类似。指数表示2^(e-127)中的e的值。对于此三部分,需要套用以下公式计算:

      s * 2^(e-127) * (1+m),其中s为符号位,e为指数位,m为小数位。

      例如,对于0.15625 = 1 * 2^(124-127) * (1+1/4)

    总结

      尾数位越多,精度越高;指数位越多,可表示的范围越大。

      满足方程 1 + x != 1的最小x称为机器的 epsilon。

    参考自《游戏引擎架构》  

  • 相关阅读:
    软工作业01 P18 第四题
    自我介绍
    进行代码复审训练
    源代码管理工具调查
    软工作业PSP与单元测试训练
    进行代码复审训练
    源代码管理工具
    软工作业PSP与单元测试训练
    作业
    第一堂课
  • 原文地址:https://www.cnblogs.com/tekkaman/p/3628374.html
Copyright © 2011-2022 走看看