ForHosting KIT · Matemática

Decodificador de código Gray

Cole uma leitura em código Gray e veja o número que ela representa: 0111 vira o binário 0101, ou seja, 5. Os zeros à esquerda são mantidos, o que ajuda a comparar leituras de largura fixa de um encoder. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve
Se você digitar
Texto
0111
Você obtém
Código Gray
0111
Binário
0101
Inteiro
5

Um decodificador de código Gray transforma uma palavra Gray binária refletida no inteiro não negativo comum que ela representa. Esta ferramenta aceita uma sequência formada apenas por zeros e uns, reconstrói a forma binária padrão e retorna o inteiro exato com as duas sequências para facilitar a conferência. Ela ajuda você a ler posições de encoders rotativos, validar exercícios de lógica digital, testar tabelas de firmware e estudar como transições Gray de um bit voltam à contagem normal.

O que um decodificador de código Gray calcula

O código Gray binário refletido identifica inteiros não negativos consecutivos de forma que valores adjacentes difiram em exatamente um bit. Essa transição única é útil em dispositivos nos quais vários sinais elétricos não conseguem mudar exatamente ao mesmo tempo. Uma palavra Gray não deve ser lida diretamente com os pesos posicionais do binário comum.

Para decodificá-la, o bit Gray mais significativo é copiado como primeiro bit binário. Cada bit binário seguinte é o OU exclusivo entre o bit binário anterior e o bit Gray atual. De modo equivalente, cada posição binária representa a paridade do prefixo Gray encerrado nessa posição.

A capacidade aplica esse XOR cumulativo da esquerda para a direita, monta a sequência binária padrão e depois a avalia como inteiro não negativo. Por exemplo, o código Gray 0111 vira o binário 0101 e, portanto, o inteiro 5. Os zeros à esquerda são mantidos nas sequências retornadas, o que simplifica a comparação de leituras de hardware com largura fixa.

A implementação cobre a variante binária refletida normalmente usada em encoders e lógica digital.

Entrada válida e saída exata

Envie a palavra Gray no campo text como uma sequência não vazia que contenha somente 0 e 1. Espaços, separadores, o prefixo 0b, outros algarismos decimais, sinais e texto explicativo não são permitidos. A validação rigorosa impede que um caractere acidental altere silenciosamente uma posição de hardware.

O contrato atual aceita até 53 bits para produzir um inteiro exato. Gray 0 retorna binário 0 e inteiro 0; Gray 1 retorna binário 1 e inteiro 1. Entradas idênticas sempre produzem objetos idênticos, pois não há rede, aleatoriedade, estado armazenado nem relógio.

Uso em hardware, ensino e testes

Use o formulário do navegador quando você precisar inspecionar rapidamente uma leitura Gray, demonstrar XOR cumulativo em uma aula ou conferir um cálculo manual sem criar um programa descartável. Em encoders rotativos ou lineares, mantenha a leitura original com largura fixa e compare o campo binary com a ordem de bits documentada pelo dispositivo, pois a sequência é interpretada com o bit mais significativo primeiro. Em testes automatizados, valide os três campos quando a largura importar ou somente integer quando bastar a posição.

Inclua casos com todos os bits zerados, um único um, zeros à esquerda, o maior valor previsto e sequências malformadas. O decodificador não corrige fiação invertida, não infere a ordem, não remove prefixos nem adivinha se uma sequência é Gray ou binária comum. O contrato é intencionalmente preciso: validar, decodificar exatamente e retornar um resultado estável em navegador, servidor e integração contínua.

Decodificar a posição de um encoder

Converta uma leitura Gray de largura fixa de um encoder rotativo ou linear na posição não negativa usada pela lógica da sua aplicação.

Conferir exercícios de lógica digital

Exiba a palavra binária reconstruída e o inteiro para verificar cada etapa do cálculo de decodificação por XOR cumulativo.

Qual tipo de código Gray é decodificado?

A ferramenta decodifica o código Gray binário refletido padrão com XOR cumulativo do bit mais significativo ao menos significativo.

Qual entrada é aceita?

Espaços, prefixos, sinais e outros algarismos são inválidos.

Por que a entrada é limitada a 53 bits?

Uma entrada maior pode exceder o intervalo seguro e é rejeitada para evitar arredondamento silencioso.

Como converto código Gray para binário à mão?

Copie o primeiro bit como está. Para cada bit seguinte, compare o bit Gray com o último bit binário escrito: anote 1 se forem diferentes e 0 se forem iguais. Assim 0111 vira 0101.

Por que encoders rotativos usam código Gray?

Porque posições vizinhas diferem em um único bit, o que importa em aparelhos em que vários sinais elétricos não mudam garantidamente no mesmo instante. Na decodificação, cada leitura volta a ser uma posição numérica comum.

Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.

POSThttps://api.kit.forhosting.com/numth/gray-code-decode

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/numth/gray-code-decode \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"0111"}'
{
  "text": "0111"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.gray_code_decode",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

max_chars53
HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Caracteres inválidos são rejeitados com clareza, e toda solicitação válida usa o mesmo algoritmo determinístico no navegador e na API.

Entrada válida e saída exata

Os aliases gray, gray_code e bits também são aceitos quando o seu cliente já utiliza um desses nomes. Números JavaScript e JSON só representam inteiros com precisão dentro do intervalo seguro; por isso, um resultado superior é rejeitado em vez de arredondado. Uma resposta correta contém gray_code com a largura enviada, binary com a palavra binária reconstruída e integer com o número JSON não negativo. Uma entrada inválida gera invalid_input sem resultado parcial enganoso.

Uso em hardware, ensino e testes

Use a API quando ferramentas de firmware, bancadas de teste, plataformas educacionais ou serviços de importação precisarem repetir a mesma operação estável. Cada item bem-sucedido pela API custa US$ 0,002; a execução no navegador atende às conferências interativas.

Criar fixtures de teste determinísticos

Gere resultados estáveis de Gray para inteiro em tabelas de firmware, simuladores, analisadores de dispositivos e asserções de integração contínua.

Os zeros à esquerda são preservados?

Sim. Os campos gray_code e binary preservam a largura enviada, enquanto integer retorna o valor numérico correspondente.

Quanto custa a API?

Cada item bem-sucedido pela API custa US$ 0,002. A execução interativa no navegador está disponível para conferências rápidas.

Ver a documentação completa do KIT →