进制转换与位运算

二/八/十/十六进制互转,前缀自动识别,附 32 位位运算计算器与位视图。

看协议文档遇到 0x1F,调位标志要算 0xFF00 & 0x0F0F,读源码撞上 (flags >> 3) & 1——进制与位运算是嵌入式、协议解析、权限系统绕不开的基本功,也是最容易心算出错的地方。本工具支持二/八/十/十六进制互转(输入自动识别 0x/0b/0o 前缀),给出四种进制的同步展示。

内置 32 位位运算计算器:AND/OR/XOR/NOT/左右移位逐项给出十进制与十六进制结果;位视图把 32 个位排成可点击的方格,点一下翻转一位,立即看到十进制值的变化——理解位标志最直观的方式。

有符号与无符号:同一个字节两种解读

32 位全 1(0xFFFFFFFF)按无符号读是 4294967295,按有符号读是 -1——二进制补码让同一位模式有两个值。位视图下方的两个读数并列展示,排查「为什么标志位算出来是负数」这类问题时,先确认你该用哪个口径。

移位与溢出

JavaScript 的位运算固定在 32 位:左移把高位挤掉,右移保留符号(>> 是算术移位)。本工具同样按 32 位语义计算,与 C/Java 的 int 行为一致;需要 64 位时先用十六进制分段处理。

常见问题

支持小数吗?
不支持。进制转换与位运算基于整数(BigInt 与 32 位整数),浮点数的 IEEE 754 编码是另一个话题,混在一起反而容易出错。
支持 64 位吗?
进制互转用 BigInt 实现,64 位整数可以正确显示;位运算计算器与位视图按 32 位(行业工具的通用口径)。
位视图能做什么?
点亮或熄灭任意一位,观察十进制/十六进制值变化——手工拼位标志(如权限码 1|2|8)时直接点出目标值,比心算可靠得多。

相关工具