跳到正文
BCBinary Code Translator
菜单
返回博客
速查

二进制、十进制、十六进制:开发者速查表

提供高频进制转换模式、4 位分组技巧、常见数值示例和调试思路,帮助你快速完成二进制、十进制与十六进制互转,并减少手算错误。

4 分钟阅读
作者 Binary Code Translator
#binary#decimal#hex#reference#developer-tools

二进制十进制十六进制备忘单

二进制、十进制和十六进制通常表示的是同一个数值,只是写法不同。例如十进制 42、十六进制 0x2A 和二进制 00101010 在这里表示同一个无符号数。

调试内存、协议字段、位掩码或颜色值时,最实用的技巧不是背长表,而是记住:1 个十六进制位正好对应 4 个二进制位。

三种进制先分清

  • 二进制(base 2)只使用 0 和 1。
  • 十进制(base 10)是日常使用的 0-9。
  • 十六进制(base 16)使用 0-9 和 A-F,其中 A=10、F=15。
  • 0x 是常见的十六进制前缀,但它不是数值本身的一部分。

两个十六进制位可以表示一个完整字节:00 到 FF 对应二进制 00000000 到 11111111。

4 位二进制与十六进制速查

二进制 十六进制 二进制 十六进制
0000 0 1000 8
0001 1 1001 9
0010 2 1010 A
0011 3 1011 B
0100 4 1100 C
0101 5 1101 D
0110 6 1110 E
0111 7 1111 F

这里的 A-F 是十六进制数字,不能翻译成其他字符。二进制位串、十六进制字面量和代码示例也应按原值保留。

示例 1:0x2A → 二进制 → 十进制

先去掉书写前缀 0x,只看 2A:

  • 2 → 0010
  • A → 1010
  • 合并得到 00101010

再按二进制位权计算:32 + 8 + 2 = 42。所以:

0x2A = 00101010₂ = 42₁₀

如果要用站内工具验证,在十六进制转二进制中输入 2A,不要输入 0x2A。

示例 2:十进制 42 → 二进制和十六进制

把 42 拆成 2 的幂:

42 = 32 + 8 + 2

对应位写成 1,可得到 101010。如果把它放进一个 8 位字段,应补齐为 00101010。

再按 4 位分组:0010 1010 → 2 A,因此十六进制是 2A。

可以分别用十进制转二进制、二进制转十六进制或通用进制转换器验证。

位宽和符号是最容易忽略的上下文

同一串位在不同解释下可能表示不同的数:

  • 11111111 作为 8 位无符号整数是 255。
  • 11111111 作为 8 位二进制补码有符号整数是 -1。
  • 0000000011111111 作为 16 位有符号整数则是 255。

因此看到十六进制或二进制字段时,不要只问“它等于多少”,还要确认位宽、是否有符号、字节序以及数据类型。负数的固定宽度表示可用二进制补码转换器检查。

常见调试值

十进制 十六进制 8 位二进制 常见含义
0 0x00 00000000 全部位清零
15 0x0F 00001111 低 4 位全 1
42 0x2A 00101010 本文示例
127 0x7F 01111111 8 位有符号正数上限
128 0x80 10000000 最高位被置 1
255 0xFF 11111111 一个字节全部位为 1

什么时候用哪个转换器

如果你的目标不是数值,而是把文本变成字节和位,需要先确定字符编码。可以继续看 ASCII、Unicode 与 UTF-8 的区别。

Cookie 偏好设置

管理你的 Cookie 偏好。必要 Cookie 无法关闭。

必要 Cookie

必要

用于语言选择、隐私选择和网站基础功能,属于必需项。

Cookie: NEXT_LOCALE

分析 Cookie

可选的分析 Cookie 可帮助我们了解访问情况并改进网站。

Cookie: _ga, _gid, _gat, _clck, _clsk

广告 Cookie

可选的广告 Cookie 可能用于展示相关广告并衡量广告效果。

Cookie: __gads, _gcl_au, IDE