Conversor de código Gray
Converter
O código Gray (binário refletido) é uma ordenação de números binários em que dois valores sucessivos diferem em exatamente um bit. Essa propriedade de mudança de um único bit o torna valioso para encoders rotativos, mapas de Karnaugh e detecção de posição resistente a erros, porque não surgem valores intermediários transitórios quando vários bits mudariam ao mesmo tempo. O binário converte para Gray com g = b XOR (b >> 1); a decodificação percorre os bits com um XOR acumulado. Esta ferramenta converte em todas as direções: digite um número decimal, um valor binário ou um valor em código Gray e ela mostra as outras representações. Escolha uma largura de bits fixa para preencher a saída com zeros.
42101010111111| Decimal | Binário | Código Gray |
|---|---|---|
| 0 | 000 | 000 |
| 1 | 001 | 001 |
| 2 | 010 | 011 |
| 3 | 011 | 010 |
| 4 | 100 | 110 |
| 5 | 101 | 111 |
| 6 | 110 | 101 |
| 7 | 111 | 100 |
Binário → Gray: g = b XOR (b >> 1). Valores Gray consecutivos diferem em exatamente um bit. A largura de bits só preenche a saída com zeros.
Como usar
- Escolha se a entrada é decimal, binária ou código Gray.
- Digite o valor; as formas decimal, binária e Gray atualizam instantaneamente.
- Opcionalmente defina uma largura de bits (4/8/16/32) para preencher com zeros a saída binária e Gray.
Perguntas frequentes
- Para que serve o código Gray?
- Encoders de posição rotativos e lineares, ordenação de mapas de Karnaugh e qualquer sistema onde só um bit deva mudar entre estados adjacentes para evitar falhas durante as transições.
- Como o binário é convertido em código Gray?
- XOR do número com ele mesmo deslocado um bit à direita: gray = n ^ (n >> 1). A decodificação inverte com um XOR em cascata a partir do bit mais significativo.
- Por que binário 2 (10) e 3 (11) viram Gray 11 e 10?
- O código Gray garante diferença de um único bit entre valores consecutivos. De 2 para 3 só o último bit muda em binário, mas a sequência Gray se reflete para manter cada passo como uma mudança de um bit.
- Lida com números grandes?
- Sim — a conversão usa inteiros de precisão arbitrária, então valores muito acima de 32 ou 64 bits convertem com exatidão. A opção de largura de bits só preenche a exibição.
Ferramentas relacionadas
Conversor BCD (decimal codificado em binário)
Converte decimal de e para BCD 8421 — nibbles de 4 bits por dígito, bytes hex de BCD empacotado e verificação de validade BCD.
Conversor de Complemento de Dois (8–64 bits)
Insira um valor decimal, hex, binário ou octal e veja seu padrão de bits em complemento de dois de 8/16/32/64 bits, além das leituras com e sem sinal, hex, octal e complemento de um — no seu navegador.
Conversor IEEE 754 (32 e 64 bits)
Veja o layout exato de bits IEEE 754 de qualquer número em float32 e float64 — bits de sinal, expoente e mantissa, hex, o valor armazenado e o arredondamento — ou decodifique bits hex de volta a um número, tudo no seu navegador.
Conversor de Algarismos Romanos
Converta entre algarismos arábicos e romanos de 1 a 3999.
Conversor de Bases Numéricas
Converta números entre binário, octal, decimal e hexadecimal.
Conversor de Unidades
Converta comprimento, peso, temperatura, área, volume, velocidade e tempo.