跳转至

浮点数二进制表示

以 13.58 为例 1. 整数部分除 2 取余,余数结构反向排列即为整数部分的二进制值 2. 小数部分乘 2,大于 1.0 取 1,否则取 0,直到所有小数位为 0


整数位 余数
13%2 1
6%2 0
3%2 1
1%2 1
小数位 整数
0.58*2 1
0.16*2 0
0.32*2 0
0.64*2 0
0.28 1
0.56 0
0.12 1
... ...

  1. 二进制表示为 1101.1000101...
  2. 标准化,右移 3 位,1.1011000101...*2^3
  3. 符号位 0(1 位)+ 指数 10000010(8 位,32 位精度 127+ 右移的 3 等于 130 的二进制)+ 尾数 1000101...(共 32-1-8=23 位步骤 3 中小数位后部分)