El método Hamming es un tipo de codificación por bloques.
En otros tiempos, las cartas podían llegar con errores ortográficos, mojadas, retrasadas o simplemente en ocasiones no llegaban a su destino.
En la comunicación mediante computadoras sucede algo parecido, es decir, la tecnología no se exonera de los errores que puedan aparecer al enviar información.
Se identifica, como en el teorema de Hamming, por los números K y Kc, según código de Hamming se denomina por
Este código, como el de bloques, emplea aritmética módulo 2.
Primero se debe conocer que es un error, que no es más que un dato que tiene m bits y se le agregan r bits de redundancia o de chequeo, por tanto, los bits a transmitir serán n = m + r. Existen métodos que detectan errores y otros que corrigen errores o ambos a la vez.
El decodificador entonces determina que la secuencia enviada es aquella del alfabeto generado, cuya distancia Hamming entre
Si dos palabras están separadas una distancia d, se requerirán de errores simples para convertir una en la otra.
En general hay 2m mensajes válidos pero no todos los 2n lo son.
dos secuencias binarias de la misma longitud i, j = 1,..., K, la distancia Hamming entre ellas es el número de símbolos en que difiere.
está dada por: donde ⊕ será la suma modular entre 2 secuencias de longitud iguales, no pueden ser de longitudes distintas.
Por ejemplo un ⊕ entre: El método Hamming es un tipo de codificación por bloques, que trabaja de la siguiente manera: cada vez que, y solamente cuando llegan al codificador k símbolos (mensaje), este envía al siguiente bloque, l símbolos (palabra código), dependientes únicamente de los k recibidos (una palabra código asociada a cada mensaje), con l > k. El ruido del canal se combate gracias a la redundancia (n − k) de la información.
Codificadores de se suelen utilizar como códigos externos, más cercanos a la fuente, cuando se utilizan en combinación con los continuos.
sea más larga que la distancia Hamming proveniente del error.
Por lo que el decodificar puede describirse como: “Elegir la palabra de código con la mínima distancia Hamming de la palabra recibida”.
Un código con todas las palabras distintas debe tener al menos una distancia de Hamming mínima.
Esto es porque, cuanto mayor sea la distancia, más variaciones deber producir ́el canal en la secuencia transmitida, para que en la decodificación se produzca un error al confundir la secuencia de entrada que generará la secuencia codificada.
Los Código Hamming tienen la misma dificultad que los códigos de bloque, pues solo ofrecen protección contra errores de bit simple, es decir errores de grado 1, y ofrecen una pequeña protección contra errores dispersos.
Además el decodificador, denominado de decisión remanente, recibe la señal cuantificada del demodulador sin importar cuan grande fue el error de la señal analógica recibida.
Estos n dígitos son conocidos dentro del código de Hamming como "dígitos de datos".
A continuación se le añaden p (cp-1,..., c2, c1, c0) dígitos denominados de control o paridad.