You are on page 1of 42

COM II- I. Zamora Uni II - Conf3: Cod.

fte y Fmteo 1
Codificacin fuente
Consiste en codificar (asignar) cdigos binarios a
informacin cuyo origen es textual/caracteres o analgico.

La informacin digital binaria por naturaleza es generada en
formato binario por lo que no requiere de este proceso, sino
mas bien de entramado.

La informacin analgica requiere de un proceso de
conversin Analgico-a-Digital (A/D) antes que pueda ser
codificada. Este tema se desarrollar cuando tratemos en
detalle la modulacin PCM, DM, etc.

Esta conferencia se enfoca en el caso de informacin de tipo
textual (smbolos alfanumricos) en la cual abordamos el
esquema de codificacin de Huffman.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 2
Sistema de comunicacin banda base
Muestreador Cuantificador Codificador
Binario
Codificador
de lnea
Transmisor
Filtro
pasabajos
Decodificador
Binario
Detector
de lnea
Receptor
Medio de
transmisin
Informacin Digital Binaria
Informacin Textual o Caracteres
Informacin
Analgica
Informacin
Analgica
Informacin Textual o Caracteres
Informacin Digital Binaria
Formas de
Onda de
pulsos
...10110110001...
Secuencia binaria
Pulsos digitales
de voltaje/corriente
La Codificacin de
Lnea la estudiaremos
en conferencias
posteriores.
Codificacin Fuente
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 3
Codificacin fuentes de texto/caracteres
En la transmisin de datos, los mismos son
previamente arreglados (formateados) de acuerdo
a a varios cdigos que se han desarrollado a
travs de los aos.

Es a menudo aconsejable seleccionar cdigos ya
disponibles para propsito de desarrollo y
solucin de fallas.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 4
Codificacin fuentes de texto/caracteres
Corresponde a los mensajes o smbolos
alfanumricos que generamos por medios
electrnicos
Algunos ejemplos:
Cdigo Binario Natural
Cdigo Binario Gray
Cdigo Morse
Cdigo BAUDOT
Cdigo EBCDIC
Cdigo ASCII
Cdigo de Barras
Cdigo Huffman
Cdigo Lempel-Ziv
Etc.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 5
Cdigo binario natural
Son los cdigos definidos por 1s y 0s que normalmente
representan smbolos que son parte de un alfabeto de
comunicacin.
El alfabeto puede ser alfanumrico, o de otra ndole (ej: nivel de
voltaje de un cuatizador) que sea finito.
Consiste en asignar de forma creciente (natural) cdigos
binarios a cada smbolo.
Nivel/Smbolo Cdigo Natural
A 00
B 01
C 10
D 11

Se guarda la relacin:

b = log
2
L

b: nmero de bits del cdigo
L: Nmero de smbolos
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 6
Cdigo Gray
Una desventaja de los cdigos binarios naturales es que varios
bits pueden cambiar de estado simultneamente entre cuentas
adyacentes.
Ej: cuando en un sistema BCD (binario natural) se cambia la cuenta
de 7 (0111) a 8 (1000), todos los bits permutan

El cdigo GRAY es nico en que las cuentas sucesivas
resultan en solamente un cambio en un solo bit, reduciendo
errores de bits y errores de permutacin en los bits.
FUNCIN EXOR: Complemento 2
Se basa en el uso de la funcin OR Exclusiva o EXOR.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 7
Cdigo Gray
CONVERSIN BINARIO-GRAY
el primer bit, iniciando con el MSB de un cdigo binario dado, se vuelve
el de la posicin ms a la izquierda del cdigo Gray
Aplique funcin EXOR al primer y segundo bit del cdigo binario dado,
para generar el segundo bit del cdigo Gray.
El tercer bit del cdigo Gray se encuentra al aplicar EXOR al segundo y
tercer bits de un cdigo binario dado.
El proceso contina hasta que los ltimos 2 bits del cdigo binario han
sido sujetos de la operacin EXOR para producir el ltimo bit del cdigo
Gray equivalente.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 8
Cdigo Gray
CONVERSIN GRAY-BINARIO
El primer bit, iniciando con el bit ubicado mas a la izquierda del cdigo
Gray dado, se convierte en el MSB cdigo binario.
Se aplica EXOR al segundo bit del cdigo Gray con el MSB del cdigo
binario para producir el segundo bit binario.
Se aplica EXOR al tercer bit del cdigo Gray con el segundo bit del
cdigo binario para producir el tercer bit binario.
Se aplica EXOR al cuarto bit del cdigo Gray con el tercer bit del cdigo
binario para producir el cuarto bit binario, y as mismo sigue el proceso.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 9
Cdigo Morse
Uno de los mas antiguos cdigos de transmisin
Desarrollado y patentado en 1840 por Samuel F.B.
Morse.
Fue el primer cdigo usado por el sistema de
telgrafo.
Usualmente usado en radioaficionados.
Formados por puntos y guiones.
Un guin dura tres veces lo que un punto.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 10
Cdigo Morse
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 11
Cdigo BAUDOT
Desarrollado en 1874 por el ingeniero francs Emile
Baudot.
Es usado en el campo de la telegrafa y RTTY (Radio
teletipo).
La versin estandarizada de UIT se usa mundialmente
en las redes internacionales de Tlex, las que se
interconectan a travs de las redes telefnicas pblicas
(PSTN).

COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 12
Cdigo BAUDOT
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 13
Cdigo BAUDOT
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 14
Cdigo EBCDIC
Dearrollado por IBM en 1962, como un cdigo
extendido de 8 bits.
EBCDIC significa: Extended Binary-Coded Decimal
Interchange Code.
Se usa intensamente en computadoras de gran
escala (Mainframes) y equipos perifricos.
Es una mejora sobre el antiguo cdigo BAUDOT.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 15
Cdigo EBCDIC
IBM
Mainframe
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 16
Cdigo EBCDIC
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 17
Cdigo EBCDIC
Tarjeta perforada
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 18
Cdigo EBCDIC
Foto de tarjeta impresa EBCDIC
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 19
Cdigo ASCII
La American Standard Code for Information
Interchange (ASCII) es el cdigo de mayor uso a nivel
mundial para la transmisin y procesamiento de datos.

ASCII fue desarrollado en 1962 especficamente para
sistemas de comunicacin por computadoras.

ASCII es un cdigo de 7 bits que puede representarse
como dos caracteres hexadecimales para simplicidad.

Generalmente se provee de un octavo bit que sirve de
paridad, haciendo que el cdigo sea igual a un byte (8
bits).
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 20
Cdigo ASCII
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 21
Cdigo de Barras
Surgieron a principio de los aos 70.
Es una serie de barras negras y blancas, consistentemente
dimensionadas que son anchas y angostas.
Las barras blancas que separan las negras, son
denominadas espacios
Se componen de modo que contengan un cdigo cifrado que
es identificado por una computadora digital en forma de 1s
y 0s.
Suelen usarse en aplicaciones comerciales, en productos
que se venden al pblico.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 22
Cdigo de Barras
Esta tecnologa ha avanzado hasta convertirse en una industria
multimillonaria que automatizado la tarea de verificacin en los
puestos de venta.
Algunas de las aplicaciones mas comunes son:
Gestin y control de inventario
Seguridad de Acceso (Autenticacin)
Envo y recepcin
Conteo de productos
Procesamiento de documentos y rdenes (servicio, venta, etc.)
Chequeo y facturacin en la renta de vehculos
Gestin del avance del trabajo
Cdigos postales (ZIP codes)
Programacin funcional
Introduccin de datos
Facturacin automtica
Rastreo y seguimiento de garantas y servicios
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 23
Cdigo de Barras
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 24
Cdigo de Barras
Posible seal de la bestia?
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 25
Teorema de la codificacin fuente:
Uno de los tres teoremas fundamentales introducidos por Shannon
en 1948.
Establece un lmite fundamental en la tasa a la cual la salida de una
fuente de informacin puede ser comprimida sin causar
probabilidades de error grandes.

El principal objetivo es construir un conjunto de cdigos que
representen a cada smbolo del alfabeto fuente y cuya longitud
media sea la menor posible.

En principio, los smbolos ms frecuentes en la transmisin se le
asigna los cdigos de menor longitud (no. de bits), y a los
smbolos menos frecuente se le asigna los cdigos de mayor
longitud.

Algunos de algoritmos utilizados en la codificacin fuente son el
cdigo Huffman y el Lempel-Ziv.
Objetivo de la Codificacin Fuente
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 26
Cdigo Huffman
En 1951, a David Huffman y sus compaeros de clase de la
asignatura Teora de la Informacin se les permiti optar entre
la realizacin de un examen final o la presentacin de un trabajo.
El profesor Robert. M Fano asign las condiciones del trabajo
bajo la premisa de encontrar el cdigo binario ms eficiente.
Huffman, ante la imposibilidad de demostrar qu cdigo era ms
eficiente, se rindi y empez a estudiar para el examen final.
Mientras estaba en este proceso vino a su mente la idea de usar
rboles binarios de frecuencia ordenada y rpidamente prob que
ste era el mtodo ms eficiente.

Con este estudio, Huffman super a su profesor, quien haba
trabajado con el inventor de la teora de la informacin Claude
Shannon con el fin de desarrollar un cdigo similar. Huffman
solucion la mayor parte de los errores en el algoritmo de
codificacin Shannon-Fano. La solucin se basaba en el proceso
de construir el rbol desde el fondo hasta la raz en vez de al
contrario.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 27
Cdigo Huffman
Se basa en el principio indicado en la diapositiva
anterior

Mtodo:
1. Ordenar las probabilidades de los smbolos en orden
decreciente
2. Fusionar los dos smbolos de menor probabilidades
3. Si el nmero de elementos = 2, entonces:
A. Asignar 0 y 1 a los cdigos y pasar a 4.
B. Si no es as, volver a 1.
4. Si algn elemento es resultado de la fusin de dos elementos:
A. Agregar al cdigo un 0 y un 1 y pasar a A.
B. Si no es as entonces parar.



COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 28
Cdigo Huffman
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 29
Ejemplo
Disee un cdigo de Huffman para el alfabeto {A, B, C, D, E} con
probabilidades de ser transmitidos de {1/2,1/4,1/8,1/16,1/16} respectivamente.
Solucin:
A
B
C
D
E
1/2
1/4
1/8
1/16
1/16
0
1
0
1
0
1
0
1
1/8
1/4
1/2
1.0
A: 0
B: 01
C: 011
D: 0111
E: 1111
0
10
110
1110
1111
Cdigo
Especular
Cdigo
Real
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 30
Ejercicio en casa 1
Disee el cdigo binario para el alfabeto
{a
1
, a
2
, a
3
} con probabilidades {1/3, 1/3,
1/3}. Cul es su comentario a este caso?

COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 31
Ejercicio en casa 2
Disee el cdigo binario para el alfabeto
{A, B, C, D, E, F, G, H, I} con probabilidades
{2/9, 1/9, 1/9, 1/9, 2/9, 1/27, 1/27,1/27, 1/9}.

COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 32
Longitud media del cdigo
Para un cdigo correspondiente al alfabeto de K smbolos
A
X
=(x
0
, x
1
,...,x
K-1
) con probabilidad de ocurrencia P
X
=[p
0
, p
1
,
... , p
K-1
] y longitud de palabra por smbolo L
X
=[(l
0
, l
1
, ... , l
K-1
],
se define la longitud media del cdigo como:


1
0
K-
k
k k X
l p L

2
1
0
2


K-
k
k k X
L l p
Como una medida de la variabilidad de las longitudes de palabra
de un cdigo fuente, definimos la Varianza de la longitud
promedio de palabra de cdigo L sobre el conjunto de smbolos
fuente como:
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 33
Ejercicio en casa 3
Calcule la longitud media para los
ejercicios en casa 1 y 2

COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 34
Desventaja del Cdigo Huffman
Requiere de un conocimiento previo de las
estadsticas de los smbolos transmitidos.
No considera ni aprovecha la memoria de los eventos
encontrados.
La necesidad de conservar el cdigo para que pueda
ser utilizado por el decodifcador en el momento de la
decompresin.
El importante nmero de comparaciones de bits
necesarios para decodicar la sucesin recibida
Un error en algn bit se propaga produciendo errores
importantes en la decodifcacin.
Los resultados pueden variara segn el idioma.

COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 35
Cdigo Lempel-Ziv
Es muy popular. Lo podemos encontrar usado en
UNIX por la orden compress y la utilidad de MSDOS
arc. Fue ideado por Jacob Ziv y Abraham Lempel, y
publicado en el IEEE Transactions on Information
Theory, vol. IT-23, No 3 de Mayo de 1977.

El factor de compresin medio es 2 en un fichero
largo: reduccin del 50% (til tanto para almacenar
como para transmitir informacin)

La idea bsica es no repetir trozos de texto, sino
indicar la localizacin de inicio de la primera
instancia de ese texto y la longitud. Por ejemplo, si
este tema comenzara con Es muy popular se
sustituira el principio de esta pgina con {1,14}
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 36
Cdigo Lempel-Ziv
Para sustituir un texto dado se busca en todo el texto
precedente la cadena ms larga que coincide con la
que vamos a sustituir. Por ejemplo, si Es muy
popular. Lo podemos est antes en el texto (en la
posicin 200) se sustituye por {200,26}.

El ancla y el indicador ocupan menos que el texto en
s mismo.

La eficiencia aumenta con la longitud del texto, pues
existen cadenas ms largas repetidas.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 37
Ejemplo 1: Cdigo Lempel-Ziv
Ejemplo:
Comprimir usando LZ el texto the other one is the
oldest





Resultado
the o{1,3}r{4,2}n{3,2}is{4,1}{1,5}ld{3,1}{16,1}{1,1}
Las implementaciones reales difieren un poco para
hacerlo fcil de codificar al coste de que comprima
un poco menos.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 38
Algorimo de codificacin Lempel-Ziv
1. Inicializar un diccionario que contenga todos
los bloques de longitud unitaria.
2. Busque el mas grande bloque W que haya
aparecido en el diccionario.
3. Codifique W por su ndice de entrada en el
diccionario.
4. Agregue al diccionario el cdigo de W seguido
del primer smbolo del prximo bloque
5. Regrese al paso 2.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 39
Ejemplo 2: Cdigo Lempel-Ziv
http://www.data-compression.com/lempelziv.html
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 40
Ejemplo: Cdigo Lempel-Ziv
En lugar de buscar en todo el texto la secuencia ms
larga que encaja se mantiene un diccionario con las
cadenas ya encontradas

Se busca en el diccionario la cadena ms larga que
encaja y se aaden a l las cadenas ms largas
cuando se encuentran.
BONIFICACIN 2:
INVESTIGUE HAGA UN RESUMEN DE LOS ALGORITMO DE COFICACIN:
HUFFMAN ADAPTATIVO
LEMPEL-ZIV-WELSH
SE ENTREGA EN UNA SEMANA.
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 41
Simuladores de Cdigos
http://www.cs.sjsu.edu/faculty/khuri/animation.html
Visite el sitio Web indicado abajo y descargue los simuladores (freewares)
COM II- I. Zamora Uni II - Conf3: Cod. fte y Fmteo 42
METODO DE EVALUACIN

You might also like