YourTools.
English
返回目录
工具

IEEE 754 浮点数转换

查看十进制数的单精度或双精度位表示,或把十六进制、二进制位模式还原为数值(每行一个)。

本地处理

文件只在当前浏览器处理;关闭或清空后不保留。

输入文本

输入或粘贴要处理的文本

调整设置

可调整方向、精度、十六进制字节序

IEEE 754 浮点数转换

开始处理

在本机浏览器中处理,可随时取消

请先输入文本

工具介绍

查看十进制数在 IEEE 754 单精度(32 位)或双精度(64 位)下的存储形式,或者把十六进制、二进制位模式还原成数值。例如弄清 0.1 为什么无法精确表示,解析从传感器、串口或文件里读到的 4 字节浮点数,或者核对程序中 float 和 double 的取值。

每个数都会给出实际存储的数值、十六进制、按符号位、指数、尾数分组的二进制,以及符号和指数。十六进制可以按大端或小端书写。每行输入一个数,全部在浏览器中完成。

使用步骤

  1. 在“输入文本”中每行输入一个数,也可以点击“使用示例”。
  2. 选择“方向”:“十进制转位表示”或“位表示转十进制”。
  3. 选择“精度”:“单精度(32 位)”或“双精度(64 位)”;数据来自小端设备时,把“十六进制字节序”设为“小端”。
  4. 点击“运行”,在预览中查看每个数的结果,再下载为文本文件。

格式与限制

输入
文本
输出
纯文本
大小上限
1 MB
可调设置
方向(十进制转位表示、位表示转十进制);精度(单精度、双精度);十六进制字节序(大端、小端)
隐私
文件留在当前浏览器会话中,不上传文件字节。
费用
免费,无需注册

常见问题

为什么 0.1 转换后变成了 0.10000000149011612?

0.1 无法用二进制精确表示,只能存成最接近的值。单精度下最接近的是 0.10000000149011612(十六进制 3DCCCCCD);双精度更接近,显示为 0.1,十六进制是 3FB999999999999A。

大端和小端有什么影响?

只影响十六进制这一行,输入和输出都是如此。例如单精度的 1 按大端写作 3F800000,按小端写作 0000803F。二进制始终按最高位在前显示和读取。

位表示转十进制要输入什么格式?

单精度输入 8 个十六进制数字或 32 个二进制位,双精度输入 16 个十六进制数字或 64 个二进制位。可以带 0x 前缀,中间的空格和下划线会被忽略;位数不对时会报错。

能转换无穷大和 NaN 吗?

能。输入 inf、-inf、infinity 或 nan 即可,不区分大小写。超出单精度范围的数,例如 1e40,会变成 Infinity;-0 也会单独显示为 -0。

结果里的 exponent 是什么?

Binary 行用空格把符号位、指数位和尾数位分开;Sign 后面是符号位,exponent 是指数位减去偏移量(单精度 127,双精度 1023)后的值,例如 0.1 的 exponent 为 -4。