SlideShare una empresa de Scribd logo
1 de 4
Universidad de las Fuerzas Armadas ESPE, Extensión Latacunga 2014,Barrera Llanga Kevin Iván
1
(Simmons, 1992) (Peterson, 1961) (James,2010)CÓDIGOS DE DETECCIÓNDE
ERROR CRC Y HAMMING
Barrera Llanga Kevin Iván
Ingeniería Mecatrónica, Quinto “A”
Universidad de las Fuerzas Armadas ESPE, Extensión Latacunga
e-mail: kevinivancho@hotmail.com
Abstract: This article describes that is the code error
detection Hamming and CRC, each of its features,
functions, s step by step procedure, applications
developers and a brief example of each of these using
the knowledge acquired throughout this document. Also
some special characteristics of error detection codes will
be discussed.
Resumen: En este artículo se describe en que
consiste el código de detección de error Hamming y
CRC, cada una de sus características, funciones, s
procedimiento paso a paso, aplicaciones,creadores y un
breve ejemplo de cada una de estas utilizando los
conocimientos adquiridos a lo largo de este documento.
Además se expondrá algunas características especiales
de los códigos de detección de error.
PALABRAS CLAVE: CRC, Detección de error,
Hamming, Sistemas Digitales.
I. Introducción
En todo sistema se presente una cantidad de error,
por más mínima que esta sea se necesita una forma
correctiva, para esta corrección en los sistemas digitales
se utilizan códigos de detección de errores entre estos
esta el chequeo de redundancia cíclica o CRC y los
códigos Hamming. Estos poseen la capacidad de
detectar diferentes errores de transmisión o
perturbaciones producidos por factores como el ruido
térmico, impulsivo, redondeo, cruce de líneas, etc.
Corrigiéndolos y dándonos como resultado un sistema
optimo, evitando la perdida de datos y comunicación en
los sistemas digitales. (Andy, 2007)
II. Código de detección de error
Hamming
2.1 Richard Wesley Hamming
R.W. Hamming [Fig.1] fue un matemático
estadounidense que tubo un principal aporte en el
campo de la informática y telecomunicaciones
trabajando en temas relacionados con los mismos dando
como resultado entre sus principales contribuciones el
código Hamming, la distancia Hamming y la ventana
Hamming. Nació en Chicago en 1915, entre sus
aptitudes académicas obtuvo una licenciatura en la
universidad de su ciudad de origen, una maestría en la
Universidad de Nebraska yse doctoró en la Universidad
Urbana- Champaign.
Trabajo en el proyecto Manhattan más conocido
como la primera bomba atómica. Fue fundador y
presidente de la Asociación de Maquinaria en
Informática. Murió en Monterey, California el 7 de enero
de 1998. (James, 2010)
Fig. 1. Richard Wesley Hamming [1]
2.2 Código de detección de error
Hamming
Los códigos Hamming son códigos de detección de
error cuyo nombre proviene de su descubridor R.W.
Hamming,es uno de los tipos de código de bloques más
conocidos,entre sus características principales se puede
decir que es un código de distancia numero 3, es capaz
de detectar diferentes errores dobles ycorregir errores si
es un solo error simple es decir errores en un bit
enviados por un canal que es sensible al ruido. Un
ejemplo muy común de este método de corrección de
errores seria en redes WI-FI para la transmisión de
mensajes.
2.3 Distancia de Hamming
Como se decía este código se forma a partir de una
distancia mínima de 3,esto es así ya que con distancias
de 1 o 2 es incomodo para poder generar un código para
la detección de su error ya que si se tuviera el valor de 1
no existiera ningún otro valor para realizar una
comparación y si se tuviera una distancia de 2 puede
tener una corrección de error al existir una sola
comparación podrían pasar desapercibidos otros errores
existentes. Cuando mayor sea la diferencia menor será
Universidad de las Fuerzas Armadas ESPE, Extensión Latacunga 2014,Barrera Llanga Kevin Iván
2
la posibilidad de que un código se convierta en otro
código por una serie de errores. Esta distancia está
dada por la siguiente ecuación:
𝐷 𝑚 = 2𝑋 + 1 [Ec.1. Distancia mínima de Hamming]
En donde:
Dm= Es la distancia mínima para la corrección de datos
exceptuando 1 y 2 por motivos ya mencionados.
X= Son las líneas de los datos.
2 y 1= Son constantes utilizados en la ecuación.
Ejemplo: ¿Cuál es la distancia de Hamming entre
los números binarios 1011010 y 1001111?
La distancia de Hamming seria de 3 ya que los valores
son diferentes en 3 de sus dígitos. (Peterson, 1961)
2.4 Variables para la generación del
código Hamming
Las variables que se toman a consideración para el
código Hamming son:
n: el número de bits que posee el código original.
p: es el número de bits de paridad par generados en el
transmisor.
c: el número de bits de detectores de paridad par
generados por el receptor.
c=p ya que los bits de transmisor y receptor deben ser
los mismos.
𝑛 = 2 𝑐
− 𝑐 − 1 [Ec.2. Combinaciones de Hamming] [2]
2.5 Generación del código Hamming
En esencia el código Hamming propone generar
una tabla para asignar valores a las combinaciones que
se generen en los bits de paridad tanto como de
transmisor y receptor. El procedimiento es el siguiente:
1.- Los bits de posición que sea potencia de dos se
utilizan como bits de paridad, estas posiciones son 20
=
1, 21
= 2, 22
= 4, 23
= 8, 24
= 16, 25
= 32, etc.
2. Los bits que sobran en las posiciones son utilizados
como bits de datos.
3. Los bits de paridad se obtiene calculando la paridad
de alguno de los bits de datos. La posición del bit de
paridad determina la secuencia de los bits que
alternativamente comprueba y salta. (Simmons, 1992)
Tabla. 1. Código ASCII de 7 bits para generación del
código Hamming [3]
Ejemplo:Con un dato de 7 bits 1001110 calcule los bits
del código Hamming.
El nuevo dato de paridad seria 10100010110
2.6 Extensión del código de Hamming
La extension consiste en colocar en la tabla un
número adicional con el fin de encontrar más de un bit
dañado,esto lo logra mediante el desarrollo de matrices
estas matrices se computan para poder detectar y
corregir un bit dañado e informar cuando hay dos o más
bit dañados en el proceso. Se pueden dar 3 casos:
“1.- No hay error :Hamming =0, Paridad OK
2.- Un bit de error :Paridad Fallo entonces
a) Hamming = 0,P = incorrecto,en este caso se cambia
el valor del bit de paridad.
b) Hamming <> 0, corrijo según Hamming.
3.- Dos bit en error -> Paridad Ok, Hamming <> 0, por lo
tanto informo, NO corrijo” [Ref. Introducción a los
Sistemas Digitales, pág. 89] (Peterson, 1961)
III. Código de detección de error CRC
3.1 William Wesley Peterson
W. Wesley Peterson [Fig.2], nació en Michigan en
1924 fue un matemático y un científico, su pación fue la
informática, conocido por inventar el método de
comprobación de redundancia cíclica, por lo que fue
galardonado con un Premio Japón en 1999. Fue
profesor de Ciencias de la computación de la
universidad Manoa.Escribió varios libros sobre códigos
de corrección de errores, incluyendo la 2da edición
revisada de: Código de Corrección de Errores. Además
hizo investigaciones y publicaciones en los campos de
lenguajes de programación,programación de sistemas y
redes. Ganó el Premio Claude Shannon en 1981 y la
medalla Centenaria de IEEE en 1984. Falleció en mayo
de 2009 en Honolulu, Hawaii (James, 2010)
Fig. 1. W. Wesley Peterson [4]
Universidad de las Fuerzas Armadas ESPE, Extensión Latacunga 2014,Barrera Llanga Kevin Iván
3
3.2 Código de detección de error
CRC
El código de detección de error CRC también
conocido como verificación de redundancia cíclica es un
código el cual permite detectar errores usándose
mayormente en dispositivos por su simpleza de
implementación como en los dispositivos de
almacenamiento, telecomunicaciones y redes digitales,
con el fin de detectar y controlar cambios en los datos,
estos se generan en la mayoría de los casos de forma
accidental.
Se encarga de la protección de los datos en bloques
conocidos como tramas,el código de detección de error
CRC contiene datos repetidos con la trama, de manera
que los errores no sólo se pueden detectar sino que
además se pueden solucionar. Este método es muy
efectivo en la detección de errores en los sistemas de
comunicaciones,una de esas características es que no
permite la corrección de errores ya que se envía uno o
más caracteres adicionales de redundancia
denominados FCS ("frame check sequence") o BCC
("block check caracter"), que difieren fundamentalmente
en la forma de calcularlo. (Andy, 2007)
3.3 Definición de código de
detección de error CRC
El código CRC consiste en considerar a los bits a
ser transmitidos como un polinomio en x (para n bits el
orden es n-1) tal que la presencia de un término significa
un "1", y la ausencia, un "0", denotando polinomios
cuyos coeficientes se correspondan con la secuencia
binaria cuyo cálculo es una larga división de
computación en el que se descarta el cociente y el resto
se convierte en el resultado, con la diferencia que el
arrastre se produce con bits formando una familia de
códigos de bloques lineales.
3.4 Polinomio Generador Ideal
La aritmética con estos polinomios del CRC es de
módulo 2 sin llevar, es decir la adición y la sustracción
son equivalentes a la puerta XOR, la división la usa en
lugar de sustracción y A se divide entre B si el número
de bits es mayor de o igual a el número en A. Todos los
polinomios correspondientes a las palabras del código
cíclico, deben dividirse entre g(x) sin residuo siendo este
un divisor de x – 1 el bit mayor y el menor del generador
deben ser 1, es decir:
 Si 110001 son los bits a transmitir,
entonces el mensaje podrá ser
considerado como un polinomio U(x) tal
que: U(x) = X6
+ X5
+1
 Un ejemplo a la inversa seria si G(x)= X4
+
X3
+ X+1 seria igual a 11011. (James, 2010)
3.5 Polinomios Generadores más
Comunes
 CRC-12: X12
+ X11
+ X3
+ X2
+ X + 1
 CRC-16: X16
+ X15
+ X2
+ 1
 CRC CCITT V41: X16
+ X12
+ X5
+ 1 (este
código se utiliza en el procedimiento HDLC)
 CRC-32 (Ethernet): = X32
+ X26
+ X23
+ X22
+
X16
+ X12
+ X11
+ X10
+ X8
+ X7
+ X5
+ X4
+ X2
+
X + 1
 CRC ARPA: X24
+ X23
+ X17
+ X16
+ X15
+ X13
+
X11
+ X10
+ X9
+ X8
+ X5
+ X3
+ 1
3.6 Características principales de
CRC
 Se utiliza la división de números binarios.
 Tanto el emisor como el receptor conocen un
divisor común.
 Detecta todos los errores de 1 y 2 bits es decir
los errores simples y dobles.
 Detecta todos los errores de un “Burst” menor
que el grado de P(x)
 Detecta el 99 % de los errores de un “Burst”
mayor que el grado de P(x)
 Sirve para verificar la integridad, pero no para
saber si el mensaje es correcto.
 Cualquier bit se refleja en varios bits por un
tiempo considerable después que éste fue
transmitido. (Peterson, 1961)
3.7 Cálculo de código de detección
de error CRC
Pasos:
1.- Comience con el mensaje a codificar:
11010011101100
2.- Esta se rellena primero con ceros correspondientes a
la longitud n de bits de la CRC. Este es el primer cálculo
para calcular una de 3 bits CRC:
11010011101100 000
3.- Si el bit de entrada por encima del divisor poco más a
la izquierda es 0, no haga nada.
4.- Si el bit de entrada por encima del divisor de bits más
a la izquierda es 1, el divisor es XOR en la entrada.
5.- El divisor es entonces desplazado un poco hacia la
derecha, y el proceso se repite hasta que el divisor
alcanza el extremo de la derecha de la fila de entrada.
Todo el cálculo:
11010011101100 000.
La validez de un mensaje recibido puede ser fácilmente
verificado por realizar el cálculo anterior de nuevo, esta
vez con el valor de comprobación añadido en lugar de
ceros. El resto debe ser igual a cero si no hay errores
detectables.
11010011101100 100
Universidad de las Fuerzas Armadas ESPE, Extensión Latacunga 2014,Barrera Llanga Kevin Iván
4
La aritmética en modulo 2 se considera así:
Sumas binarias sin acarreos = Operación lógica XOR
Restas binarias sin acarreos = Operación lógica XOR
En donde:
T= Trama de (k + n) bits a transmitir, con n<k
n = Bits de comprobación
M = Mensaje de k bits, los primeros k bits de T
P= Patrón de n + 1 bits , este es el divisor elegido.Como
mínimo el bit más significativo y el menos significativo
debe ser 1.
𝑇 = 2 𝑛
∗
𝑀
𝑃
11010011101100 =entrada=M
1011 =divisor (4 bits)=P
-----------------------
01100011101100 = resultado
00000000001110=resultado de la multiplicación
1011=divisor
-----------------------
00000000000101=resto (3 bits) (James, 2010)
3.8 Especificaciones de código de
detección de error CRC
 “A veces una prefijos implementación de un
patrón de bits fija para el flujo de bits de
comprobación.
 Por lo general, una aplicación anexa n 0-bits a
la corriente de bits de comprobación antes de
que ocurra la división polinómica.
 A veces, una aplicación exclusiva-Ors un
patrón de bits fija en el resto de la división
polinómica.
 Orden de los bits: Algunos programas
consideran que el bit de orden inferior de cada
byte como "primero", el cual durante la división
polinómica significa "izquierda", lo cual es
contrario a nuestra comprensión habitual de
"orden inferior".
 Orden de bytes: Con CRC de varios bytes, no
puede haber confusión sobre si el byte
transmitido primero es el byte menos
significativo o el byte más significativo.
 La omisión del bit de orden del polinomio
divisor: Puesto que el bit de orden superior es
siempre 1,y puesto que un CRC de n bits debe
ser definido por un divisor de bits que se
desborda un registro de n bits, algunos autores
suponen que se es innecesario mencionar bit
de orden del divisor.”
[Ref.2. E-centro de Artigo, sección CRC, tema
especificación de código de detección de error.]
(Simmons, 1992)
IV. Conclusiones
El Código Hamming, es un sistema de detección y
corrección automática de errores en información
electrónica,el cual asocia una serie de bits de validación
o paridad a los bits de datos, de tal forma que una
alteración en cualquiera de esos bits de datos pueda ser
detectada y corregida adecuadamente.
El CRC es una función diseñada para detectar
cambios accidentales en datos de computadora y es
comúnmente usada en redes digitales y dispositivos de
almacenamiento (como discos duros) el cual utiliza
polinomios generadores y su medio de resolución es con
divisiones sucesivas.
Estos métodos para la detección de error son muy
útiles aunque cada uno se especializa en su campo,
ambos son necesarios en los sistemas de control ya que
gracias a estas correcciones de errores permite un
sistema mas estable y optimo en los códigos digitales.
V. Bibliografía
Simmons,G. (1992).A survey of information
Authentication. En G. Simmons, A survey of information
Authentication (pág.23). New York: IEEE Press.
Peterson.(1961).Cyclic Codes for Error Detection.En
Peterson,Cyclic Codes for Error Detection (pág.281).
Boston:ISSN.
James,P. (2010).Introduccion de los sistemas Digitales.
En P. James, Introduccion de los sistemas Digitales. Mc-
Graw.
Andy, B. (2007).Comunicacion Digitales.En B. Andy,
Comunicacion Digitales. Marcombo.
ezp1-
espe.edu.ec:2050/lib/espesp/docDetail.action?DocID=10
515233&p00=codigo+hamming

Más contenido relacionado

La actualidad más candente

Ambientes de servicios, negocios, industria y comercio electrónico
Ambientes de servicios, negocios, industria y comercio electrónico Ambientes de servicios, negocios, industria y comercio electrónico
Ambientes de servicios, negocios, industria y comercio electrónico Carlos Rangel Hernández
 
Diferencias entre arquitectura y organización
Diferencias entre arquitectura y organizaciónDiferencias entre arquitectura y organización
Diferencias entre arquitectura y organizaciónAngel Aguilar
 
Protocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modemProtocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modemMirna L. Torres Garcia
 
Protocolos enrutamiento rip y rpt.ppt renovado
Protocolos enrutamiento rip y rpt.ppt renovadoProtocolos enrutamiento rip y rpt.ppt renovado
Protocolos enrutamiento rip y rpt.ppt renovadoElvis Barahona Alvarado
 
Clase 5 -_interbloqueo
Clase 5 -_interbloqueoClase 5 -_interbloqueo
Clase 5 -_interbloqueovictormchacon
 
protocolo TCP/IP
protocolo TCP/IPprotocolo TCP/IP
protocolo TCP/IPComdat4
 
Transferencia de datos (buses)
Transferencia de datos (buses)Transferencia de datos (buses)
Transferencia de datos (buses)jodete culero
 
Capa de enlace de datos
Capa de enlace de datosCapa de enlace de datos
Capa de enlace de datosJorge Arroyo
 
Métodos para la detección y corrección de errores
Métodos para la detección y corrección de erroresMétodos para la detección y corrección de errores
Métodos para la detección y corrección de erroresDaniel Huerta Cruz
 
Protocolos hdlc expo
Protocolos hdlc expoProtocolos hdlc expo
Protocolos hdlc expoFacebook
 
Segmetación de instrucciones
Segmetación de instruccionesSegmetación de instrucciones
Segmetación de instruccionesLely
 
maquinas de turing
maquinas de turingmaquinas de turing
maquinas de turingAnel Sosa
 
Programación lógica y funcional
Programación lógica y funcionalProgramación lógica y funcional
Programación lógica y funcionalAlejandra MA
 
Control de flujo en Telecomunicaciones
Control de flujo en TelecomunicacionesControl de flujo en Telecomunicaciones
Control de flujo en TelecomunicacionesDaniel Morales
 
Conmutacion de circuitos y paquetes
Conmutacion de circuitos y paquetesConmutacion de circuitos y paquetes
Conmutacion de circuitos y paquetesJarvey Gonzalez
 

La actualidad más candente (20)

Ambientes de servicios, negocios, industria y comercio electrónico
Ambientes de servicios, negocios, industria y comercio electrónico Ambientes de servicios, negocios, industria y comercio electrónico
Ambientes de servicios, negocios, industria y comercio electrónico
 
Diferencias entre arquitectura y organización
Diferencias entre arquitectura y organizaciónDiferencias entre arquitectura y organización
Diferencias entre arquitectura y organización
 
Protocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modemProtocolos, estandares y tipos de modem
Protocolos, estandares y tipos de modem
 
Protocolos enrutamiento rip y rpt.ppt renovado
Protocolos enrutamiento rip y rpt.ppt renovadoProtocolos enrutamiento rip y rpt.ppt renovado
Protocolos enrutamiento rip y rpt.ppt renovado
 
Clase 5 -_interbloqueo
Clase 5 -_interbloqueoClase 5 -_interbloqueo
Clase 5 -_interbloqueo
 
protocolo TCP/IP
protocolo TCP/IPprotocolo TCP/IP
protocolo TCP/IP
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
 
Transferencia de datos (buses)
Transferencia de datos (buses)Transferencia de datos (buses)
Transferencia de datos (buses)
 
Modo de transferencia asíncrona (atm)
Modo de transferencia asíncrona (atm)Modo de transferencia asíncrona (atm)
Modo de transferencia asíncrona (atm)
 
U3S1: Buses de Comunicación (aspectos generales)
U3S1: Buses de Comunicación (aspectos generales)U3S1: Buses de Comunicación (aspectos generales)
U3S1: Buses de Comunicación (aspectos generales)
 
Capa de enlace de datos
Capa de enlace de datosCapa de enlace de datos
Capa de enlace de datos
 
Métodos para la detección y corrección de errores
Métodos para la detección y corrección de erroresMétodos para la detección y corrección de errores
Métodos para la detección y corrección de errores
 
Modos de direccionamiento y formatos
Modos de direccionamiento y formatosModos de direccionamiento y formatos
Modos de direccionamiento y formatos
 
Protocolos hdlc expo
Protocolos hdlc expoProtocolos hdlc expo
Protocolos hdlc expo
 
Modelo sna
Modelo snaModelo sna
Modelo sna
 
Segmetación de instrucciones
Segmetación de instruccionesSegmetación de instrucciones
Segmetación de instrucciones
 
maquinas de turing
maquinas de turingmaquinas de turing
maquinas de turing
 
Programación lógica y funcional
Programación lógica y funcionalProgramación lógica y funcional
Programación lógica y funcional
 
Control de flujo en Telecomunicaciones
Control de flujo en TelecomunicacionesControl de flujo en Telecomunicaciones
Control de flujo en Telecomunicaciones
 
Conmutacion de circuitos y paquetes
Conmutacion de circuitos y paquetesConmutacion de circuitos y paquetes
Conmutacion de circuitos y paquetes
 

Destacado

Fonctionnalités
FonctionnalitésFonctionnalités
FonctionnalitésDralkcib
 
Discapacidad visual - Software para personas con discapacidad
Discapacidad visual - Software para personas con discapacidadDiscapacidad visual - Software para personas con discapacidad
Discapacidad visual - Software para personas con discapacidadFernando Maquera
 
Inversor con pwm y panel solar
Inversor con pwm y panel solarInversor con pwm y panel solar
Inversor con pwm y panel solarKevin Barrera
 
Presentación Segunda Parte
Presentación Segunda PartePresentación Segunda Parte
Presentación Segunda ParteJosé Fung
 
Comunicado nacional 19.10.16
Comunicado nacional 19.10.16Comunicado nacional 19.10.16
Comunicado nacional 19.10.16Marcos Roa
 
Modulo del curso programación I
Modulo del curso programación IModulo del curso programación I
Modulo del curso programación IJosé Fung
 
LSC Soccer Weekly Release (10/19/16)
LSC Soccer Weekly Release (10/19/16)LSC Soccer Weekly Release (10/19/16)
LSC Soccer Weekly Release (10/19/16)lscmedia
 
Ruta de los castillos del vinalopó presentación - pdf.pptx
Ruta de los castillos del vinalopó   presentación - pdf.pptxRuta de los castillos del vinalopó   presentación - pdf.pptx
Ruta de los castillos del vinalopó presentación - pdf.pptxJuan Diego Martí Durà
 
Mediación Pedagogica Plan
Mediación Pedagogica PlanMediación Pedagogica Plan
Mediación Pedagogica PlanJosé Fung
 
Historia de la producción musical
Historia de la producción musicalHistoria de la producción musical
Historia de la producción musicalbussinessband
 
Producción de música por computadora
Producción de música por computadoraProducción de música por computadora
Producción de música por computadorabussinessband
 
Software libre para miembros de venenux panamá
Software libre para miembros de venenux panamáSoftware libre para miembros de venenux panamá
Software libre para miembros de venenux panamáJosé Fung
 

Destacado (19)

Fonctionnalités
FonctionnalitésFonctionnalités
Fonctionnalités
 
Discapacidad visual - Software para personas con discapacidad
Discapacidad visual - Software para personas con discapacidadDiscapacidad visual - Software para personas con discapacidad
Discapacidad visual - Software para personas con discapacidad
 
Inversor con pwm y panel solar
Inversor con pwm y panel solarInversor con pwm y panel solar
Inversor con pwm y panel solar
 
Vru84.Residential portafolio
Vru84.Residential portafolioVru84.Residential portafolio
Vru84.Residential portafolio
 
Presentación Segunda Parte
Presentación Segunda PartePresentación Segunda Parte
Presentación Segunda Parte
 
Comunicado nacional 19.10.16
Comunicado nacional 19.10.16Comunicado nacional 19.10.16
Comunicado nacional 19.10.16
 
Banco de preguntas
Banco de preguntasBanco de preguntas
Banco de preguntas
 
Modulo del curso programación I
Modulo del curso programación IModulo del curso programación I
Modulo del curso programación I
 
Fuerza de roce
Fuerza de roceFuerza de roce
Fuerza de roce
 
Radiación
RadiaciónRadiación
Radiación
 
LSC Soccer Weekly Release (10/19/16)
LSC Soccer Weekly Release (10/19/16)LSC Soccer Weekly Release (10/19/16)
LSC Soccer Weekly Release (10/19/16)
 
Contact us
Contact usContact us
Contact us
 
Ruta de los castillos del vinalopó presentación - pdf.pptx
Ruta de los castillos del vinalopó   presentación - pdf.pptxRuta de los castillos del vinalopó   presentación - pdf.pptx
Ruta de los castillos del vinalopó presentación - pdf.pptx
 
Mediación Pedagogica Plan
Mediación Pedagogica PlanMediación Pedagogica Plan
Mediación Pedagogica Plan
 
Historia de la producción musical
Historia de la producción musicalHistoria de la producción musical
Historia de la producción musical
 
Sl
SlSl
Sl
 
Etica beatriz
Etica  beatrizEtica  beatriz
Etica beatriz
 
Producción de música por computadora
Producción de música por computadoraProducción de música por computadora
Producción de música por computadora
 
Software libre para miembros de venenux panamá
Software libre para miembros de venenux panamáSoftware libre para miembros de venenux panamá
Software libre para miembros de venenux panamá
 

Similar a error crc y hamming (20)

Código de Hamming
Código de Hamming Código de Hamming
Código de Hamming
 
Lecture 3 codificación fuente
Lecture 3 codificación fuenteLecture 3 codificación fuente
Lecture 3 codificación fuente
 
Cap 3 capa_enlace
Cap 3 capa_enlaceCap 3 capa_enlace
Cap 3 capa_enlace
 
Capa de Enlace de Red (UFT) Mauricio Yepez
Capa de Enlace de Red (UFT) Mauricio YepezCapa de Enlace de Red (UFT) Mauricio Yepez
Capa de Enlace de Red (UFT) Mauricio Yepez
 
TRANSMISION DE DATOS
TRANSMISION DE DATOSTRANSMISION DE DATOS
TRANSMISION DE DATOS
 
Detección de errores CRC
Detección de errores CRCDetección de errores CRC
Detección de errores CRC
 
Teoría de códigos saira isaac
Teoría de códigos   saira isaacTeoría de códigos   saira isaac
Teoría de códigos saira isaac
 
Control de Enlace de Datos.
Control de Enlace de Datos.Control de Enlace de Datos.
Control de Enlace de Datos.
 
Control de Enlace de Datos.
Control de Enlace de Datos. Control de Enlace de Datos.
Control de Enlace de Datos.
 
Mandala grupos y codigos
Mandala grupos y codigosMandala grupos y codigos
Mandala grupos y codigos
 
Código binario
Código binarioCódigo binario
Código binario
 
PROTOCOLOS Y SERVICIOS INFORMÁTICOS
PROTOCOLOS  Y SERVICIOS INFORMÁTICOS PROTOCOLOS  Y SERVICIOS INFORMÁTICOS
PROTOCOLOS Y SERVICIOS INFORMÁTICOS
 
PROTOCOLOS Y SERVICIOS INFORMÁTICOS
PROTOCOLOS  Y SERVICIOS INFORMÁTICOS PROTOCOLOS  Y SERVICIOS INFORMÁTICOS
PROTOCOLOS Y SERVICIOS INFORMÁTICOS
 
Transmisión de datos
Transmisión de datosTransmisión de datos
Transmisión de datos
 
Teoría de códigos
Teoría de códigosTeoría de códigos
Teoría de códigos
 
Codigos binarios
Codigos binariosCodigos binarios
Codigos binarios
 
Detección y Corrección de errores
Detección y Corrección de erroresDetección y Corrección de errores
Detección y Corrección de errores
 
Ingeneria De Software
Ingeneria De SoftwareIngeneria De Software
Ingeneria De Software
 
Comunicacion de datos
Comunicacion de datosComunicacion de datos
Comunicacion de datos
 
Mapa conceptual E.D (ll)
Mapa conceptual E.D (ll)Mapa conceptual E.D (ll)
Mapa conceptual E.D (ll)
 

Último

El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..RobertoGumucio2
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 

Último (20)

El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 

error crc y hamming

  • 1. Universidad de las Fuerzas Armadas ESPE, Extensión Latacunga 2014,Barrera Llanga Kevin Iván 1 (Simmons, 1992) (Peterson, 1961) (James,2010)CÓDIGOS DE DETECCIÓNDE ERROR CRC Y HAMMING Barrera Llanga Kevin Iván Ingeniería Mecatrónica, Quinto “A” Universidad de las Fuerzas Armadas ESPE, Extensión Latacunga e-mail: kevinivancho@hotmail.com Abstract: This article describes that is the code error detection Hamming and CRC, each of its features, functions, s step by step procedure, applications developers and a brief example of each of these using the knowledge acquired throughout this document. Also some special characteristics of error detection codes will be discussed. Resumen: En este artículo se describe en que consiste el código de detección de error Hamming y CRC, cada una de sus características, funciones, s procedimiento paso a paso, aplicaciones,creadores y un breve ejemplo de cada una de estas utilizando los conocimientos adquiridos a lo largo de este documento. Además se expondrá algunas características especiales de los códigos de detección de error. PALABRAS CLAVE: CRC, Detección de error, Hamming, Sistemas Digitales. I. Introducción En todo sistema se presente una cantidad de error, por más mínima que esta sea se necesita una forma correctiva, para esta corrección en los sistemas digitales se utilizan códigos de detección de errores entre estos esta el chequeo de redundancia cíclica o CRC y los códigos Hamming. Estos poseen la capacidad de detectar diferentes errores de transmisión o perturbaciones producidos por factores como el ruido térmico, impulsivo, redondeo, cruce de líneas, etc. Corrigiéndolos y dándonos como resultado un sistema optimo, evitando la perdida de datos y comunicación en los sistemas digitales. (Andy, 2007) II. Código de detección de error Hamming 2.1 Richard Wesley Hamming R.W. Hamming [Fig.1] fue un matemático estadounidense que tubo un principal aporte en el campo de la informática y telecomunicaciones trabajando en temas relacionados con los mismos dando como resultado entre sus principales contribuciones el código Hamming, la distancia Hamming y la ventana Hamming. Nació en Chicago en 1915, entre sus aptitudes académicas obtuvo una licenciatura en la universidad de su ciudad de origen, una maestría en la Universidad de Nebraska yse doctoró en la Universidad Urbana- Champaign. Trabajo en el proyecto Manhattan más conocido como la primera bomba atómica. Fue fundador y presidente de la Asociación de Maquinaria en Informática. Murió en Monterey, California el 7 de enero de 1998. (James, 2010) Fig. 1. Richard Wesley Hamming [1] 2.2 Código de detección de error Hamming Los códigos Hamming son códigos de detección de error cuyo nombre proviene de su descubridor R.W. Hamming,es uno de los tipos de código de bloques más conocidos,entre sus características principales se puede decir que es un código de distancia numero 3, es capaz de detectar diferentes errores dobles ycorregir errores si es un solo error simple es decir errores en un bit enviados por un canal que es sensible al ruido. Un ejemplo muy común de este método de corrección de errores seria en redes WI-FI para la transmisión de mensajes. 2.3 Distancia de Hamming Como se decía este código se forma a partir de una distancia mínima de 3,esto es así ya que con distancias de 1 o 2 es incomodo para poder generar un código para la detección de su error ya que si se tuviera el valor de 1 no existiera ningún otro valor para realizar una comparación y si se tuviera una distancia de 2 puede tener una corrección de error al existir una sola comparación podrían pasar desapercibidos otros errores existentes. Cuando mayor sea la diferencia menor será
  • 2. Universidad de las Fuerzas Armadas ESPE, Extensión Latacunga 2014,Barrera Llanga Kevin Iván 2 la posibilidad de que un código se convierta en otro código por una serie de errores. Esta distancia está dada por la siguiente ecuación: 𝐷 𝑚 = 2𝑋 + 1 [Ec.1. Distancia mínima de Hamming] En donde: Dm= Es la distancia mínima para la corrección de datos exceptuando 1 y 2 por motivos ya mencionados. X= Son las líneas de los datos. 2 y 1= Son constantes utilizados en la ecuación. Ejemplo: ¿Cuál es la distancia de Hamming entre los números binarios 1011010 y 1001111? La distancia de Hamming seria de 3 ya que los valores son diferentes en 3 de sus dígitos. (Peterson, 1961) 2.4 Variables para la generación del código Hamming Las variables que se toman a consideración para el código Hamming son: n: el número de bits que posee el código original. p: es el número de bits de paridad par generados en el transmisor. c: el número de bits de detectores de paridad par generados por el receptor. c=p ya que los bits de transmisor y receptor deben ser los mismos. 𝑛 = 2 𝑐 − 𝑐 − 1 [Ec.2. Combinaciones de Hamming] [2] 2.5 Generación del código Hamming En esencia el código Hamming propone generar una tabla para asignar valores a las combinaciones que se generen en los bits de paridad tanto como de transmisor y receptor. El procedimiento es el siguiente: 1.- Los bits de posición que sea potencia de dos se utilizan como bits de paridad, estas posiciones son 20 = 1, 21 = 2, 22 = 4, 23 = 8, 24 = 16, 25 = 32, etc. 2. Los bits que sobran en las posiciones son utilizados como bits de datos. 3. Los bits de paridad se obtiene calculando la paridad de alguno de los bits de datos. La posición del bit de paridad determina la secuencia de los bits que alternativamente comprueba y salta. (Simmons, 1992) Tabla. 1. Código ASCII de 7 bits para generación del código Hamming [3] Ejemplo:Con un dato de 7 bits 1001110 calcule los bits del código Hamming. El nuevo dato de paridad seria 10100010110 2.6 Extensión del código de Hamming La extension consiste en colocar en la tabla un número adicional con el fin de encontrar más de un bit dañado,esto lo logra mediante el desarrollo de matrices estas matrices se computan para poder detectar y corregir un bit dañado e informar cuando hay dos o más bit dañados en el proceso. Se pueden dar 3 casos: “1.- No hay error :Hamming =0, Paridad OK 2.- Un bit de error :Paridad Fallo entonces a) Hamming = 0,P = incorrecto,en este caso se cambia el valor del bit de paridad. b) Hamming <> 0, corrijo según Hamming. 3.- Dos bit en error -> Paridad Ok, Hamming <> 0, por lo tanto informo, NO corrijo” [Ref. Introducción a los Sistemas Digitales, pág. 89] (Peterson, 1961) III. Código de detección de error CRC 3.1 William Wesley Peterson W. Wesley Peterson [Fig.2], nació en Michigan en 1924 fue un matemático y un científico, su pación fue la informática, conocido por inventar el método de comprobación de redundancia cíclica, por lo que fue galardonado con un Premio Japón en 1999. Fue profesor de Ciencias de la computación de la universidad Manoa.Escribió varios libros sobre códigos de corrección de errores, incluyendo la 2da edición revisada de: Código de Corrección de Errores. Además hizo investigaciones y publicaciones en los campos de lenguajes de programación,programación de sistemas y redes. Ganó el Premio Claude Shannon en 1981 y la medalla Centenaria de IEEE en 1984. Falleció en mayo de 2009 en Honolulu, Hawaii (James, 2010) Fig. 1. W. Wesley Peterson [4]
  • 3. Universidad de las Fuerzas Armadas ESPE, Extensión Latacunga 2014,Barrera Llanga Kevin Iván 3 3.2 Código de detección de error CRC El código de detección de error CRC también conocido como verificación de redundancia cíclica es un código el cual permite detectar errores usándose mayormente en dispositivos por su simpleza de implementación como en los dispositivos de almacenamiento, telecomunicaciones y redes digitales, con el fin de detectar y controlar cambios en los datos, estos se generan en la mayoría de los casos de forma accidental. Se encarga de la protección de los datos en bloques conocidos como tramas,el código de detección de error CRC contiene datos repetidos con la trama, de manera que los errores no sólo se pueden detectar sino que además se pueden solucionar. Este método es muy efectivo en la detección de errores en los sistemas de comunicaciones,una de esas características es que no permite la corrección de errores ya que se envía uno o más caracteres adicionales de redundancia denominados FCS ("frame check sequence") o BCC ("block check caracter"), que difieren fundamentalmente en la forma de calcularlo. (Andy, 2007) 3.3 Definición de código de detección de error CRC El código CRC consiste en considerar a los bits a ser transmitidos como un polinomio en x (para n bits el orden es n-1) tal que la presencia de un término significa un "1", y la ausencia, un "0", denotando polinomios cuyos coeficientes se correspondan con la secuencia binaria cuyo cálculo es una larga división de computación en el que se descarta el cociente y el resto se convierte en el resultado, con la diferencia que el arrastre se produce con bits formando una familia de códigos de bloques lineales. 3.4 Polinomio Generador Ideal La aritmética con estos polinomios del CRC es de módulo 2 sin llevar, es decir la adición y la sustracción son equivalentes a la puerta XOR, la división la usa en lugar de sustracción y A se divide entre B si el número de bits es mayor de o igual a el número en A. Todos los polinomios correspondientes a las palabras del código cíclico, deben dividirse entre g(x) sin residuo siendo este un divisor de x – 1 el bit mayor y el menor del generador deben ser 1, es decir:  Si 110001 son los bits a transmitir, entonces el mensaje podrá ser considerado como un polinomio U(x) tal que: U(x) = X6 + X5 +1  Un ejemplo a la inversa seria si G(x)= X4 + X3 + X+1 seria igual a 11011. (James, 2010) 3.5 Polinomios Generadores más Comunes  CRC-12: X12 + X11 + X3 + X2 + X + 1  CRC-16: X16 + X15 + X2 + 1  CRC CCITT V41: X16 + X12 + X5 + 1 (este código se utiliza en el procedimiento HDLC)  CRC-32 (Ethernet): = X32 + X26 + X23 + X22 + X16 + X12 + X11 + X10 + X8 + X7 + X5 + X4 + X2 + X + 1  CRC ARPA: X24 + X23 + X17 + X16 + X15 + X13 + X11 + X10 + X9 + X8 + X5 + X3 + 1 3.6 Características principales de CRC  Se utiliza la división de números binarios.  Tanto el emisor como el receptor conocen un divisor común.  Detecta todos los errores de 1 y 2 bits es decir los errores simples y dobles.  Detecta todos los errores de un “Burst” menor que el grado de P(x)  Detecta el 99 % de los errores de un “Burst” mayor que el grado de P(x)  Sirve para verificar la integridad, pero no para saber si el mensaje es correcto.  Cualquier bit se refleja en varios bits por un tiempo considerable después que éste fue transmitido. (Peterson, 1961) 3.7 Cálculo de código de detección de error CRC Pasos: 1.- Comience con el mensaje a codificar: 11010011101100 2.- Esta se rellena primero con ceros correspondientes a la longitud n de bits de la CRC. Este es el primer cálculo para calcular una de 3 bits CRC: 11010011101100 000 3.- Si el bit de entrada por encima del divisor poco más a la izquierda es 0, no haga nada. 4.- Si el bit de entrada por encima del divisor de bits más a la izquierda es 1, el divisor es XOR en la entrada. 5.- El divisor es entonces desplazado un poco hacia la derecha, y el proceso se repite hasta que el divisor alcanza el extremo de la derecha de la fila de entrada. Todo el cálculo: 11010011101100 000. La validez de un mensaje recibido puede ser fácilmente verificado por realizar el cálculo anterior de nuevo, esta vez con el valor de comprobación añadido en lugar de ceros. El resto debe ser igual a cero si no hay errores detectables. 11010011101100 100
  • 4. Universidad de las Fuerzas Armadas ESPE, Extensión Latacunga 2014,Barrera Llanga Kevin Iván 4 La aritmética en modulo 2 se considera así: Sumas binarias sin acarreos = Operación lógica XOR Restas binarias sin acarreos = Operación lógica XOR En donde: T= Trama de (k + n) bits a transmitir, con n<k n = Bits de comprobación M = Mensaje de k bits, los primeros k bits de T P= Patrón de n + 1 bits , este es el divisor elegido.Como mínimo el bit más significativo y el menos significativo debe ser 1. 𝑇 = 2 𝑛 ∗ 𝑀 𝑃 11010011101100 =entrada=M 1011 =divisor (4 bits)=P ----------------------- 01100011101100 = resultado 00000000001110=resultado de la multiplicación 1011=divisor ----------------------- 00000000000101=resto (3 bits) (James, 2010) 3.8 Especificaciones de código de detección de error CRC  “A veces una prefijos implementación de un patrón de bits fija para el flujo de bits de comprobación.  Por lo general, una aplicación anexa n 0-bits a la corriente de bits de comprobación antes de que ocurra la división polinómica.  A veces, una aplicación exclusiva-Ors un patrón de bits fija en el resto de la división polinómica.  Orden de los bits: Algunos programas consideran que el bit de orden inferior de cada byte como "primero", el cual durante la división polinómica significa "izquierda", lo cual es contrario a nuestra comprensión habitual de "orden inferior".  Orden de bytes: Con CRC de varios bytes, no puede haber confusión sobre si el byte transmitido primero es el byte menos significativo o el byte más significativo.  La omisión del bit de orden del polinomio divisor: Puesto que el bit de orden superior es siempre 1,y puesto que un CRC de n bits debe ser definido por un divisor de bits que se desborda un registro de n bits, algunos autores suponen que se es innecesario mencionar bit de orden del divisor.” [Ref.2. E-centro de Artigo, sección CRC, tema especificación de código de detección de error.] (Simmons, 1992) IV. Conclusiones El Código Hamming, es un sistema de detección y corrección automática de errores en información electrónica,el cual asocia una serie de bits de validación o paridad a los bits de datos, de tal forma que una alteración en cualquiera de esos bits de datos pueda ser detectada y corregida adecuadamente. El CRC es una función diseñada para detectar cambios accidentales en datos de computadora y es comúnmente usada en redes digitales y dispositivos de almacenamiento (como discos duros) el cual utiliza polinomios generadores y su medio de resolución es con divisiones sucesivas. Estos métodos para la detección de error son muy útiles aunque cada uno se especializa en su campo, ambos son necesarios en los sistemas de control ya que gracias a estas correcciones de errores permite un sistema mas estable y optimo en los códigos digitales. V. Bibliografía Simmons,G. (1992).A survey of information Authentication. En G. Simmons, A survey of information Authentication (pág.23). New York: IEEE Press. Peterson.(1961).Cyclic Codes for Error Detection.En Peterson,Cyclic Codes for Error Detection (pág.281). Boston:ISSN. James,P. (2010).Introduccion de los sistemas Digitales. En P. James, Introduccion de los sistemas Digitales. Mc- Graw. Andy, B. (2007).Comunicacion Digitales.En B. Andy, Comunicacion Digitales. Marcombo. ezp1- espe.edu.ec:2050/lib/espesp/docDetail.action?DocID=10 515233&p00=codigo+hamming