O Código m-entre-n

Nos códigos m-entre-n, em uma palavra que contenha n bits, m são 1s e os restantes são 0s. Esse código é utilizado na detecção de erros em sinais de controle, onde os bits devem ser interpretados separadamente. Sua utilização normalmente é feita no modo não-separável, onde a palavra de código é formada pelos bits de informação entrelaçados com os bits de código.

O código m-entre-n separável necessita de bastante redundância para ser representado, pois no caso da palavra a ser representada possuir 4 bits (que representam 16 palavras diferentes), no mínimo 4 bits a mais de código são necessários formando o código 4-entre-8, que gera 70 palavras de código sendo que apenas 16 são necessárias. Para diminuir a redundância pode-se usar o código 3-entre-6 que vai gerar 20 palavras de código. No caso 4-entre-8, existem 54 palavras de código que fazem parte do subconjunto S (descrito anteriormente), sendo palavras erradas e que não podem ser detectadas. No caso 3-entre-6, o número de erros não detectáveis cai para 4. Uma maneira de melhorar o sistema seria usar um código 3-entre-5.

Um exemplo apresentado supõe um módulo de controle que fornece 4 sinais, com as seguintes informacões válidas: 1010, 1100, 1001, 0011, 1110, 1011, 0111 e 1101. Qualquer outro código representa um sinal de controle errado, e deve ser detectado. Se usarmos um código 4-entre-8, existirão 62 palavras que não serão detectadas como erradas. Com o uso de um código 3-entre-5, que produz apenas 10 palavras, apenas 2 não serão detectadas. Com o uso de um circuito simples, a detecção dessas duas palavras pode ser realizada.