原生Float.floatToRawIntBits(浮点值)的输出是什么?

时间:2012-01-26 16:08:04

标签: java floating-point int native

JRE文档说明了本机函数Float.floatToRawIntBits(Float value) ...

  

返回指定浮点值的表示形式   根据IEEE 754浮点“单格式”位布局,   保留非数字(NaN)值。

什么是"single format"位布局?我从来没有听过这个表达。

我举了一个例子:

float f = 1;
System.out.println(Float.floatToRawIntBits(f));

哪个输出1065353216

这个功能实际上在做什么?

1 个答案:

答案 0 :(得分:5)

  

IEEE 754浮点“单格式”位布局:

     

结果的第31位表示浮动的符号;位30到23   代表(有偏的)指数;位22到0表示尾数。

返回的int是该32位字符串的整数表示。

维基百科详细介绍了如何将浮点数转换为IEEE 754。 http://en.wikipedia.org/wiki/Single-precision_floating-point_format