Códigos de Detecção de Erros

Um conceito importante para determinar códigos de correção e detecção de erros é o da distância de Hamming. Existem diversos tipos de códigos, alguns mais indicados para tratamento serial, outros para paralelo. Algumas palavras de código são construídas concatenando ao final dos bits de informação o código correspondente, estes códigos são ditos separáveis, como é o caso dos códigos de paridade. Nos códigos não-separáveis, a palavra de código é obtida com o entrelaçamento do código com a informação, o código em m-entre-n é um exemplo de código não-separável.

Um dos códigos mais conhecidos e utilizados é o de paridade e o código aritmético. Embora os códigos de paridade sejam muito utilizados para a transmissão e armazenamento de dados, eles não são preservados por operações aritméticas (Um código S e preservado por uma operação binária ~ if A,B pertence a S implica que A ~ B pertence a S).

Outro código bastante conhecido é o checksum que também faz parte dos separáveis.

Um código cíclico é definido pelo seu polinômio gerador G(X), que possui um grau (n-k). Dois códigos cíclicos conhecidos para detecção de erros são o CRC-12 e o CRC-CCITT .