logo

Dvejetainio kodo konvertavimas į pilką kodą

Dvejetainio į pilką kodą konverteris yra loginė grandinė, naudojama dvejetainiam kodui konvertuoti į jam lygiavertį pilką kodą. Padėjus MSB 1 žemiau ašies ir MSB 1 virš ašies ir atspindint (n-1) bitų kodą apie ašį po 2n-1eilučių, galime gauti n bitų pilką kodą.

4 bitų dvejetainio į pilką kodą konvertavimo lentelė yra tokia:

Dešimtainis skaičius 4 bitų dvejetainis kodas 4 bitų pilkas kodas
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 m 1111
vienuolika 1011 m 1110
12 1100 1010 m
13 1101 1011 m
14 1110 1001
penkiolika 1111 1000

4 bitų pilkame kode 3 bitų kodas atsispindi ašyje, nubrėžtoje po 24-1-1th=8theilė.

Dvejetainio kodo konvertavimas į pilką kodą

Kaip dvejetainį kodą konvertuoti į pilką kodą

  • Pilkajame kode MSB visada bus toks pat kaip 1-asis duoto dvejetainio skaičiaus bitas.
  • Norėdami atlikti 2ndpilko kodo bitą, atliekame išskirtinį arba (XOR) 1-ąjį ir 2-ąjįnddvejetainio skaičiaus bitas. Tai reiškia, kad jei abu bitai yra skirtingi, rezultatas bus vienas, rezultatas bus 0.
  • Norėdami gauti 3rdpilko kodo bitą, turime atlikti išskirtinį arba (XOR) iš 2ndir 3rddvejetainio skaičiaus bitas. Procesas išlieka toks pat 4thšiek tiek pilkojo kodo. Paimkime pavyzdį, kad suprastume šiuos veiksmus.

Pavyzdys

Tarkime, kad turime dvejetainį skaičių 01101, kurį norime konvertuoti į pilką kodą. Norint atlikti šią konversiją, reikia atlikti šiuos veiksmus:

  • Kaip žinome, 1ŠvGray kodo bitas yra toks pat kaip dvejetainio skaičiaus MSB. Mūsų pavyzdyje MSB yra 0, taigi MSB arba 1Švpilko kodo dalis yra 0.
  • Toliau atliekame 1-ojo ir antrojo dvejetainio skaičiaus XOR operaciją. 1Švbitas yra 0, o 2ndbitas yra 1. Abu bitai yra skirtingi, todėl 2ndGray kodo bitas yra 1.
  • Dabar atliekame 2 XORndbitas ir 3rddvejetainio skaičiaus bitas. 2ndbitas yra 1, o 3rdbitai taip pat yra 1. Šie bitai yra vienodi, todėl 3rdGrey kodo bitas yra 0.
  • Dar kartą atlikite 3 XOR operacijąrdir 4thdvejetainio skaičiaus bitas. 3rdbitas yra 1, o 4thbitas yra 0. Kadangi jie skiriasi, 4thGray kodo bitas yra 1.
  • Galiausiai atlikite 4 XORthbitas ir 5thdvejetainio skaičiaus bitas. 4thbitas yra 0, o 5thbitas yra 1. Abu bitai yra skirtingi, todėl 5thGray kodo bitas yra 1.
  • Pilkas dvejetainio skaičiaus 01101 kodas yra 01011.
Dvejetainio kodo konvertavimas į pilką kodą

Pilkos kodo konvertavimas į dvejetainį kodą

Pilko į dvejetainį kodą konverteris yra loginė grandinė, kuri naudojama pilkajam kodui konvertuoti į lygiavertį dvejetainį kodą. Yra tokia grandinė, kuri naudojama pilkajam kodui konvertuoti į dvejetainį skaičių.

Dvejetainio kodo konvertavimas į pilką kodą

Visai kaip dvejetainio kodo konvertavimas į pilką kodą; tai taip pat labai paprastas procesas. Yra šie veiksmai, naudojami pilkajam kodui konvertuoti į dvejetainį.

  • Kaip nuo dvejetainio iki pilkos, nuo pilkos iki dvejetainės, 1Švdvejetainio skaičiaus bitas yra panašus į Gray kodo MSB.
  • 2nddvejetainio skaičiaus bitas yra toks pat kaip 1Švdvejetainio skaičiaus bitas, kai 2ndpilkojo kodo bitas yra 0; kitu atveju 2ndbitas pakeistas 1 bituŠvdvejetainio skaičiaus bitas. Tai reiškia, kad jei 1Švdvejetainio bitas yra 1, tada 2ndbitas yra 0, o jei jis yra 0, tada 2ndbūk 1.
  • 2ndžingsnis tęsiamas visiems dvejetainio skaičiaus bitams.
Dvejetainio kodo konvertavimas į pilką kodą

Pilko kodo konvertavimo į dvejetainį pavyzdį

Tarkime, kad turime Gray kodą 01011, kurį norime konvertuoti į dvejetainį skaičių. Norėdami konvertuoti, turime atlikti šiuos veiksmus:

java atvejo pareiškimas
  • 1-asis dvejetainio skaičiaus bitas yra toks pat kaip pilkojo kodo MSB. Gray kodo MSB yra 0, taigi dvejetainio skaičiaus MSB yra 0.
  • Dabar dėl 2ndbitą, patikriname 2ndšiek tiek pilkojo kodo. 2ndPilko kodo bitas yra 1, taigi 2nddvejetainio skaičiaus bitas yra tas, kuris pakeistas skaičiumi 1Šv
  • Kitas pilkojo kodo bitas yra 0; 3rdbitas yra toks pat kaip 2ndpilkojo kodo bitas, ty 1.
  • 4thpilkojo kodo bitas yra 1; 4thdvejetainio skaičiaus bitas yra 0, tai yra pakeistas skaičius 3rd
  • 5thpilkojo kodo bitas yra 1; 5thdvejetainio skaičiaus bitas yra 1; tai yra pakeistas skaičius 4thdvejetainio skaičiaus bitas.
  • Taigi pilkojo kodo 01011 dvejetainis skaičius yra 01101.

4 bitų pilkojo kodo bitai laikomi G4G3G2G1. Dabar iš konversijų lentelės

Dvejetainio kodo konvertavimas į pilką kodą

The Karnaugh žemėlapiai (K žemėlapiai) G4, G3, G2,ir G1yra tokie:

Dvejetainio kodo konvertavimas į pilką kodą
Dvejetainio kodo konvertavimas į pilką kodą
Dvejetainio kodo konvertavimas į pilką kodą
Dvejetainio kodo konvertavimas į pilką kodą