1. M A T E M A T I C A D I S C R E T A
U N I V E R S I D A D I B E R O A M E R I C A N A
2 3 D E O C T U B R E , 2 0 1 5
Teoría de Códigos
2. Introducción
Cuando se persiguen objetivos tales como la
protección contra el ruido y el uso eficiente del canal
de comunicación, se hace evidente la necesidad de
tratar la información de forma especial.
La teoría de códigos es una especialidad
matematica que trata de las leyes de la codificación
de la información.
3. Tipos de codigos
El diseño de códigos correctores de errores tiene
como objetivo construir códigos con redundancia
razonable y rápida decodificación. Debido a sus
múltiples aplicaciones en ingeniería e informática,
los códigos más importantes tratados aquí son:
Códigos de Hamming
Códigos de Golay
Códigos BCH
4. Codigos de Hamming
El código de Hamming agrega tres bits adicionales
de comprobación por cada cuatro bits de datos del
mensaje.
El algoritmo de Hamming (7.4) puede corregir
cualquier error de un solo bit, y detecta todos los
errores de dos bits.
5. Codigo de Hamming
El algoritmo es simple:
1. Todos los bits cuya posición es potencia de dos se
utilizan como bits de paridad (posiciones 1, 2, 4, 8, 16,
32, 64, etc.).
2. Los bits del resto de posiciones son utilizados como
bits de datos (posiciones 3, 5, 6, 7, 9, 10, 11, 12, 13, 14, 15,
17, etc.).
3. Cada bit 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.
7. Codigo de Golay
Hay dos tipos de códigos Golay que están relacionados entre sí.
El primero es el código Golay extendido binario que codifica 12
bits de datos en una palabra de 24 bits de tal manera que
cualquier error de 3 bits puede ser corregido y cualquier error de
4 bits puede ser detectado.
El otro es el código binario perfecto de Golay tiene palabras
código de longitud 23 bits, y es obtenido directamente del código
binario extendido de Golay al suprimir una posición de
coordenadas, de otra manera se puede decir que el código
binario extendido de Golay se obtiene a partir del código binario
perfecto al añadir un bit de paridad.
8. Codigos BCH
Una de las principals cualidades de los codigos BCH es que
durante el diseño, hay un control preciso sobre el numero de
simbolos de errors que se corrigen por codigo. En particular, es
possible diseñar codigos BCH en binario que corrijan multiples
errors de bit.
Otra ventaja d elos codigos BCH es la facilidad con la que pueden
ser decodificados, se pueden nombrar con metodos algebraicos
que se conoce como sindrome de decodificacion. Este simplifica
el dise;o de la decodificacion par aesos codigos, usando pequeñas
cargas de hardware electronico.
9. Codigo BCH
La codificación Huffman es un algoritmo usado
para comprension de datos.
El término se refiere al uso de una tabla de códigos
de longitud variable para codificar un determinado
símbolo (como puede ser un carácter en un archivo),
donde la tabla ha sido rellenada de una manera
específica basándose en la probabilidad estimada de
aparición de cada posible valor de dicho símbolo.
10. Codigos de Huffman
Para obtener los códigos de Huffman hay que
construir un arbol binario de nodos, a partir de una
lista de nodos, cuyo tamaño depende del número de
símbolos.
Los nodos contienen dos campos, el símbolo y
el peso (frecuencia de aparición).
11. Tipos de codificaciones
Una codificación es unívocamente descifrable si
cualquier secuencia finita de es la imagen de como
mucho un mensaje, es decir, cuando la aplicación E
es inyectiva.
Una codificación es instantáneamente
descifrable, o de tipo prefijo, si no existen dos
palabras diferentes y tal que es una secuencia
inicial de .