Escolar Documentos
Profissional Documentos
Cultura Documentos
Natureza da Informao
Cdigos e Codificao
Guiou Kobayashi
guiou.kobayashi@ufabc.edu.br
3o Quadrimestre, 2013
Natureza da Informao
Cdigos
Cdigos ee Codificao
Codificao
Cdigos e Codificao
Natureza da Informao
Cdigos
Como desenvolver?
Cdigos e Codificao
Natureza da Informao
Espao de Smbolos
2
Potncia de 2
Finito
Infinito, contvel
Infinito, incontvel
Cdigos e Codificao
Natureza da Informao
Espao de Smbolos
Nmero de smbolos n = 2
Cdigos e Codificao
Natureza da Informao
Espao de Smbolos
Cdigos e Codificao
Natureza da Informao
Espao de Smbolos
Cdigos e Codificao
Natureza da Informao
Espao de Smbolos
0,25
0,125
00
0,5
0,375
01
0,75
0,625
10
0,875
11
Aproximao no reversvel
Natureza da Informao
Espao
Espao de
de Cdigo
Cdigo
Cdigos e Codificao
Natureza da Informao
Espao de Cdigo
Cdigos e Codificao
10
Natureza da Informao
Espao de Cdigo
Cdigos e Codificao
11
Natureza da Informao
Exemplo
Exemplo de
de Cdigos
Cdigos
Cdigos e Codificao
12
Natureza da Informao
Cdigo BCD
Cdigos e Codificao
13
Natureza da Informao
Cdigo BCD
Cdigos e Codificao
14
Natureza da Informao
Cdigo BCD
Cdigos e Codificao
15
Natureza da Informao
Endereos IP
Internet Protocol
Atribudos por IANA (Internet Numbers Authority)
Cada nome de domnio associado a um nico
endereo de IP
Atualmente 32 bits: 4 blocos de nmeros de 0 a 255
separados por pontos (verso 4)
Exemplo: 207.46.250.119
cada endereo de Internet pode ser codificado com 32 bits
Nmero de endereos possveis: 232 = pouco mais de 4
bilhes
Desenvolvido para ter capacidade de expanso
Cdigos e Codificao
16
Natureza da Informao
Endereos IP
Exploso de interesse na Internet
Tablets, celulares, videogames, etc.
J h necessidade de endereos at mesmo para
aparelhos eletrodomsticos!
Resultado: IP verso 6 (IPv6)
Endereos ainda na forma x.x.x.x, mas cada x nmero de
32 bits entre 0 e 4.294.927.295
128 bits
Endereos existentes no mudaro, mas muitos
equipamentos de rede esto sendo adaptados ou substitudos
Cdigos e Codificao
17
Natureza da Informao
Codificao
Codificao
Cdigos e Codificao
18
Natureza da Informao
Desenvolvimento de Cdigos
Muitos cdigos so desenvolvidos por
humanos
Alguns so bastante robustos, simples, fceis de
trabalhar e extensveis
Mais fcil quando precisa representar poucos smbolos
19
Natureza da Informao
Cdigos e Codificao
20
Natureza da Informao
Tamanho varivel
Decodificador deve usar os valores dos bits para
determinar quando o smbolo comea e/ou termina
til quando alguns smbolos ocorrem com maior
frequncia que outros
Cdigos e Codificao
21
Natureza da Informao
Codificao do Texto
Pode ser interessante cdigo de tamanho
varivel
Atribui sequncias pequenas a smbolos mais
comuns
E longas para smbolos incomuns
Em mdia: menores mensagens
Cdigos e Codificao
22
Natureza da Informao
Codificao do Texto
Frequncia de letras
em Ingls
Interessante considerar
cdigos menores para:
E, T, A, O e N
23
Natureza da Informao
Codificao do Texto
Cdigo de tamanho varivel:
Tomar cuidados como:
Cdigo pequeno no deve ser parte de incio de
qualquer cdigo longo
Ou decodificador no consegue distingui-los
24
Natureza da Informao
Cdigo
Cdigo xx Quantidade
Quantidade de
de
Informao
Informao
Cdigos e Codificao
25
Natureza da Informao
L = pk l k
k =0
Cdigos e Codificao
26
Natureza da Informao
Eficincia de Codificao
Admitindo que Lmin seja o valor mnimo que L pode
assumir, a eficincia de codificao definida como:
Lmin
=
L
Mas como obter Lmin? O Teorema da Codificao de
Fonte, formulado da seguinte maneira:
Dada uma fonte discreta sem memria, com entropia
H(S), o tamanho mdio da palavra-cdigo L
correspondente a qualquer esquema de codificao de
fonte sem distoro limitado como:
H (S )
=
L
Cdigos e Codificao
27
Natureza da Informao
Densidade da Informao
A Densidade da Informao definida como a
razo entre a Quantidade de Informao e o
Espao de Cdigo
Portanto, a Densidade de Informao
equivalente Eficincia do Cdigo
Tanto a Densidade mxima de Informao e a
Eficincia mxima do Cdigo 1 (UM)
Cdigos e Codificao
28
Natureza da Informao
Compresso de Dados
Uma caracterstica comum de sinais gerados
por fontes fsicas que estas contem
quantidade significativa de redundncias.
Assim, sem que haja perda de informao,
interessante eliminar as redundncias usando o
que chamamos de compactao ou compresso
de dados, cujo objetivo maximizar a eficincia
da codificao
Para tanto, usamos os chamados cdigos de
prefixo, cdigos de Huffman e cdigos de
Lempel-Ziv.
Cdigos e Codificao
29
Natureza da Informao
Exemplo
Vamos imaginar um dado de 5 lados (D5),
S = {A, B, C, D, E} com suas respectivas
probabilidades e representaes, conforme a
tabela a seguir.
Cdigos e Codificao
30
Natureza da Informao
Exemplo
Para transmitir ou armazenar os
resultados deste dado seriam necessrios
3 bits.
log2 (5) = 2,32 bits
Vamos analisar os casos utilizando as
representaes propostas.
Cdigos e Codificao
31
Natureza da Informao
Representao A
Para a representao A, temos um
tamanho mdio do cdigo de:
1
1
1
1
1
L = 4 + 4 + 3 + 2 + 1 = 2,5 bits
8
8
4
4
4
32
Natureza da Informao
Representao B
Para a representao B, temos um
tamanho mdio do cdigo de:
1
1
1
1
1
L = 2 + 2 + 3 + 3 + 3 = 2, 75 bits
8
8
4
4
4
e uma entropia de
1
1
1
1
1
H ( S ) = log 2 8 + log 2 8 + log 2 4 + log 2 4 + log 2 4 = 2, 25 bits
8
8
4
4
4
33
Natureza da Informao
Representao C
Para a representao C, temos um
tamanho mdio do cdigo de:
1
1
1
1
1
L = 3 + 3 + 2 + 2 + 2 = 2, 25 bits
8
8
4
4
4
e uma entropia de
1
1
1
1
1
H ( S ) = log 2 8 + log 2 8 + log 2 4 + log 2 4 + log 2 4 = 2, 25 bits
8
8
4
4
4
34
Natureza da Informao
Usos
Usos da
da Codificao
Codificao
Cdigos e Codificao
35
Natureza da Informao
36
Natureza da Informao
Cdigos e Codificao
37
Natureza da Informao
Bits de Paridade
Qualquer cdigo possui um nmero par ou impar
de bits 1.
Paridade par: quando o nmero de bits 1 de
uma seqncia par.
Paridade impar: quando o nmero de bits 1 de
uma seqncia impar.
Para a deteco de erros adicionado um bit s
seqncias de bits chamado de bit de paridade.
Um sistema de armazenamento ou de
comunicao s pode operar com um tipo de
paridade, par ou mpar.
Cdigos e Codificao
38
Natureza da Informao
Bits de Paridade
PARIDADE PAR
P
BCD
PARIDADE IMPAR
P
BCD
0000
0000
0001
0001
0010
0010
0011
0011
0100
0100
0101
0101
0110
0110
0111
0111
1000
1000
1001
1001
Cdigos e Codificao
39
Natureza da Informao
Bits de Paridade
O bit de paridade pode ser adicionado no incio ou no fim
da sequncia do cdigo, dependendo do projeto.
Um bit de paridade s consegue detectar um nmero
impar de erros, mas no consegue detectar nmeros
pares de erros.
Exemplo: Imagine um sistema com paridade par e
transmitindo a sequncia: 0101. Com o bit de paridade
esse cdigo seria 00101.
Supondo que ocorra um erro no 3.o bit, o receptor
receber: 00001 e apontar um erro pois perceber um
nmero impar de bits 1, num sistema com paridade par.
Agora, se ocorrerem 2 erros e o receptor receber: 00011
no perceber o erro pois o numero de bits 1 ser par.
Cdigos e Codificao
40
Natureza da Informao
41
Natureza da Informao
Algoritmo de Hamming
Se o nmero de bits de dados projetados for D ento
o nmero de paridade P dado por:
(1)
2P D+P+1
Exemplo: se tivermos 4 bits podemos determinar P
por tentativa e erro:
se P = 2 temos 22 = 4 e D+P+1 = 4 + 2 + 1 = 7 e
portanto a equao acima no se satisfaz,
se P = 3 temos 23 = 8 e D+P+1 = 4 + 3 + 1 = 8,
satisfazendo a equao acima.
42
Natureza da Informao
Algoritmo de Hamming
Insero de Bits de Paridade
No exemplo anterior temos 4 bits de informao e
3 de paridade
O bit mais esquerda o bit1, o prximo o bit 2
e assim por diante.
bit1, bit2, bit3, bit4, bit5, bit6, bit7, bit8
43
Natureza da Informao
Algoritmo de Hamming
Valor dos Bits de Paridade
Para determinar o valor dos bits de paridade, necessrio
determinar a quais outros bits o bit de paridade est
associado. Para isso montamos a tabela abaixo:
Designao dos
Bits
Posio do bits:
Numero da posio
em binrio
P1
P2
D1
P3
D2
D3
D4
001
010
011
100
101
110
111
Bits de dados Dn
Bits de Paridade Pn
Tabela de posicionamento de bits para um Cdigo Corretor de Erro de 7 bits
Cdigos e Codificao
44
Natureza da Informao
Algoritmo de Hamming
Valores de Bits e Posies
O nmero da posio do bit de paridade P2 tem 1 bit no
meio.
Devemos verificar todas as posies que tm 1 no meio
(inclusive P2).
Portanto, P2 verifica os bits das posies 2,3,6 e 7.
O bit de paridade identifica a quantidade de bits 1 nestas
posies e, dependendo se foi definido paridade par ou
impar, ele preenchido.
Esta lgica aplicada a todos os bits de paridade P
Cdigos e Codificao
45
Natureza da Informao
P1
P2
D1
P3
D2
D3
D4
1
001
2
010
3
011
4
100
5
101
6
110
7
111
Bits de Paridade Pn
Cdigos e Codificao
46
Natureza da Informao
P1
P2
D1
P3
D2
D3
D4
1
001
2
010
3
011
4
100
5
101
6
110
7
111
Bits de Dados Dn
Bits de Paridade Pn
Cdigos e Codificao
1
0
1
47
Natureza da Informao
48
Natureza da Informao
49
Natureza da Informao
P1
P2
D1
P3
D2
D3
D4
1
001
2
010
3
011
4
100
5
101
6
110
7
111
Bits de Dados Dn
Bits de Paridade Pn
1
0
Cdigo Corrigido
Designao
dos Bits:
Posio do bits:
Posio em binrio:
P1
P2
D1
P3
D2
D3
D4
1
001
2
010
3
011
4
100
5
101
6
110
7
111
Bits de Dados Dn
Bits de Paridade Pn
Cdigos e Codificao
1
0
0 -> 1
50
Natureza da Informao
51
Natureza da Informao
Referncias Bibliogrficas
http://ocw.mit.edu/OcwWeb/ElectricalEngineering-and-Computer-Science/6-050JSpring2008/CourseHome/index.htm (Captulo 4)
Cdigos e Codificao
52