什么是 IEEE 754 转换器?
IEEE 754转换器显示计算机如何存储浮点数,输入像3.14159这样的十进制值,工具将其编码为IEEE 754标准定义的精确位模式,将结果分割成其三个部分:符号位、指数域和尾数(也称为分数或有效数),它可以在两个方向上工作,因此您还可以粘贴一个32位或64位的二进制字符串,或其十六进制等价物,并将其解码回它所表示的数字。
IEEE 754浮点转换器使用,它使经典的0.1问题可见 选择单(32位),保持小数,输入0.1然后单击转换:十六进制是3DCCCCCD,有偏指数是123(无偏2^-4),存储值读取0.10000000149011612 切换到双(64位),相同的输入给出3FB999999999999A,然而存储值显示0.1,因为双被打印为最短的小数,读回相同的64位。
Floating-point number 不是按照我们写的方式来存储的,一个值被保留为符号,二的幂,以及分数有效数,遵循IEEE 754-2019中的方案。那个设计就是为什么0.1加0.2不完全等于0.3,为什么有些小数在存储时会四舍五入,为什么在相同的32或64位中可能出现非常大和非常小的幅度。看到所布局的符号、指数和尾数使这些行为具体化而不是神秘化,这有助于当你调试数字错误,编写序列化器,研究计算机体系结构,或比较单双精度。
该工具运行客户端,并使用 JavaScript 引擎内部使用的相同 ArrayBuffer 和 DataView 原语,因此位模式与您的 CPU 将产生的内容相匹配,直至四舍五入。单精度(binary32)使用 1 个符号位、8 个指数位和 23 个尾数位;双精度(binary64)使用 1 个符号位、11 个指数位和 52 个尾数位。特殊情况也得到处理:正零和负零、次正规数、无穷大和 NaN 均被识别。您输入的任何内容都不会上传,并且该工具一旦加载就保持离线工作。
IEEE 754 转换器如何使用?
选择单精度或双精度
单(32位,二进制32)或双(64位,二进制64),双是大多数语言的默认值,所以除非你专门针对float,否则选择它。
选择您的输入类型
择十进制来编码数字,或者六进制或二进制来解码现有的位模式回到一个值,像无限、-无限和NaN这样的特殊输入在十进制模式下被接受。
输入您的值
3.14159或6.022e23等十进制数,或者粘贴精度所需的精确十六进制位数或位数,转换一转换就更新。
阅读细分并复制
See sign, exponent, 尾数拆分出来,连同全位,十六进制,有偏和无偏指数,存储值从位读回,表的每一行都有自己的复制按钮。
Single and double precision, side by side
A float is three fields packed into a fixed number of bits: one sign bit, an exponent, and the mantissa that holds the digits. How many bits each field gets is the entire difference between a 32-bit and a 64-bit number, and it is what decides where precision runs out.
| Field | Single (32-bit) | Double (64-bit) |
|---|---|---|
| Sign | 1 bit | 1 bit |
| Exponent | 8 bits | 11 bits |
| Mantissa | 23 bits | 52 bits |
| Exponent bias | 127 | 1023 |
| Total | 4 bytes | 8 bytes |
主要特点
单双精度
转换为二进制32(1 + 8 + 23位)或二进制64(1 + 11 + 52位),几乎每种语言中浮动和双倍使用的两种格式。
两个方向
将十进制数编码为位,或将二进制或十六进制位模式解码回其表示的值,而无需切换工具。
符号、指数、尾数分割
结果被分为三个字段,其中有偏指数存储在位中,并且它应用了无偏二次幂。
检测到特殊值
正零和负零、次正规数、无穷大和 NaN 均被标识,因此您可以准确地看到位模式属于哪种情况。
Frequently Asked Questions
Related Tools
ASCII Table
Full ASCII and extended Latin-1 table with decimal, hex, octal, binary, HTML entity, and character name for every code 0–255, plus a text-to-ASCII-code encoder.
Binary Calculator
Add, subtract, multiply, and divide binary numbers, or run AND, OR, XOR, NOT, and bit shifts, with every result shown in binary, octal, decimal, and hex. 100% client-side.
Binary Translator
Translate text to binary and binary to text, plus hexadecimal, decimal, and octal, with full UTF-8 support
Morse Code Translator
Translate text to Morse code and Morse code to text using the International (ITU) standard, with audio playback and full punctuation support
Comments
0 comments
No comments yet. Be the first to share your thoughts!