Você está na página 1de 13

Código Hamming

BENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA


FACULTAD DE CIENCIAS DE LA ELECTRÓNICA

INTEGRANTES:
LOPEZ GUILLERMO VIRIDIANA
MÉNDEZ ZARAGOZA LEIDY DANIELA
PARADA LEZAMA JAIME
MATERIA:
PROGRAMACIÓN

PROFESORA:
JULIA CHÁVEZ CHÁVEZ
Historia

 Desde 1946 Richard Hamming trabajando en un modelo de


computadora de bajo tarjeta perforada fiabilidad.
 La frustración de Hamming le llevó a inventar el primer código de
corrección verdaderamente eficaz.
Objetivo

 El propósito del código es la transmisión de un mensaje de cuatro


bits con suficiente redundancia de modo que incluso si se produce
una corrupción, el receptor es capaz de corregir automáticamente
el error.
 En la práctica, contiene siete bits, cuatro componen el mensaje y
los otros tres se utilizan para detectar y corregir el error, si es
necesario.
 Código detector y corrector de errores, inventado por Richard Hamming
 En los datos codificados en haming se puede detectar errores en un bit y
corregirlos .
 No se distingue para errores de dos bits y de un bit (para lo que se usa Hamming
extendido)
Antes de el código Hamming
Antes de su creación se utilizaban códigos detectores de error como:

 Paridad: consiste en añadir un bit (de paridad) que indique si el número de los
bits de valor 1 en los datos precedentes es par o impar.
Un valor de paridad 1 indica que hay un numero impar de unos en los datos y
un valor de paridad de 0 indicada que hay un numero par de unos en los
datos.
 Dos entre cinco: se basa en que cada bloque de cinco bits (penta-bit) tuviera
exactamente dos uno, asegurando así que tenga una distancia Hamming. Igual
a dos. De este modo la computadora podría detectar posibles errores cuando
en su entrada no había exactamente dos unos en cada penta-bit.

 Repetición: consistía en repetir cada bit de datos varias veces para asegurarse
de que la transmisión era correcta. Un código con esta capacidad de reconstruir
el mensaje original en la presencia de errores se conoce como código corrector
de errores. Sin embargo no puede reparar correctamente todos los errores es
extremadamente ineficaz, pues reduce la velocidad de transmisión y su eficacia
cae drásticamente al aumentar el número de veces que cada bit se repite para
detectar y corregir más errores
Código Hamming

Si se añaden junto al mensaje más bits detectores-correctores de error y si esos bits se


pueden ordenar de modo que diferentes bits de error producen diferentes
resultados, entonces los bits erróneos podrían ser identificados.
Hamming desarrolló una nomenclatura para describir el sistema, incluyendo el
número de los bits de datos y el de los bits detectores-correctores de error en un
bloque.
Ejemplo:
Palabras del Código ASCII (7 bits) – código(8,7) si se toma en cuenta la paridad (solo
un bit 0 o1)
Hamming estudio los problemas que surgían al cambiar dos o más bits a la vez y
describió esto como "distancia" (distancia de Hamming: el número de bits que
tienen que cambiarse para transformar una palabra de código válida en otra
palabra de código válida).
ejemplo:
La distancia Hamming entre 1011101 y 1001001 es 2.
La distancia Hamming entre 2143896 y 2233796 es 3.
La distancia Hamming entre "tener" y "reses" es 3.
 Estaba interesado en solucionar simultáneamente dos problemas: aumentar la
distancia tanto como sea posible, a la vez que se aumentan al máximo los bits
de información. La clave de todos sus sistemas era intercalar entre los bits de
datos los de paridad.
Hamming (7,4)

 Este código consiste en agregar 3 bits de comprobación o paridad


por cada 4 bits de datos.
 Los bits de paridad son útiles para detectar errores, dependiendo
del tipo de paridad par o impar.
 Los bits de datos son los bits del mensaje original
Método para crear el código (7,4)

 Todos los bits cuya posición es potencia de 2 se utiliza como bits de


paridad.
 Los bits del resto de posiciones son utilizados como bits de datos.
 Cada bit de paridad se obtiene calculando la cantidad de 1s que
hay en los grupos de bits de datos.
GRUPOS DE LOS BITS DE COMPROBACIÓN

 Posición 1: salta 0, comprueba 1, salta 1, comprueba 1, etc.


 Posición 2: salta 1, comprueba 2, salta 2, comprueba 2, etc.
 Posición 4: salta 3, comprueba 4, salta 3, comprueba 4, etc.
 https://es.wikipedia.org/wiki/Paridad_(telecomunicaciones)
 http://ayudamosconocer.com/significados/letra-c/codigo-
hamming.php