El código de Hamming es simplemente 2 o más bits de paridad sobre diferentes grupos de bits de datos, de modo que si dibuja un diagrama de venn de cada agrupación, encontrará que cada bit de datos pertenece a un grupo único de bits de paridad. De esta forma puedes identificar cualquier bit 1 por error. Por lo tanto, cualquier error de 1 bit es corregible.
Por definición del código de Hamming, las posiciones de bit de paridad están en las ubicaciones 2 a la potencia nula a nula. Así que los bits de paridad ocupan las posiciones 1, 2, 4, 8 ... posiciones.
Ejemplo:
position: 1 2 3 4 5 6 7 8...
bit type: P1 P2 D1 P3 D2 D3 D4 P4...
El primer bit de datos ocupa la tercera posición. Entonces, si seguimos la definición, 1 bit de datos necesita 2 bits de paridad. Realmente no vale la pena. Podemos colocar el siguiente bit de datos en la 5ª posición. Entonces 2 bits de datos necesitan 3 bits de paridad. Todavía no merece la pena. (En ambos casos, simplemente podemos enviar 1 bit de paridad con cada bit de datos, lo que le brinda al receptor la capacidad de detectar y corregir errores). Podemos colocar el siguiente bit de datos en la 6ª posición. Entonces 3 bits de datos solo necesitan 3 bits de paridad. Estamos en el punto de equilibrio con respecto al envío de 1 bit de paridad para cada bit de datos. Podemos colocar el siguiente bit de datos en la séptima posición. Así que 4 bits de datos solo necesitan 3 bits de paridad. No hasta que obtengamos 4 bits de datos, vemos una ventaja al usar el código de Hamming.
Entonces, a medida que construye la secuencia del código de Hamming (dada la secuencia de izquierda a derecha en el ejemplo anterior), necesita todos los bits de paridad a la izquierda del número requerido de bits de datos.
Le dejaré que haga una ecuación para calcular el número de bits de paridad necesarios.