二进制转十六进制转换器

把一串 0 和 1 粘进来,本页从右往左每 4 位划一组,逐组查表换成十六进制,自动处理前导补零,给你对应的 HEX 结果。

口径:去掉空格后从右起每 4 位一组,最左不足 4 位补 0;演示 1101111100101010 得 0xDF2A。

使用方法

二进制转十六进制转换器用法三步:

  1. 把二进制串粘进输入框,可带空格分组,演示 1101 1111 0010 1010。
  2. 点「转为十六进制」,结果区给出 0xDF2A(含分组过程表)。
  3. 点「复制结果」拿走,或「载入示例」还原演示值。

二进制转十六进制转换器能解决什么

它适合学习和排查场景:

  • 理解进制:看到「每 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 位一组):

二进制十进制十六进制
000000
000111
001022
001133
010044
010155
011066
011177
100088
100199
101010A
101111B
110012C
110113D
111014E
111115F

结果边界和舍入

本工具对整数做精确换算,不涉及舍入。唯一需要留意的是补零:最左一组不足 4 位时会在前面补 0,这不会改变数值,但会影响分组表的显示列。若结果前几位为 0(如 0001 1010 → 0x1A),前导 0 不写出。

常见问题

输入里可以有空格吗?

可以。空格会被忽略,方便你按 4 位或 8 位目视分组。

出现 0b 前缀会报错吗?

不会,本页会自动忽略开头的 0b,只取后面的 0 和 1。

字母 A~F 能当输入吗?

不能。输入只允许 0 和 1,出现其他字符会红字提示并指出位置。

负数怎么办?

本页只处理非负整数。负数补码请先转换好再粘贴。

支持超长二进制吗?

支持,只是分组表会相应变长,换算结果依然准确。

为什么 101 算成 0x5?

因为最左不足 4 位会补零成 0101,0101 等于十进制的 5,即十六进制的 5。

会上传内容吗?

不会,换算完全在浏览器本地完成。

能反向把十六进制转二进制吗?

本页只做二进制转十六进制,反向请用站内的十六进制转二进制工具。

相关工具