バイナリからグレイコードへの変換
バイナリからグレイ コードへのコンバータは、バイナリ コードを同等のグレイ コードに変換するために使用される論理回路です。 1 の MSB を軸の下に、1 の MSB を軸の上に配置し、2 以降の軸に関する (n-1) ビット コードを反映することによって n-1 行を取得すると、n ビットのグレイ コードを取得できます。
4 ビット バイナリからグレイ コードへの変換テーブルは次のとおりです。
| 10進数 | 4ビットバイナリコード | 4ビットグレイコード |
|---|---|---|
| あいうえお | G 1 G 2 G 3 G 4 | |
| 0 | 0000 | 0000 |
| 1 | 0001 | 0001 |
| 2 | 0010 | 0011 |
| 3 | 0011 | 0010 |
| 4 | 0100 | 0110 |
| 5 | 0101 | 0111 |
| 6 | 0110 | 0101 |
| 7 | 0111 | 0100 |
| 8 | 1000 | 1100 |
| 9 | 1001 | 1101 |
| 10 | 1010 | 1111 |
| 十一 | 1011 | 1110 |
| 12 | 1100 | 1010 |
| 13 | 1101 | 1011 |
| 14 | 1110 | 1001 |
| 15 | 1111 | 1000 |
4 ビット グレイ コードでは、2 ビットの後に描かれた軸に対して 3 ビット コードが反映されます。 4-1 -1 番目 =8 番目 行。
バイナリをグレイコードに変換する方法
- グレイ コードでは、MSB は常に指定された 2 進数の 1 番目のビットと同じになります。
- 2を実行するには nd グレイコードのビットでは、1 番目と 2 の排他的論理和 (XOR) を実行します。 nd 2進数のビット。これは、両方のビットが異なる場合、結果は 1 になり、結果は 0 になることを意味します。
- 3を手に入れるためには rd グレー コードのビットでは、2 の排他的論理和 (XOR) を実行する必要があります。 nd そして3 rd 2進数のビット。プロセスは4でも同じです 番目 グレイコードのビット。これらの手順を理解するために例を見てみましょう。
例
2 進数 01101 があり、これをグレイ コードに変換したいとします。この変換を実行するには次の手順が必要です。
- 私たちが知っているように、1 セント グレイ コードのビットは 2 進数の MSB と同じです。この例では、MSB は 0 なので、MSB または 1 セント グレイコードのビットは0です。
- 次に、1 番目と 2 番目の 2 進数の XOR 演算を実行します。 1 セント ビットは 0、そして 2 nd ビットは 1 です。両方のビットが異なるため、2 nd グレイコードのビットは1です。
- ここで、2 つの XOR を実行します。 nd ビットと3 rd 2進数のビット。 2 nd ビットは 1、ビットは 3 rd ビットも 1 です。これらのビットは同じなので、3 rd グレイコードのビットは0です。
- 再度 3 の XOR 演算を実行します。 rd そして4 番目 2進数のビット。 3 rd ビットは 1、ビットは 4 番目 ビットは 0 です。これらは異なるため、4 番目 グレイコードのビットは1です。
- 最後に、4 つの XOR を実行します。 番目 ビットと5 番目 2進数のビット。 4 番目 ビットは 0、そして 5 番目 ビットは 1 です。両方のビットが異なるため、5 番目 グレイコードのビットは1です。
- 2進数01101のグレーコードは01011です。
グレイコードからバイナリコードへの変換
グレイ コードからバイナリ コードへのコンバータは、グレイ コードを同等のバイナリ コードに変換するために使用される論理回路です。グレイコードを2進数に変換するには次のような回路があります。
バイナリからグレイコードへの変換と同じです。これも非常に簡単なプロセスです。グレイコードをバイナリに変換するには、次の手順を実行します。
- ちょうどバイナリからグレー、グレーからバイナリのように、1 セント 2 進数のビットはグレイ コードの MSB に似ています。
- 2 nd 2進数のビットは1と同じです セント 2 のときの 2 進数のビット nd グレイコードのビットは0です。それ以外の場合は、2 nd ビットは 1 のビットが変更されます セント 2進数のビット。それは、1 の場合を意味します。 セント バイナリのビットが 1、次に 2 nd ビットは 0 で、0 の場合は 2 nd ビットは1になります。
- 2 nd ステップは 2 進数のすべてのビットに対して継続されます。
グレイコードからバイナリへの変換例
グレイ コード 01011 があり、これを 2 進数に変換したいとします。変換するには次の手順を実行する必要があります。
- 2 進数の 1 番目のビットはグレイ コードの MSB と同じです。グレイ コードの MSB は 0 なので、2 進数の MSB も 0 になります。
- さて、2については、 nd ちょっと、2を確認します nd グレイコードのビット。 2 nd グレイコードのビットは 1 なので、2 nd 2 進数のビットは 1 を変更したものです セント
- グレイ コードの次のビットは 0 です。 3 rd ビットは2と同じです nd グレイコードのビット、つまり 1。
- 4 番目 グレイコードのビットは 1 です。 4 番目 2 進数のビットは 0、つまり 3 の変更された数です rd
- 5 番目 グレイコードのビットは 1 です。 5 番目 2進数のビットは1です。それは 4 の変更された数字です 番目 2進数のビット。
- したがって、グレイコード 01011 の 2 進数は 01101 です。
4 ビット グレイ コードのビットは G とみなされます。 4 G 3 G 2 G 1 。さて、変換表から、
の カルノー図 (K-マップ) G 用 4 、G 3 、G 2、 とG 1 以下の通り: