Intermediate

格雷码转换器(二进制 ↔ 格雷码)

在标准二进制和反射格雷码之间,以选定的位宽转换任何值。

Conversion mode

Direction of conversion
Interpreted as a bit pattern at the chosen width

bits

1 to 16 bits
Gray code (decimal)
5

Output bit pattern: 0101

Conversion
0110 → 0101
Input (decimal)6
Output (decimal)5
Input binary
0110
Output binary
0101
Bit width
4 bits
结果仅为一般参考性的估算,并非专业建议——在依赖这些重要结果之前,请务必自行独立核实。 阅读完整免责声明.
快速解答

这个计算器是如何工作的?

二进制转格雷码使用 g = b XOR (b >> 1);格雷码转二进制通过每次右移对值进行 XOR 折叠。输入十进制值和位宽,选择转换方向,转换器将结果以固定宽度二进制字符串和十进制数字两种形式返回,相邻整数始终只有一位不同。

公式
二进制→格雷码: g = b XOR (b >> 1). 格雷码→二进制: b = g XOR (g >> 1) XOR (g >> 2) XOR …
How this is calculated

选择转换模式,输入一个值,并设置位宽。该值被解释为整数比特模式并掩码至所选宽度,因此只有低位有影响。结果以该宽度的二进制字符串和十进制数字两种形式显示。

二进制转格雷码只需一步:每个输出位是二进制位与下一个更高二进制位的 XOR,这正是 g = b XOR (b >> 1)。格雷码转二进制通过对格雷码值与所有右移(移位 = 1, 2, 4, …)进行 XOR 折叠来反转此过程,等同于从最高有效位向下计算每一位:b[i] = g[i] XOR b[i+1]。

反射格雷码具有连续整数恰好只有一位不同的定义特性,这使其在旋转编码器、错误减少和卡诺图中非常有用。此处宽度限制为 1 到 16 位,以使模式保持在安全的 32 位整数运算范围内;大于宽度的值通过掩码简单地环绕,负输入使用其绝对值。

常见问题

因为 g = b XOR (b >> 1) 的构造方式使得底层二进制值递增时恰好翻转一个格雷码位,从而避免了位置编码器等硬件中的虚假中间状态。

它固定显示的位数并将输入掩码至那么多的低位。宽度 4 时值 6 为 0110;宽度 8 时同样的 6 为 00000110。

是的。此转换器使用反射二进制格雷码,这是最常见的变体,由 g = b XOR (b >> 1) 定义。

也称为

格雷码转换
二进制转格雷码
格雷码转二进制
反射二进制码
格雷码计算器
格雷码换算
gray码转换
格雷编码

APA

TG we-Calculate Editorial Team. (2026). 格雷码转换器(二进制 ↔ 格雷码) [Online calculator]. TG we-Calculate. https://we-calculate.com/zh/calculator/gray-code-converter

Chicago

TG we-Calculate Editorial Team. "格雷码转换器(二进制 ↔ 格雷码)." TG we-Calculate. 2026. https://we-calculate.com/zh/calculator/gray-code-converter.

IEEE

TG we-Calculate Editorial Team, "格雷码转换器(二进制 ↔ 格雷码)," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/zh/calculator/gray-code-converter

BibTeX

@misc{wecalculate_gray_code_converter, title = {格雷码转换器(二进制 ↔ 格雷码)}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/zh/calculator/gray-code-converter}}, year = {2026}, note = {TG we-Calculate} }

这个计算器对您有帮助吗?