二进制到格雷码的转换

17 Mar 2025 | 4 分钟阅读

二进制到格雷码转换器是一种逻辑电路,用于将二进制代码转换为等效的格雷码。 通过将 1 的 MSB 放在轴下方,将 1 的 MSB 放在轴上方,并在 2n-1 行之后围绕轴反射 (n-1) 位代码,我们可以获得 n 位格雷码。

4 位二进制到格雷码的转换表如下

十进制数4 位二进制代码4 位格雷码
ABCDG1G2G3G4
000000000
100010001
200100011
300110010
401000110
501010111
601100101
701110100
810001100
910011101
1010101111
1110111110
1211001010
1311011011
1411101001
1511111000

在 4 位格雷码中,3 位代码围绕在第 24-1-1th =8th 行之后绘制的轴进行反射。

Binary to Gray code conversion

如何将二进制转换为格雷码

  • 在格雷码中,MSB 将始终与给定二进制数的第 1 位相同。
  • 为了执行格雷码的第 2nd 位,我们执行二进制数的第 1 位和第 2nd 位的异或 (XOR)。 这意味着如果两个位都不同,则结果将为 1,否则结果将为 0。
  • 为了获得格雷码的第 3rd 位,我们需要执行二进制数的第 2nd 位和第 3rd 位的异或 (XOR)。 对于格雷码的第 4th 位,该过程保持不变。 让我们举个例子来理解这些步骤。

示例

假设我们有一个二进制数 01101,我们想将其转换为格雷码。 以下是执行此转换所需的步骤

  • 我们知道格雷码的第 1st 位与二进制数的 MSB 相同。 在我们的示例中,MSB 是 0,因此格雷码的 MSB 或第 1st 位是 0。
  • 接下来,我们对第 1st 和第二个二进制数执行 XOR 运算。 第 1st 位是 0,第 2nd 位是 1。 两个位都不同,因此格雷码的第 2nd 位是 1。
  • 现在,我们执行二进制数的第 2nd 位和第 3rd 位的 XOR。 第 2nd 位是 1,第 3rd 位也是 1。 这些位相同,因此格雷码的第 3rd 位是 0。
  • 再次对二进制数的第 3rd 和第 4th 位执行 XOR 运算。 第 3rd 位是 1,第 4th 位是 0。 由于它们不同,因此格雷码的第 4th 位是 1。
  • 最后,对二进制数的第 4th 位和第 5th 位执行 XOR 运算。 第 4th 位是 0,第 5th 位是 1。 两个位都不同,因此格雷码的第 5th 位是 1。
  • 二进制数 01101 的格雷码是 01011。
Binary to Gray code conversion

格雷码到二进制代码的转换

格雷码到二进制码转换器是一种逻辑电路,用于将格雷码转换为等效的二进制码。 以下电路用于将格雷码转换为二进制数。

Binary to Gray code conversion

就像二进制到格雷码的转换一样; 这也是一个非常简单的过程。 以下是将格雷码转换为二进制的步骤。

  • 就像二进制到格雷码一样,在格雷码到二进制的转换中,二进制数的第 1st 位类似于格雷码的 MSB。
  • 当格雷码的第 2nd 位为 0 时,二进制数的第 2nd 位与二进制数的第 1st 位相同; 否则,第 2nd 位是二进制数的第 1st 位的改变位。 这意味着如果二进制的第 1st 位是 1,则第 2nd 位是 0,如果是 0,则第 2nd 位是 1。
  • 第 2nd 步适用于二进制数的所有位。
Binary to Gray code conversion

格雷码到二进制转换示例

假设我们有格雷码 01011,我们想将其转换为二进制数。 以下是我们需要执行的转换步骤

  • 二进制数的第 1 位与格雷码的 MSB 相同。 格雷码的 MSB 为 0,因此二进制数的 MSB 为 0。
  • 现在,对于第 2nd 位,我们检查格雷码的第 2nd 位。 格雷码的第 2nd 位是 1,因此二进制数的第 2nd 位是 1,它是 1st 的改变数字
  • 格雷码的下一位是 0; 第 3rd 位与格雷码的第 2nd 位相同,即 1。
  • 格雷码的第 4th 位是 1; 二进制数的第 4th 位是 0,它是第 3rd 位的改变数字
  • 格雷码的第 5th 位是 1; 二进制数的第 5th 位是 1; 它是二进制数的第 4th 位的改变数字。
  • 因此,格雷码 01011 的二进制数是 01101。

4 位格雷码的位被认为是 G4G3G2G1。 现在从转换表,

Binary to Gray code conversion

G4、G3、G2 和 G1卡诺图 (K-maps) 如下

Binary to Gray code conversion
Binary to Gray code conversion
Binary to Gray code conversion
Binary to Gray code conversion