A calculadora de código de Hamming gera a palavra-código a partir dos bits de dados, explicando o cálculo de cada bit de paridade, e faz o caminho inverso: recebe uma palavra com erro, calcula a síndrome e corrige o bit trocado.
Exemplo Resolvido: Hamming(7,4) com os Dados 1011
As posições ficam: p1 p2 d1 p4 d2 d3 d4 → p1 p2 1 p4 0 1 1.
- p1 verifica 3, 5, 7: 1 ⊕ 0 ⊕ 1 = 0
- p2 verifica 3, 6, 7: 1 ⊕ 1 ⊕ 1 = 1
- p4 verifica 5, 6, 7: 0 ⊕ 1 ⊕ 1 = 0
Palavra-código: 0110011.
Exemplo de Correção
Suponha que chegou 0110001 (o bit 6 trocou). Recalculando: p1 bate (0), p2 falha (1), p4 falha (1). Síndrome = 110 = 6. Basta inverter o bit 6 para recuperar 0110011 e os dados 1011.
Onde o Código de Hamming é Usado
- Memória RAM ECC de servidores, que corrige erros de bit causados por radiação e ruído.
- Comunicação com satélites e sondas espaciais.
- Base para códigos mais fortes, como os usados em SSDs, QR Codes e transmissões digitais.
Perguntas Frequentes
O que é o código de Hamming?
É um código corretor de erros criado por Richard Hamming em 1950. Ele adiciona bits de paridade em posições que são potências de 2 (1, 2, 4, 8...) e consegue descobrir e corrigir qualquer erro de um único bit na transmissão ou na memória.
Como calcular os bits de paridade?
Cada bit de paridade na posição p verifica todas as posições cujo número binário tem o bit p ligado. p1 verifica 1, 3, 5, 7...; p2 verifica 2, 3, 6, 7...; p4 verifica 4, 5, 6, 7... O valor é o XOR dos dados verificados (paridade par).
Como encontrar o bit errado?
Recalcule cada paridade no código recebido. Escreva 1 para as que falharam e 0 para as que bateram, da maior para a menor: esse número binário é a síndrome e indica a posição exata do bit errado. Síndrome 0 significa sem erro.
Quantos bits de paridade são necessários?
O menor r tal que 2^r ≥ m + r + 1, onde m é a quantidade de bits de dados. Para 4 bits de dados são 3 de paridade (Hamming 7,4); para 8 bits são 4 (Hamming 12,8); para 26 bits são 5 (Hamming 31,26).
