// Código Gray – sistema de numeração binária em que apenas 1 bit muda entre valores consecutivos
Apenas um bit muda entre valores consecutivos.
Reduz erros em conversões analógico–digitais.
O primeiro e o último valor também diferem em apenas um bit.
O código Gray (código binário refletido) é um sistema de numeração binária em que dois valores sucessivos diferem em apenas um bit. Ele é formado aplicando XOR entre cada bit e o bit anterior. Essa característica o torna ideal para encoders de posição e redução de erros em sistemas digitais.
Decimal | Binário | Código Gray 0 | 0000 | 0000 1 | 0001 | 0001 2 | 0010 | 0011 3 | 0011 | 0010 4 | 0100 | 0110 5 | 0101 | 0111 6 | 0110 | 0101 7 | 0111 | 0100 Observação: apenas 1 bit muda entre códigos Gray consecutivos
O código Gray, também conhecido como código binário refletido, é um sistema de numeração binária em que dois valores consecutivos diferem em apenas um bit. Ele é amplamente utilizado em sistemas digitais para evitar leituras ambíguas durante transições.
Para converter de binário para Gray: 1) mantenha o bit mais significativo (MSB) igual, 2) aplique XOR entre cada bit e o bit anterior. Fórmula: G[i] = B[i] XOR B[i-1]. Por exemplo, o binário 1011 torna-se Gray 1110.
No binário tradicional, vários bits podem mudar ao mesmo tempo, gerando valores intermediários inválidos. O código Gray garante que apenas um bit mude por vez, reduzindo leituras erradas em encoders rotativos.
O código Gray é usado em encoders rotativos, simplificação com mapas de Karnaugh, correção de erros em comunicações digitais, algoritmos genéticos e conversores analógico–digitais.