ndice
Introduccin
Cdigo Gray
Cdigos para caracteres de texto
Cdigos BCD
Cdigos para nmeros
Enteros
Reales (coma flotante)
Decimales
Cdigos de paridad
Distancia mnima de un cdigo
Cdigos de Hamming
Cdigos de redundancia cclica
Dgitos verificadores
Introduccin
Un cdigo es una representacin de ciertos elementos a
travs de la asignacin a cada uno de ellos de una
combinacin determinada de smbolos (combinacin
llamada palabra del cdigo), elegidos dentro de un juego
permitido de smbolos (juego denominado alfabeto del
cdigo).
Ejemplos de cdigo son:
el cdigo posta
cdigo QR (quick response)
el cdigo Morse
el CUIL
el idioma castellano
los nmeros de cuenta bancarios
el GTIN-13 de los productos en los supermercados
el ISBN de los libros
Ing. Daniel Acerbi - 2014
A
B
etc.
Ing. Daniel Acerbi - 2014
Algunas definiciones
Cantidad mxima de
palabras del cdigo
binarios es 2n; donde n
es el nmeros de bits de
la palabra
00
10
11
01
4 21
0
000
001
010
011
100
101
110
111
0+2+0=2
4+0+1=5
4+2+1=7
Distancia de un cdigo
00
10
11
01
1bit
1bit
En este ejemplo la
distancia de Hamming
es de 1 bit
1bit
1bit
cuadrante
1
2
3
4
b1
0
0
1
1
b0
0
1
0
1
C1
b0
b1
C3
C4
10
b1
0
0
1
1
b0
0
1
1
0
C2
C1
b0
b1
C4
C3
Binario
0
1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101
1110
1111
Gray
0
1
11
10
110
111
101
100
1100
1101
1111
1110
1010
1011
1001
1000
11111001
Gray
13
10101110
Binario
14
Simetra en el
cdigo Gray
Dada la lista de las
primeras 2n palabras del
cdigo Gray, las ubicadas
simtricamente respecto al
eje central, slo difieren en
1 bit.
Binario
Gray
0
1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101
1110
1111
0000
0001
0011
0010
0110
0111
0101
0100
1100
1101
1111
1110
1010
1011
1001
1000
15
Cdigos cclicos
16
Cdigo Johnson
El cdigo Johnson es un
cdigo cclico,
cclico, no pesado y
se utiliza para comandar
secuencias de control y en
sealamiento luminoso .
La cantidad de palabras se
calcula como 2.n, donde n
es el numero de bits de la
palabra .
Cantidad de
palabras >
2x5 = 10;
donde 5 son
los bits de
cada
palabra del
cdigo
00000
00001
00011
00111
01111
11111
11110
11100
11000
10000
18
ASCII (7 bits)
b6b5b4
b3b2b1b0
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
000
001
010
011
100
NUL
SOH
STX
ETX
EOT
ENQ
ACK
BEL
BS
HT
LF
VT
FF
CR
SO
SI
DLE SP
0
@
DC1 !
1
A
DC2 "
2
B
DC3 #
3
C
DC4 $
4
D
NAK %
5
E
SYN &
6
F
ETB '
7
G
CAN (
8
H
EM
)
9
I
SUB *
:
J
ESC +
;
K
FS
,
<
L
GS
=
M
RS
.
>
N
US Ing. /Daniel Acerbi? - 2014 O
101
110
111
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
DEL
10
SP (espacio)
BS (retroceso de un espacio)
LF (alimentacin de lnea)
CR (retorno de carro, el que no implica una nueva lnea)
ASCII
1bit
7 bits
y entra el )
Ing. Daniel Acerbi - 2014
22
11
ASCII
Ejemplos
Alt 64 @
Alt 233
Alt 0233
Ing. Daniel Acerbi - 2014
24
12
BCD Natural
BCD Aiken
BCD Exceso 3
2 de 5
7 segmentos
Bicuinario
Ing. Daniel Acerbi - 2014
25
b2
b1
b0
26
13
b2
b1
b0
0
1
0
0
0
0
0
0
0
1
Ej. 5=2+2+1
5
6
1
1
0
1
1
0
1
0
27
b3
b2
b1
b0
Ej. 6=8+1-3
28
14
Cdigo 2 de 5
b4
b3
b2
b1
b0
29
Cdigo Postal
7
0
1
4
2
8
30
15
Cdigo 7 segmentos
b6
b5
b4
b3
b2
b1
b0
X=01
indistintamente
31
Cdigo Bicuinario
N
0
1
2
3
4
5
6
7
8
9
Q0
0
0
0
0
0
1
1
1
1
1
Q3
0
0
0
0
1
0
0
0
0
1
Q2
0
0
1
1
0
0
0
1
1
0
Q1
0
1
0
1
0
0
1
0
1
0
Es muy utilizado
por los CI 7490 y
74390; que son
contadores
asincrnicos
32
16
Naturales
Enteros
Racionales
Reales
Complejos
Magnitudes (naturales + el 0)
Enteros
caso particular de los reales
Punto flotante
par de reales
33
34
17
35
Complemento a 2
Magnitud (si 0)
Comp. a 2 de la magnitud (si 0)
n bits
El bit mas significativo indica el signo del numero
0=Numeros positicos; 1= Numeros negativos
Ing. Daniel Acerbi - 2014
36
18
Ejemplo de Ca2
Usamos 4 bits para la representacin
El signo forma parte del
numero
+2 = 0010
Representa el Signo
-2 = 1110
Magnitud 2 0010
Los nmeros negativos se representan por
el Ca2 de la magnitud
Tabla de
correspondencia
del cdigo
Complemento a 2,
con 4 bits
Nmero
+ 111
+ 110
+ 101
+ 100
+ 11
+ 10
+1
0
-1
- 10
- 11
- 100
- 101
- 110
- 111
- 1000
Codificacin
0111
0110
0101
0100
0011
0010
0001
0000
1111
1110
1101
1100
1011
1010
1001
1000
38
19
-2
0
000
111
001
010 +2
110
011
101
-3
Ing. Daniel Acerbi - 2014
+1
100
-4
+3
Discontinuidad
40
20
N+2n-1
n bits
La norma carece de representacin de bit de signo.
41
numero de bits
+2 = 1010
+2 + 24-1 = +2 + 8 = 10
N= numero a convertir
-2 = 0110
-2 + 24-1 = -2 + 8 = 6
1010
Convertir a binario
0110
21
Nmero
+ 111
+ 110
+ 101
+ 100
+ 11
+ 10
+1
0
-1
- 10
- 11
- 100
- 101
- 110
- 111
- 1000
Ing. Daniel Acerbi - 2014
Tabla de
correspondencia
del cdigo Binario
desplazado, con 4
bits
Codificacin
1111
1110
1101
1100
1011
1010
1001
1000
0111
0111
0101
0100
0011
0010
0001
0000
43
Caractersticas del BD
Permite representar desde el 2n-1 hasta el 2n-1-1
(igual que el complemento a 2)
Tiene una sola representacin del 0
Dificulta las operaciones de multiplicar y dividir
La comparacin se facilita porque sigue las mismas
reglas que para comparar magnitudes
La palabra que corresponde a un nmero es casi la
misma que en el cdigo complemento a 2, slo
difiriendo en el bit ms significativo que es diferente
en ambos cdigos
La suma y la resta son bastante simples, pero no se
utilizan .
22
Suma y resta de
nmeros signados
46
23
Desborde
Caso de la suma
+
48
24
49
50
25
51
52
26
53
54
27
55
56
28
57
58
29
Cdigos Detectores y
Correctores de errores
Errores
60
30
Cdigos de Paridad
31
Bit de paridad
PE=b6b5b4b3b2b1b0
PO=1-PE
PE
PO
32
Sndrome de error
En una transmisin, el receptor debe verificar si la
palabra ha llegado con la polaridad correcta o, de lo
contrario, se ha producido error.
El sndrome de error es la seal que indica, cuando vale
0, que no hubo error. Y cuando vale 1, que lo hubo.
Tratndose de paridad par, el sndrome de error valdr
0 si en el conjunto de los bits de informacin recibido y
el bit de paridad que los acompaa hay un nmero par
de unos, y valdr 0 si ese nmero es impar.
Para el caso de una palabra ASCII con paridad par,
tendremos
S=PEb6b5b4b3b2b1b0
65
V=dPP = D CB A GPP
transmisor
El Ruido Electrico,
modifica el bit D (sale u
0, llega un 1)
33
Cdigos de Hamming
(distancia mnima 3)
Un cdigo de distancia mnima 3 puede ser
usado:
En
en
En
en
67
Implementacin de un cdigo de
Hamming
Sea un cierto cdigo al que se quiere transformar en otro de distancia
mnima 3, agregndole apropiadamente bits de paridad
Sea que el nmero de bits de informacin es I. Por ejemplo, 4
La 1 regla de Hamming establece que se necesitar un nmero P de
bits de paridad que satisfaga la expresin:
2P P+I+1
En nuestro ejemplo, P=3
La 2 regla de Hamming establece que cada bit de paridad debe
asociarse a un subconjunto de los bits de informacin tal que:
Cada bit de informacin est asociado, por lo menos, a 2 bits de
paridad (es decir, que pertenezca al menos a dos subconjuntos)
Que no haya 2 bits de informacin que pertenezcan exactamente a
los mismos subconjuntos (pero s puede un bit integrar todos los
conjuntos de que forma parte otro bit, si adems forma parte de al
menos otro conjunto).
Ing. Daniel Acerbi - 2014
68
34
69
Matriz de generacin
I1
I2
I3
I4
P1
P2
P3
70
35
Sndrome de error
El receptor calcula el sndrome de error para los
distintos subconjuntos, usando la misma matriz de
generacin que el transmisor
S1=P1 I1 I3 I4
S2=P2 I1 I2 I3
S3=P3 I2 I3 I4
71
Ejemplo 1
Bits de informacin
1001
Bits de paridad calculados
011
Bits transmitidos
1001011
Bits recibidos
1000011
Sndrome de error calculado 101
Bit errado
I4
Informacin corregida
1001
Ing. Daniel Acerbi - 2014
72
36
Ejemplo 2
Bits de informacin
1001
Bits de paridad calculados
011
Bits transmitidos
1001011
Bits recibidos
1001011
Sndrome de error calculado
000
No hubo error
73
Ejemplo 3
Bits de informacin
1001
Bits de paridad calculados
011
Bits transmitidos
1001011
Bits recibidos
1001010
Sndrome de error calculado
001
Bit errado
P3
Informacin correcta
1001
Ing. Daniel Acerbi - 2014
74
37
Distancia mnima 4
76
38
77
Resumen
Un cdigo que opera en un sistema donde puede
haber hasta n bits en error:
Puede corregirlos a todos (c=n) si tiene una distancia
mnima de 2c+1
Puede detectarlos a todos (d=n) si tiene una distancia
mnima de d+1
Puede corregir los errores pequeos (c<n) y detectar
los otros si tiene una distancia mnima de c+n+1 (o
2c+d+1, donde d=n-c) son los bits adicionales en
error que exceden los c bits que puede corregir si los
bits en error no superan ese valor.
Por ejemplo, si puede haber hasta 5 bits en error
(n=5), si se quieren corregir los errores de hasta 2
bits (c=2) y slo detectar los restantes casos (d=3), la
distancia mnima debe ser 8 (2+5+1 22+3+1)
Ing. Daniel Acerbi - 2014
78
39
Errores no independientes
Hay casos de errores en rfagas debidos a una
causa comn
Un disturbio elctrico en una transmisin
Una zona daada en un material magntico
79
Introduccin al Chequeo de
Redundancia cclica
80
40
Polinomios generadores
81
CRC-16
X16+X15+X2+1
Usa un CRC de 16 bits, y detecta todos los errores simples,
dobles, triples y en rfagas de hasta 16 bits, y el 99,998%
de los errores en rfagas de mayor longitud
CRC-CCITT
X16+X12+X5+1
De desempeo similar al anterior
CRC-32
X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X4+X2+X+1
82
41
Suma de polinomios
en el campo a Galois
La suma (y la resta, que es lo mismo) de
polinomios, se hace sumando (en mdulo
2) los trminos de igual grado.
X7+X5+X+1
+
X5+X4+X
X7+X4+1
10100011
+ 110010
10010001
83
Divisin de polinomios
en el campo a Galois
La divisin de polinomios se hace de la misma
manera que en el lgebra corriente, pero cada
coeficiente se determina en mdulo 2.
Ejemplo: X3+X+1 X3+X2+1
1011
1101
0110
1101
1
84
42
1101
11010001
85
10100011 (X7+X5+X+1)
X3+X2+1
86
43
X10+X8+X4+X3
Ing. Daniel Acerbi - 2014
87
10100011000
1101
01110
1101
001101
1101
00001000
1101
0101
1101
11010001
88
44
89
90
45
Dgitos verificadores
Usado en los cdigos cuyo alfabeto son los dgitos
decimales, en forma anloga al bit de paridad en
los cdigos binarios.
ISBN / ISSN
CUIL / CUIT
Cuentas bancarias
Etc.
91
(D13+D11+D9+D7+D5+D3+D1)+
+3(D12+D10+D8+D6+D4+D2)
debe ser divisible por 10
El prefijo (D13D12D11) correspondiente a Bookland es el 978 (pero
el 979 est previsto para futuras expansiones)
El prefijo Argentina en el GTIN-13 es el 779
El prefijo en el ISSN-13 es el 977
92
46
Representacin de los
nmeros reales
Punto flotante
94
47
95
Formato de la palabra
96
48
S es el signo (0=+;1=-)
E=exp+128
F es la fraccin
El nmero resulta:
(-1)S1,F2E-128
Ing. Daniel Acerbi - 2014
97
98
49
99
50
101
102
51
Ejemplo 1
Cmo se representa en el cdigo IEEE de 32 bits el nmero binario 1100,1?
Al nmero solicitado, para llevarlo a forma normalizada, se le debe
correr la coma tres lugares a la izquierda, quedando con:
signo exponente +3
mantisa 1,1001
Entonces resulta que:
el bit de signo es un 1.
el exponente se debe representar por +3 desplazado en 127 unidades,
es decir por la magnitud 130, que en binario y con 8 bits se escribe
10000010.
la fraccin, luego de suprimir el 1 oculto y agregar a la derecha los
ceros necesarios para completar los 23 bits, queda
10010000000000000000000
Es decir que la palabra que representa al -1100,1 es
11000001010010000000000000000000
103
Ing. Daniel Acerbi - 2014
Ejemplo 2
Cmo se representa en el cdigo IEEE de 32 bits el nmero binario
+0,000000101 ?
Al nmero solicitado, para llevarlo a forma normalizada, se le debe
correr la coma siete lugares a la derecha, quedando con:
signo +
exponente -7
mantisa 1,01
Entonces resulta que:
el bit de signo es un 0.
el exponente se debe representar por -7 desplazado en 127 unidades,
es decir por la magnitud 120, que en binario y con 8 bits se escribe
01111000.
la fraccin, luego de suprimir el 1 oculto y agregar a la derecha los
ceros necesarios para completar los 23 bits, queda
01000000000000000000000
Es decir que la palabra que representa al +0,000000101 es
00111100001000000000000000000000
104
Ing. Daniel Acerbi - 2014
52
Ejemplo 3
A que nmero representa en el cdigo IEEE de 32 bits la palabra
00000000000001100000000000000000?
El
nmero buscado:
Es positivo
Es desnormalizado (E=0), por lo que su exponente es -126
Su mantisa es 0,000011 (no hay 1 oculto)
Si se corre la coma 6 lugares a la derecha, quedan:
la mantisa binaria, en 11 (es decir, 3 en decimal)
el exponente en -132
Es decir que la palabra dada representa al
32-132
105
Fin de la presentacin
Cdigos
106
53