Como calcular o código de Hamming

Escrito por jonathan ryan | Traduzido por lilian silva
  • Compartilhar
  • Tweetar
  • Compartilhar
  • Pin
  • E-mail
Como calcular o código de Hamming
Códigos de Hamming são simples de ser implementados e, muitas vezes, são utilizados para correção de erros (ram 3 image by PeteG from Fotolia.com)

Códigos de Hamming são usados ​​para inserir informações de correção de erros em fluxos de dados. Os códigos são concebidos de modo que um erro não só é detectado, mas também corrigido. Adicionar informações de correção de erros aumenta a quantidade de dados, mas aumenta também a confiabilidade das comunicações sobre os meios com altas taxas de erro.

A codificação de Hamming pode ser complicada de implementar, mas pode ser feita muito rapidamente usando truques aritméticos em nível de bits. Isto permite a criação de um sistema de correção de erros útil e de alta velocidade, para ser utilizado em aplicações embarcadas.

Nível de dificuldade:
Moderado

Outras pessoas estão lendo

Instruções

  1. 1

    Crie a palavra de dados. Qualquer bit com uma posição que for uma potência de dois (primeiro, segundo, quarto, etc.) deve ser reservado para informações de paridade. Use o tamanho que for necessário para que a palavra tenha os dados originais e os bits de paridade.

    Exemplo:

    1 1 0 1 0 0 1 0 transforma-se em _ _ 1 _ 1 0 1 _ 0 0 1 0

    Os bits originais permanecem na mesma ordem, mas foram espalhados para inserirmos os bits de paridade.

  2. 2

    Calcule o primeiro bit de paridade. Começando com o primeiro bit, lê-se um bit e, em seguida, pula-se um bit e repete-se o procedimento até o final. Enquanto isso conta-se o número de uns encontrado. Os bits de paridade não contam neste processo.

    Se o número de uns for par, defina o primeiro bit como zero. Caso contrário, defina-o para um.

    Exemplo:

    Bits 1, 3, 5, 7, 9 e 11 de _ _ 1 _ 1 0 1 _ 0 0 1 0, _11101, contêm quatro uns. Este é par, então, o primeiro bit é definido como zero: 0 _ 1 _ 1 0 1 _ 0 0 1 0

  3. 3

    Calcule os bits de paridade restantes. Começando com o segundo bit, lê-se dois bits e, em seguida, pula-se dois bits e repete-se o procedimento até o final. O quarto bit lê quatro bits, pula outros quatro, começando pelo bit quatro. O mesmo padrão é seguido por todos os bits de paridade, até todos serem computados.

    Exemplo:

    Bit 2: 0 _ 1 _ 1 0 1 _ 0 0 1 0 verifica _1, 01, 01, que contêm três uns, então o bit 2 é definido como um. Bit 4: _ 0 1 1 1 0 1 _ 0 0 1 0 verifica _101, 0, que contêm dois uns, então o bit 4 é definido como zero. Bit 8: 0 1 1 0 1 0 1 _ 0 0 1 0 verifica _0010, que contêm só um, então o bit 8 é definido como um.

    A palavra é, portanto, codificada como 011010110010.

  4. 4

    Confirme a palavra. Se uma palavra estiver corrompido, os bits de paridade não vão coincidir com o que é esperado. Para confirmar que a palavra não esteja corrompida, basta calcular os bits de paridade usando as etapas dois e três. Se os bits não forem iguais, grave suas posições.

  5. 5

    Corrija o bit errado. Se você encontrar bits de paridade incorretos, simplesmente some as posições dos bits. O valor da soma é a posição do bit incorreto. Troque o valor do bit nesta posição.

    Por exemplo, se os bits de paridade incorretos forem o um e o quatro, trocar o valor do quinto bit corrigirá o erro.

Dicas & Advertências

  • Adicionar um bit de paridade extra que calcula o número de zeros na palavra inteira torna possível a detecção de erros de dois-bits. Os códigos de Hamming normais proporcionam um resultado errado no caso de dois bits estarem errados.

Não perca

Filtro:
  • Geral
  • Artigos
  • Slides
  • Vídeos
Mostrar:
  • Mais relevantes
  • Mais lidos
  • Mais recentes

Nenhum artigo disponível

Nenhum slide disponível

Nenhum vídeo disponível