IEEE 754 浮点数交互式演示
小于 1 分钟
IEEE 754 浮点数的交互式演示。
1. 演示
2. 原理
解释
具体显示的结果取决于你的计算机储存方式和浮点数实现,考虑到现代计算机几乎 100% 地采用了 IEEE 754,并使用小端存储数据,所以这可以保证 100% 是正确的。除非你的机器 / JavaScript 实现使用大端存储,这样你看到的结果也是大端的。
使用 ES6 新特性 ArrayBuffer
和 DataView
来读取和设置二进制数组:
// 将浮点数转换为 uint32 类型
const float32_to_uint32 = (f: number): number => {
const buffer = new ArrayBuffer(4)
const view = new DataView(buffer)
view.setFloat32(0, f, true)
return view.getUint32(0, true)
}
可参考 本页组件实现代码 来了解更多。