Introdução
Os sistemas digitais atuam sob altas velocidades e respondem às variações realizadas nas entradas. Por conta disso, quando várias condições de entradas variam ao mesmo tempo, o sistema pode interpretar e reagir de forma errada. Por exemplo, quando temos que mudar um número binário, composto por 3 bits, do número 3 para o número 4 todos os 3 bits são alterados.
Com o intuito de reduzir esses erros de interpretação pelos circuitos digitais, Frank Gray desenvolveu o sistema de representação que carrega seu nome. No artigo de hoje vamos aprender como representar números binários através do Código Gray.
Código Gray
O princípio do código Gray é que apenas um bit deve mudar entre dois números sucessivos na sequência. Na sequência vamos ver como converter de Binário para Gray e vice-versa.
Binário para Gray
A conversão do código Gray em binário é feita conforme mostrado na Figura 1.
Primeiramente é preciso destacar que o MSB (Most Significant Bit – bit mais significativo) em Gray é sempre igual ao MSB em binário. Depois, comparamos o MSB binário com o próximo bit binário (comparar B2 com B1), a partir dessa comparação temos duas opções:
- Se forem iguais → G1 = 0
- Se forem diferentes → G1 = 1
Da mesma forma é feito com G0. Comparamos B1 com B0 e dessa comparações temos as opções:
- Se forem iguais → G0 = 0
- Se forem diferentes → G0 = 1
Na Tabela 1 temos na prática a codificação dos números binário de 3 bits para Gray.
| B2 | B1 | B0 | G2 | G1 | G0 |
| 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 0 | 1 | 1 |
| 0 | 1 | 1 | 0 | 1 | 0 |
| 1 | 0 | 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 1 | 1 | 1 |
| 1 | 1 | 0 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 | 0 | 0 |
Exemplo 1
O conceito serve para números binários de qualquer tamanho. Por exemplo, vejamos a conversão do número 1310 de binário para Gray.
Gray para Binário
De forma semelhante ocorre para a conversão de Gray para binário.
O MSB (Most Significant Bit – bit mais significativo) em binário será igual ao MSB em Gray. Depois, o cenário fica um pouco diferente. Para encontrar o próximo bit binário nós comparamos o bit binário da esquerda com o bit em código Gray e o resultado é semelhante ao visto anteriormente:
- Bits iguais → 0
- Bits diferentes → 1
Na Figura 3 temos o esquema da conversão de Gray para binário.
Exemplo 2
Como exemplo, vejamos a conversão do número 610 de Gray para binário.
Referências
TOCCI, R.; WIDMER, N.; MOSS, G. Sistemas Digitais – Princípios e Aplicações. [S.l.]: Pearson Education Limited, 2011.








