U računalima moramo binarno pretvoriti u sivo, a sivo u binarno. To se može pretvoriti korištenjem dva pravila, naime pretvorbe u binarno u sivo i pretvorbe u sivo u binarno. U prvoj pretvorbi, MSB sivog koda stalno je ekvivalent MSB binarnog koda. Dodatni bitovi izlaza sivog koda mogu se dobiti pomoću koncepta logičkog ulaza EX-OR za binarne kodove u tom trenutnom indeksu, kao i raniji indeks. Ovdje MSB nije ništa drugo do najznačajniji dio. U prvoj pretvorbi, MSB binarnog koda stalno je ekvivalentan MSB-u određenog binarnog koda. Dodatni bitovi izlaza binarnog koda mogu se dobiti pomoću EX-OR logička vrata koncept provjerom sivih kodova na tom sadašnjem indeksu. Ako je trenutni bit sivog koda nula, tada nakon te kopirajte raniji binarni kôd, kao i kopirajte revers ranijeg bita binarnog koda. Ovaj članak razmatra pregled pretvarača koda koji uključuje pretvarač binarnog u sivi kôd, kao i pretvarač sivog u binarni kod.
Što je binarni kod?
Kod digitalnih računala kod koji se koristi na temelju binarnog brojevnog sustava poznat je kao binarni kod. Postoje dva moguća stanja poput UKLJUČENO / ISKLJUČENO koje su predstavljene kroz 0 i 1. Digitalni sustav koristi 10 znamenki, pri čemu svaka pozicija znamenke označava snagu 10. U binarnom sustavu svaka pozicija znamenke predstavlja snagu 2.
Signal binarnog koda uključuje niz električnih impulsa koji označavaju znakove, brojeve i operacije koje treba izvršiti. Uređaj sa satom koristi se za prijenos normalnih impulsa, kao i komponente poput tranzistora, UKLJUČENO / ISKLJUČENO kako bi protok inače blokirao signale. U binarnom kodu, svaki decimalni broj u rasponu od 0 do 9 može se označiti skupom 4-binarnih bitova / znamenki. Osnovne 4 aritmetičke operacije poput zbrajanja, oduzimanja, množenja i dijeljenja mogu se svesti na kombinacije osnovnih Booleovih algebarskih funkcija na binarnim brojevima.
Što je sivi kod?
Sivi kod ili RBC (reflektirani binarni kod) ili ciklički kod niz je binarnih brojevnih sustava. Glavni razlog za pozivanje ovog reflektiranog binarnog koda je da su početne N / 2 vrijednosti obrnutim redoslijedom u usporedbi s posljednjim N / 2 vrijednostima. U ovoj vrsti koda, dvije uzastopne vrijednosti mijenjaju se kroz jedan bit binarnih znamenki. Ti se kodovi uglavnom koriste u uobičajenom nizu binarnih brojeva koje generira hardver.
Binarni brojevi mogu uzrokovati pogreške nakon što se izvrši prijelaz s jednog broja na uzastopni. Ova vrsta koda u osnovi rješava ovaj problem mijenjanjem samo jednog bita nakon što se izvrši promjena između brojeva.
Ova vrsta koda izuzetno je lagana i ne ovisi o vrijednosti znamenke koja je navedena u cijeloj poziciji. Ova vrsta koda također se naziva cikličkim varijabilnim kodom jer promjena pojedine vrijednosti u njezinu uzastopnu vrijednost sadrži promjenu samo jednog bita.
Ovo je najpopularnije za jedinične kodove udaljenosti, međutim, nije prikladno za aritmetičke funkcije. Primjene sivog koda uključuju analogne u digitalne pretvarače i digitalnu komunikaciju za korekciju pogrešaka. Prvo, sivi kod nije lako razumjeti, međutim pretvara se u vrlo lako prepoznatljiv.
Pretvarač binarnog u sivi kod
Binarni kod vrlo je jednostavan prikaz podataka pomoću dvije vrijednosti kao što su 0 i 1, a uglavnom se koristi u svijetu računala. Binarni kôd može biti visoka (1) ili niska (0) vrijednost ili čak mijenjati vrijednost. Sivi kod ili reflektirani binarni kod procjenjuje prirodu binarnog koda koji je poredan s indikatorima za uključivanje i isključivanje, obično označenim s jedinicama i nulama. Ovi se kodovi koriste za preglednost, kao i za promjenu pogrešaka u binarnom sustavu komunikacije .
Pretvorba binarnog u sivi kod može se izvršiti pomoću a logički sklop . Sivi kôd je neponderirani kôd jer za položaj bita nije dodijeljena posebna težina. N-bitni kod može se postići reprodukcijom n-1 bitnog koda na osi nakon redova 2n-1, kao i postavljanje najznačajnijeg bita 0 preko osi s najznačajnijim bitom 1 ispod osi. Korak po korak generiranje sivog koda prikazano je u nastavku.

Logički krug pretvorbe u binarni u sivi kod
Ova metoda koristi Ex-OR vrata za izvedbu među binarnim bitovima. Sljedeći najbolji primjer bit će vrlo koristan za poznavanje pretvorbe binarnog u sivo. U ovoj metodi pretvorbe uklonite MSB bit sadašnjeg binarnog broja, jer je primarni bit ili MSB bit sivog kodnog broja sličan binarnom broju.
Da biste dobili ravne sive kodirane bitove za generiranje odgovarajuće sive kodirane znamenke za zadane binarne znamenke, dodajte primarnu znamenku ili MSB znamenku binarnog broja prema drugoj znamenci i zabilježite proizvod pored primarnog bita sivog koda i dodajte sljedeći binarni bit trećem bitu, a zatim zabilježite proizvod pored 2ndmalo sive šifre. Slično tome, slijedite ovaj postupak do konačnog binarnog bita, kao i bilježite ishode ovisno o tome Logički rad EX-OR za generiranje odgovarajuće binarne znamenke sivo kodirane.
Primjer pretvarača binarnog u sivi kod
Pretpostavimo da su znamenke binarnog koda bo, b1, b2, b3, dok se određeni Sivi kod može postići na temelju sljedećeg koncepta.

Primjer pretvorbe koda
Iz gornje operacije konačno možemo dobiti sive vrijednosti poput g3 = b3, g2 = b3 XOR b2, g1 = b2 XOR b1, g0 = b1 XOR b0.

Primjer pretvorbe
Na primjer, uzmite binarnu vrijednost b3, b2, b1, b0 = 1101 i pronađite sivi kod g3, g2, g1, g0 na temelju gornjeg koncepta
g3 = b3 = 1
g2 = b3 XOR b2 = 1 XOR 1 = 0
g1 = b2 XOR b1 = 1 XOR 0 = 1
g0 = b1 XOR b0 = 0 XOR 1 = 1
Konačni sivi kod za vrijednost binarnog 1101 je 1011
Tablica pretvarača binarnog u sivi kod
Decimalni broj | Binarni kod | Sivi kod |
0 | 0000 | 0000 |
1 | 0001 | 0001 |
dva | 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 |
jedanaest | 1011 | 1110 |
12 | 1100 | 1010 |
13 | 1101 | 1011 |
14 | 1110 | 1001 |
petnaest | 1111 | 1000 |
VHDL kod za pretvorbu binarnog u sivi kod je dan u nastavku.
BIBLIOTEKA ieee
KORISTITE ieee.std_logic_1164.ALL
entitet bin2gray je
port (bin: u std_logic_vector (3 downto 0) - binarni ulaz
G: van std_logic_vector (3 do 0) - sivi izlaz koda
)
kraj bin2gray
arhitektura gate_level bin2gray je
početi
–Xor vrata.
G (3)<= bin(3)
G (2)<= bin(3) xor bin(2)
G (1)<= bin(2) xor bin(1)
G (0)<= bin(1) xor bin(0)
kraj
Prednosti
The prednosti binarnog koda uključuju sljedeće.
- Glavna prednost upotrebe binarnog koda je što se on jednostavno označava elektroničkim uređajima
- Binarne podatke također je vrlo jednostavno pohraniti.
- Vrlo jednostavno označiti i kontrolirati elektronički i mehanički.
- Razlike u prikazima simbola mogu se povećati pa se mogućnost pogreške može smanjiti.
The nedostaci binarnog koda uključuju sljedeće.
- Potreban broj simbola može se povećati kako bi označavao zadani broj ukupnih sustava vrijednosti položaja.
- Ljudi ih ne mogu pročitati izuzetno učinkovito zbog njihove duljine i zbog zadanih vrijednosti brojeva deset-deset
- Koristi mnogo znamenki za označavanje bilo kojeg logičnog broja
Prijave
Primjene binarnog koda uključuju sljedeće.
- Binarni kodovi koriste se u telekomunikacijama, kao i za računanje za različite tehnike kodiranja podataka, poput znakovnih nizova do bitnih nizova. Širina koju koriste ove metode fiksna je, inače, žice promjenjive širine.
- To se koristi u računalnim jezicima, kao i u programiranju, jer računalni jezici uglavnom ovise o dvoznamenkastim brojevnim sustavima.
Pretvarač sive boje u binarni kod
Ova metoda pretvorbe sive u binarnu također koristi radni koncept logičkog ulaza EX-OR između bitova sive boje, kao i binarnih bitova. Sljedeći primjer s postupnim postupkom može vam pomoći da znate koncept pretvorbe sivog koda u binarni kôd.
Da biste promijenili sivi u binarni kôd, skinite MSB znamenku sivog kodnog broja, jer je primarna znamenka ili MSB sivog koda slična binarnoj znamenci.
Da bi dobio sljedeći ravni binarni bit, koristi XOR operaciju između primarnog bita ili MSB binarnog bita do sljedećeg bita sivog koda.

Logički krug pretvorbe sive boje u binarni kod
Slično tome, da bi dobio treći ravni binarni bit, koristi XOR operaciju između drugog bita ili MSB binarnog bita na treći MSD bit sivog koda i tako dalje.
Primjer pretvarača sive boje u binarni kod
Pretpostavimo Sivi kod znamenke g3, g2, g1, g0 dok su određene znamenke binarnog koda bo, b1, b2, b3 moguće postići na temelju sljedećeg koncepta.

Primjer pretvorbe
Iz gornje operacije konačno možemo dobiti binarne vrijednosti poput b3 = g3, b2 = b3 XOR g2, b1 = b2 XOR g1, b0 = b1 XOR g0.

Primjer pretvorbe koda
Na primjer, uzmite sivu vrijednost g3, g2, g1, g0 = 0011 i pronađite binarni kod b3, b2, b1, b0 na temelju gornjeg koncepta
b3 = g3 = 0
b2 = b3 XOR g2 = 0 XOR 0 = 0
b1 = b2 XOR g1 = 0 XOR 1 = 1
b0 = b1 XOR g0 = 1 XOR 1 = 0
Konačni binarni kod za vrijednost sive boje 0011 je 0010
Tabela s pretvaračem sive boje u binarni kod
Decimalni broj | Sivi kod | Binarni kod |
0 | 0000 | 0000 |
1 | 0001 | 0001 |
dva | 0010 | 0010 |
3 | 0011 | 0011 |
4 | 0110 | 0100 |
5 | 0111 | 0101 |
6 | 0101 | 0110 |
7 | 0100 | 0111 |
8 | 1100 | 1000 |
9 | 1101 | 1001 |
10 | 1111 | 1010 |
jedanaest | 1110 | 1011 |
12 | 1010 | 1100 |
13 | 1011 | 1101 |
14 | 1001 | 1110 |
petnaest | 1000 | 1111 |
Prednosti
The prednosti sivog koda uključuju sljedeće.
- Logički sklop se može smanjiti
- Koristi se za križanje domene sata
- Koristi se za minimiziranje pogreške tijekom promjene signala iz analognog u digitalni
- Jednom kad se koristi u genetskim algoritmima, pojava hamming zida može se smanjiti.
Mane
Nedostaci sivog koda uključuju sljedeće.
- Nije prikladno za aritmetičke funkcije
- Primjenjivo za nekoliko preciznih primjena
Prijave
Primjene sivog koda uključuju sljedeće.
- Koristi se u analogno-digitalnim pretvaračima
- U digitalnoj komunikaciji radi ispravljanja pogreške
- Smanjuje pogreške prilikom promjene signala iz analognog u digitalni.
- Matematičke zagonetke
- Minimizacija logičkog kruga
- Koristi se za komunikaciju između dviju domena sata
- Genetski algoritmi
- Davači položaja
VHDL kod za sivi kod u binarnu pretvorbu je dan u nastavku.
BIBLIOTEKA ieee
KORISTITE ieee.std_logic_1164.ALL
entitet grey2bin je
priključak (G: u std_logic_vector (3 do 0) - unos sivog koda
bin: out std_logic_vector (3 do 0) - binarni izlaz
)
kraj grey2bin
arhitektura gate_level od gray2bin je
početi
–Xor vrata.
ujutro (3)<= G(3)
ujutro (2)<= G(3) xor G(2)
am (1)<= G(3) xor G(2) xor G(1)
ujutro (0)<= G(3) xor G(2) xor G(1) xor G(0)
kraj
3-bitni pretvarač binarnog u sivi kod
Pretpostavimo binarne znamenke u 3-bitnom binarnom broju poput b0, b1, b2, gdje god je bit „b2“ MSB (najznačajniji bit), a bit „b0“ je LSB (najmanje značajan bit) binarnog znaka. Znamenke sivog koda su g0, g1, g2, gdje god je znamenka 'g2' MSB (najznačajniji bit), dok je znamenka 'g0' LSB (najmanje značajni bit) sivog koda.
Binarni kod - b2, b1, b0 | Sivi kod - g2, g1, g0 |
000 | 000 |
001 | 001 |
010 | 011 |
011 | 010 |
100 | 110 |
101 | 111 |
110 | 101 |
111 | 100 |
Dakle, logički izraz može se riješiti za pretvornik binarnog u sivi kod pomoću k-mape, možemo dobiti g2 = b2, g1 = b1⊕ b2 & g0 = b0 ⊕ b1. Isto tako, možemo promijeniti n-bitni binarni broj (bnb (n-1) ... b2 b1 b0) u sivi kod (gng (n-1) ... g2 g1 g0).
Za LSB (najmanje značajan bit)
g0 = b0⊕b1
g1 = b1⊕b2
g2 = b1⊕b2
g (n-1) = b (n-1) ⊕ bn, gn = bn.
Na primjer, pretvorite 111010 binarnih brojeva u sivi kôd.
Dakle, na temelju gornjeg algoritma,
g0 = b0 ⊕ b1 => 0 ⊕ 1 = 1
g1 = b1 ⊕ b2 = 1 ⊕ 0 = 1
g2 = b2 ⊕ b3 = 0 ⊕1 = 1
g3 = b3 ⊕ b4 = 1⊕1 = 0
g4 = b4 ⊕ b5 = 1 ⊕ 1 = 0
g5 = b5 = 1 = 1
Dakle, pretvorba binarnog u sivi kod bit će - 100111.
Pretvarač binarnog u sivi kod pomoću IC 7486
Pretvorba binarnog u sivo i sive u binarno može se izvršiti pomoću IC7486. Potrebne komponente za izradu su ploča, spojne žice, LED, otpornici, XOR (IC7486), prekidači s tipkama i baterija za napajanje.
Paket IC7486 uglavnom uključuje četiri XOR logička vrata, gdje će pinovi 7 i 14 pružiti napajanje svim logičkim vratima. O / ps jednog XOR ulaza povezan je s ulazom drugog logičkog ulaza unutar istog ili drugog čipa dok ne dijele sličan terminal uzemljenja.
Dakle, ovdje se radi o pretvaraču binarnog u sivi kod i pretvaraču sive u binarni kod. Iz gornjih podataka konačno to možemo zaključiti ovi pretvarači igraju bitnu ulogu u izvođenju različitih operacija digitalna elektronika kao i komunikacija između različitih brojevnih sustava. Primjeri pretvarača koda o kojima smo gore raspravljali mogu biti korisni za razumijevanje koncepta kako raditi ove izračune. Evo pitanja za vas, koje su primjene sivih kodova?