进制转换器
选择您的数字所用的进制——二进制、八进制、十进制或十六进制——输入后,即可同时查看它在全部四种进制下的值。工具还会显示二进制结果背后反复除以 2 的过程,并可一键复制全部进制。免费,无需注册。
输入进制
如何使用进制转换器
- 1. 选择输入进制。 默认先选中十进制。如果您的数字是用二进制、八进制或十六进制写的,请选择相应的进制。
- 2. 输入数字。 只使用数字:二进制为 0–1,八进制为 0–7,十进制为 0–9,十六进制为 0–9 加 A–F(大小写均可)。不要输入 0x 或 0b 之类的前缀。
- 3. 查看全部四种进制。 二进制、八进制、十进制和十六进制的值会同时显示。复制所有进制结果 会把它们复制为四行带标签的文字。
- 4. 查看步骤。 结果下方会列出每一次除以 2 的过程及其余数,方便您看到二进制数字是如何得出的。
进制转换的原理
在任何进制 b 中,每一位数字的值等于它的面值乘以 b 的幂,数的值就是这些值之和:值 = Σ dᵢ × bⁱ。十六进制数 1F4 等于 1 × 16² + 15 × 16 + 4 = 256 + 240 + 4 = 500。要从十进制转换为其他进制,请反复除以目标进制,并从后往前读取余数。以二进制表示 13 为例:13 ÷ 2 = 6 余 1,6 ÷ 2 = 3 余 0,3 ÷ 2 = 1 余 1,1 ÷ 2 = 0 余 1 —— 从下往上读取,得到 1101。
| 十进制 | 二进制 | 八进制 | 十六进制 |
|---|---|---|---|
| 13 | 1101 | 15 | D |
| 255 | 11111111 | 377 | FF |
| 500 | 111110100 | 764 | 1F4 |
| 1000 | 1111101000 | 1750 | 3E8 |
| 2026 | 11111101010 | 3752 | 7EA |
| 65535 | 1111111111111111 | 177777 | FFFF |
二进制、八进制和十六进制之间的捷径
由于 8 和 16 都是 2 的幂,您无需经过十进制,就能在它们与二进制之间转换。将二进制数字从右往左每三位(八进制)或每四位(十六进制)分为一组,再把每组替换为一个数字:111110100 按四位分组为 1 1111 0100,得到十六进制的 1、F 和 4,即 1F4。这就是十六进制常用来表示字节的原因(255 为 FF),也是八进制出现在 Unix 文件权限中的原因:755 的二进制为 111 101 101,即所有者可读、可写、可执行,其他人可读、可执行。
本工具不涵盖的内容
它可以转换不超过 9007199254740991(2⁵³ − 1)的非负整数,这是 JavaScript 能够精确表示的最大整数。负数、小数和浮点数不受支持,数字分隔符和前缀也不支持。负整数请使用 Two's Complement Calculator;浮点数请使用 IEEE 754 Converter。
您需要哪个工具?
| 您想要…… | 使用 |
|---|---|
| 在二进制、八进制、十进制和十六进制之间转换整数 | 本转换器 |
| 对二进制数做加、减、乘、除,或应用 AND、OR 和 XOR | Binary Calculator |
| 把负整数写成二进制 | Two's Complement Calculator |
| 把文本转换为二进制、十六进制或 ASCII 编码 | 二进制翻译工具、十六进制转换工具 或 ASCII 转换工具 |
| 查看十进制小数如何存储为浮点数 | IEEE 754 Converter |
常见问题
- 如何在不同进制之间转换数字?
- 输入数字,选择它所用的进制,工具会同时显示它的二进制、八进制、十进制和十六进制值。切换输入进制并输入另一个数字,即可进行其他方向的转换。
- 如何把十进制转换为二进制?
- 将数字反复除以 2,记下每次的余数,直到商为 0。从后往前读取余数,即可得到二进制数字。工具会显示这些具体步骤;500 得到 111110100。
- 如何把十六进制转换为十进制?
- 将每一位数字乘以 16 的幂(从右边的 16⁰ 开始)再相加:1F4 等于 1 × 256 + 15 × 16 + 4 = 500。在工具中,选择十六进制作为输入进制,输入 1F4,即可在十进制卡片中读到 500。
- 每种进制中哪些数字是有效的?
- 二进制使用 0 和 1,八进制使用 0–7,十进制使用 0–9,十六进制使用 0–9 加 A–F,其中 A 为 10,F 为 15。任何其他字符都会被标记,并提示允许使用的数字。
- 我能转换多大的数字?
- 最大可达 9007199254740991,即 JavaScript 中最大的安全整数。转换使用精确的整数运算,因此四种进制中的每一位数字都是正确的。超出上限的数值会被拒绝,而不会被四舍五入。
- 我的数字会被发送到服务器吗?
- 不会。转换在您的浏览器中完成,您输入的任何内容都不会离开您的设备。