使用方法
二进制转十六进制转换器用法三步:
- 把二进制串粘进输入框,可带空格分组,演示 1101 1111 0010 1010。
- 点「转为十六进制」,结果区给出
0xDF2A(含分组过程表)。 - 点「复制结果」拿走,或「载入示例」还原演示值。
二进制转十六进制转换器能解决什么
它适合学习和排查场景:
- 理解进制:看到「每 4 位一组」的分组表,比死记硬背直观。
- 调试寄存器:嵌入式里常要读二进制、写十六进制,来回换一换。
- 核对答案:作业或实验里验算转换结果。
本页不做的事:不做负数补码、不做浮点,只处理非负整数的二进制串。
原理和变量
① 用了哪个具体函数:核心用 parseInt(bin, 2).toString(16) 做整体换算,另外单独做一遍「4 位分组」用于展示过程。
② 关键参数为什么这样取:每 4 位一组是因为 4 位二进制恰好等于 1 位十六进制(2 的四次方等于 16),这是两种进制互转的根本依据。
③ 遵循哪个标准:结果以 0x 前缀表示十六进制,字母统一大写,符合常见书写习惯。
④ 输入怎么变成输出:1101=13=D、1111=15=F、0010=2、1010=10=A,拼起来得 0xDF2A。
⑤ 边界与阈值:输入含 0/1 以外的字符会提示并定位;空输入提示;超长串仍可用,只是分组表会很长。
⑥ 常见误用的正确解释:二进制没有「0b 开头」的强制要求,本页忽略空格与 0b 前缀;但字母、小数点会被视为非法。
完整示例
演示输入 1101 1111 0010 1010,从右往左每 4 位一组:
- 1101 → D(13)
- 1111 → F(15)
- 0010 → 2
- 1010 → A(10)
- 拼接结果:0xDF2A
再试 101 → 最左补成 0101,得 0x5。演示仅作说明。
输入范围与对照表
0~15 的二进制与十六进制对照(4 位一组):
| 二进制 | 十进制 | 十六进制 |
|---|---|---|
| 0000 | 0 | 0 |
| 0001 | 1 | 1 |
| 0010 | 2 | 2 |
| 0011 | 3 | 3 |
| 0100 | 4 | 4 |
| 0101 | 5 | 5 |
| 0110 | 6 | 6 |
| 0111 | 7 | 7 |
| 1000 | 8 | 8 |
| 1001 | 9 | 9 |
| 1010 | 10 | A |
| 1011 | 11 | B |
| 1100 | 12 | C |
| 1101 | 13 | D |
| 1110 | 14 | E |
| 1111 | 15 | F |
结果边界和舍入
本工具对整数做精确换算,不涉及舍入。唯一需要留意的是补零:最左一组不足 4 位时会在前面补 0,这不会改变数值,但会影响分组表的显示列。若结果前几位为 0(如 0001 1010 → 0x1A),前导 0 不写出。
常见问题
输入里可以有空格吗?
可以。空格会被忽略,方便你按 4 位或 8 位目视分组。
出现 0b 前缀会报错吗?
不会,本页会自动忽略开头的 0b,只取后面的 0 和 1。
字母 A~F 能当输入吗?
不能。输入只允许 0 和 1,出现其他字符会红字提示并指出位置。
负数怎么办?
本页只处理非负整数。负数补码请先转换好再粘贴。
支持超长二进制吗?
支持,只是分组表会相应变长,换算结果依然准确。
为什么 101 算成 0x5?
因为最左不足 4 位会补零成 0101,0101 等于十进制的 5,即十六进制的 5。
会上传内容吗?
不会,换算完全在浏览器本地完成。
能反向把十六进制转二进制吗?
本页只做二进制转十六进制,反向请用站内的十六进制转二进制工具。