Sunteți pe pagina 1din 15

CODIGOS

BINARIOS
OBJETIVOS
- Asignan secuencias de símbolos del
“alfabeto código” (por ejemplo “binario” B = {0,1}) al
“alfabeto fuente” (por ejemplo “letras” L = {A, B, C, D, E, …,Z})
en forma unívoca
- Ejemplo : Código ASCII
0100 0001 A 0101 0000 P
0100 0010 B
0101 0001 Q
0100 0011 C
0100 0100 D 0101 0010 R
0100 0101 E 0101 0011 S
0100 0110 F 0101 0100 T
0100 0111 G 0101 0101 U
0100 1000 H
0101 0110 V
0100 1001 I
0100 1010 J 0101 0111 W
0100 1011 K 0101 1000 X
0100 1100 L 0101 1001 Y
0100 1101 M 0101 1010 Z
0100 1110 N
0100 1111 O
OBJETIVOS
- Pueden realizar el CONTROL DE ERRORES
- Ejemplo : error en dos bits
0101 1011 error en un bit
0101 1001 0101 1001
0101 1101

0101 1111
- Todos los elementos del código
0101 1001

0101 0000
10101111

0110 1101
CONTROL DE ERRORES
0101 1111
- Dos estrategias
0101 1001
a) DETECTAR errores y pedir retransmisión
b) CORREGIR errores 0101 0000
10101111

- Definiciones 0110 1101


a) Distancia entre elementos: nro de símbolos distintos
b) Distancia mínima de un código: Mínima distancia entre dos
elementos cualquiera del código (Dmín).
c) Elementos adyacentes : Cuando la distancia entre ellos es la
unidad
CONTROL DE ERRORES
0101 1111
- Capacidad
0101 1001
a) DETECTAR n = Dmín – 1 errores
b) CORREGIR n = (Dmín – 1)/2 errores 0101 0000
10101111

- Clasificacion 0110 1101

Contínuo : Cuando los elementos son todos adyacentes con el


siguiente elemento.
Cíclico: Cuando el último elemento es adyacente al primero.
Ponderado: Cuando la posición del elemento tiene un peso dado por
la misma
CODIGOS - EJEMPLOS
- Código Grey - Código Johnson
Continuo? Continuo?
Cíclico? Cíclico?
Ponderado? Ponderado?
Errores? Errores?
CODIGOS - EJEMPLOS
- Código Aiken
Continuo?
Cíclico?
Ponderado?
Errores?

- BCD exceso 3
Continuo?
Cíclico?
Ponderado?
Errores?
CODIGOS - EJEMPLOS
- Código 2 entre 5 - Código Biquinario
Continuo? Continuo?
Cíclico? Cíclico?
Ponderado? Ponderado?
Errores? Errores?
PARIDAD
- Aumenta la distancia en 1

SIMBOLO ASCII CODIGO ASCII BIT PARIDAD PAR CODIGO


E 1000101 1 10001011
U 1010101 0 10101010
D 1000100 0 10001000
PARIDAD
- Paridad entrelazada
CODIGO HAMMING
- Diseñado para corregir errores indicando la posición del error
- Si un dato requiere n bits, agrega p bits de paridad, generando
elementos de n + p bits
- Con n+p bits tengo 2n+p combinaciones. Solo uso 2n (los vectores mas
separados)
- Debo distinguir n + p posiciones posibles del error, + 1 (no error)
- Entonces deben cumplir 2p = n + p + 1

- Los bits de paridad se colocan en las posiciones 1, 2, 4, 8, 16, ……

- Los bits de datos se colocan en las posiciones 3, 5, 6, 7, 9, 10, ……

- Ejemplo: ……S18 S17 S16 S15 S14 S13 S12 S11 S10 S9 S8 S7 S6 S5 S4 S3 S2 S1
CODIGO HAMMING
Corrección de error simple: Generación/Transmisión
- Para corregir un error en un dato de n = 4 bits tendré p = 3 bits de
paridad
2p = n + p + 1  23 = 4 + 3 + 1
- El código quedará S7 S6 S5 S4 S3 S2 S1
- Los bits de paridad se calculan como

- Los posibles elementos de código son

1 (error en el libro)
CODIGO HAMMING
Ejemplo: Generación/Transmisión
- Queremos codificar con Hamming el valor 310 = 00112 = S7 S6 S5 S3
- Los bits de paridad serán
=0
=1
=1
- El código quedará S7 S6 S5 S4 S3 S2 S1 = 0 0 1 1 1 1 0
CODIGO HAMMING
Corrección de error simple: Verificación/Recepción
- La verificación se realizará con

- EL bit erróneo estará en la posición


CODIGO HAMMING
Ejemplo: Verificación/Recepción S7 S6 S5 S4 S3 S2 S1 = 0 0 1 1 1 1 0
- Se desea verificar S7 S6 S5 S4 S3 S2 S1 = 0 0 1 1 1 1 0
- Se calcula
=0 LSB
=0
=0 MSB  0002 = 010
SIN ERROR !!
- Se desea verificar S7 S6 S5 S4 S3 S2 S1 = 0 0 0 1 1 1 0
- Se calcula
=1 LSB
=0
=1 MSB  1012 = 510
ERROR en quinto bit!!

S-ar putea să vă placă și