Pretvornik binarne kode v Gray je logično vezje, ki se uporablja za pretvorbo binarne kode v enakovredno kodo Gray. S postavitvijo MSB 1 pod os in MSB 1 nad os ter odražanjem (n-1) bitne kode o osi po 2n-1vrstic, lahko dobimo n-bitno sivo kodo.
brezplačen ipconfig
Tabela pretvorbe 4-bitne binarne v sivo kodo je naslednja:
Decimalno število | 4-bitna binarna koda | 4-bitna siva koda |
---|---|---|
ABCD | G1G2G3G4 | |
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 |
enajst | 1011 | 1110 |
12 | 1100 | 1010 |
13 | 1101 | 1011 |
14 | 1110 | 1001 |
petnajst | 1111 | 1000 |
V 4-bitni sivi kodi se 3-bitna koda odraža proti osi, narisani za 24-1-1th=8thvrstica.
Kako pretvoriti binarno v sivo kodo
- V Grayevi kodi bo MSB vedno enak 1. bitu danega binarnega števila.
- Za izvedbo 2ndbit sive kode, izvedemo izključni ali (XOR) 1. in 2ndbit binarnega števila. To pomeni, da če sta oba bita različna, bo rezultat en, drugače pa bo rezultat 0.
- Da bi dobili 3rdbit sive kode, moramo izvesti izključni ali (XOR) 2ndin 3rdbit binarnega števila. Postopek ostaja enak za 4thkošček Grayeve kode. Vzemimo primer, da bomo razumeli te korake.
Primer
Recimo, da imamo binarno število 01101, ki ga želimo pretvoriti v Grayovo kodo. Za izvedbo te pretvorbe so potrebni naslednji koraki:
- Kot vemo, da je 1stbit Grayeve kode je enak MSB binarnega števila. V našem primeru je MSB 0, torej MSB ali 1stbit sive kode je 0.
- Nato izvedemo operacijo XOR prvega in drugega binarnega števila. 1stbit je 0 in 2ndbit je 1. Oba bita sta različna, torej 2ndbit Grayeve kode je 1.
- Zdaj izvedemo XOR od 2ndmalo in 3rdbit binarnega števila. 2ndbit je 1 in 3rdbit je tudi 1. Ti biti so enaki, torej 3rdbit Grayeve kode je 0.
- Ponovno izvedite operacijo XOR 3rdin 4thbit binarnega števila. 3rdbit je 1 in 4thbit je 0. Ker so ti različni, je 4thbit Grayeve kode je 1.
- Na koncu izvedite XOR od 4thbit in 5thbit binarnega števila. 4thbit je 0 in 5thbit je 1. Oba bita sta različna, tako da je 5thbit Grayeve kode je 1.
- Siva koda binarnega števila 01101 je 01011.
Pretvorba sive v binarno kodo
Pretvornik sive v binarno kodo je logično vezje, ki se uporablja za pretvorbo sive kode v enakovredno binarno kodo. Za pretvorbo Grayeve kode v binarno število se uporablja naslednje vezje.
Tako kot pretvorba binarne v sivo kodo; je tudi zelo preprost postopek. Za pretvorbo Grayeve kode v binarno se uporabljajo naslednji koraki.
- Tako kot binarno v sivo, v sivo v binarno, 1stbit binarnega števila je podoben MSB Grayeve kode.
- 2ndbit binarnega števila je enak 1stbit binarnega števila, ko je 2ndbit Grayeve kode je 0; sicer pa 2ndbit je spremenjen bit 1stbit binarnega števila. Pomeni, če 1stbit binarne vrednosti je 1, nato 2ndbit je 0, in če je 0, potem 2ndbit bo 1.
- 2ndkorak se nadaljuje za vse bite binarnega števila.
Primer pretvorbe kode Gray v binarno
Recimo, da imamo kodo Graya 01011, ki jo želimo pretvoriti v binarno število. Za pretvorbo moramo izvesti naslednje korake:
- Prvi bit binarnega števila je enak MSB Grayeve kode. MSB Grayeve kode je 0, torej je MSB binarnega števila 0.
- Zdaj pa za 2ndmalo, preverimo 2ndkošček Grayeve kode. 2ndbit Grayeve kode je 1, torej 2ndbit binarnega števila je tisti, ki je spremenjeno število 1st
- Naslednji bit Grayeve kode je 0; 3rdbit je enak kot 2ndbit Grayeve kode, tj. 1.
- 4thbit Grayeve kode je 1; 4thbit binarnega števila je 0, ki je spremenjeno število 3rd
- 5thbit Grayeve kode je 1; 5thbit binarnega števila je 1; to je spremenjeno število 4thbit binarnega števila.
- Torej je binarno število Grayeve kode 01011 01101.
Biti 4-bitne Grayeve kode se obravnavajo kot G4G3G2G1. Zdaj iz pretvorbene tabele,
java pretvori int v niz
The Zemljevidi Karnaugh (K-zemljevidi) za G4, G3, G2,in G1so naslednji: