Representación de Datos
Representación de Datos
Además, los números se van a representar con una cantidad de bits definida de dígitos binarios N
por defecto es N=8 pudiendo ser 16, 32,…, y otros valores.
Dentro de estas representaciones tenemos los siguientes:
Representación en Signo y Magnitud
En esta representación para N bits el bit del extremo izquierdo representa el signo con las
consideraciones indicadas y los demás N-1 bits representan la magnitud, módulo o valor del
número a representar.
Existen tres formatos de representación los cuales son los siguientes:
a) Módulo Signo (M.S.).- En este formato los números positivos son simplemente el binario
natural de acuerdo al números de bits especificado y en los números negativos simplemente
cambia el bit de signo.
Por ejemplo: Representar los siguientes números decimales a los siguientes formatos:
Modulo Signo (MS) con 8 bits.
Nro. a
Módulo Signo (M.S.)
Representar
𝑆𝑖𝑔𝑛𝑜 𝑑𝑒𝑙 𝑛ú𝑚𝑒𝑟𝑜
⏞
0 ⏟
0100000
𝑁ú𝑚𝑒𝑟𝑜 32 𝑒𝑛 𝑏𝑖𝑛𝑎𝑟𝑖𝑜
1 32
Así la representación del número 32 con ocho bits en M.S. es:
00100000
01011100
4 -92
Ahora volteamos:
⏟
0⏟1⏟
0⏟1⏟
1⏟1⏟
0⏟0
1 0 1 0 0 0 1 1
Así la representación del número -92 con ocho bits en C-1 es:
10100011
5 -124 01111100
Ahora volteamos:
⏟
0⏟1⏟
1⏟1⏟
1⏟1⏟
0⏟0
1 0 0 0 0 0 1 1
Así la representación del número -124 con ocho bits en C-1 es:
10000011
6 -78 01001110
Ahora volteamos:
⏟
0⏟1⏟
0⏟0⏟
1⏟1⏟
1⏟0
1 0 1 1 0 0 0 1
Así la representación del número -78 con ocho bits en C-1 es:
10110001
c) Complemento a 2 (C-2).- En este forma al igual que en los formatos M.S y C-1 los números
positivos se representan de la misma manera sin embargo para representar números
negativos primeramente hallar su negativo en el formato C-1 para luego sumarle uno a la
cifra menos significativa y si existiera acarreo se desprecia.
Por ejemplo: Representar los siguientes números decimales a los siguientes formatos:
Complemento a 1 (C-1) con 8 bits
Nro. a
Módulo Signo (M.S.)
Representar
𝑆𝑖𝑔𝑛𝑜 𝑑𝑒𝑙 𝑛ú𝑚𝑒𝑟𝑜
⏞
0 ⏟
0100000
𝑁ú𝑚𝑒𝑟𝑜 32 𝑒𝑛 𝑏𝑖𝑛𝑎𝑟𝑖𝑜
01011100
Ahora hallamos su negativo en el formato C-1 que es:
10100011
4 -92
Posteriormente le sumamos 1 a la cifra menos significativa:
10100011
+ 1
10100100
Así la representación del número -92 con ocho bits en C-2 es:
10100100
01111100
Ahora hallamos su negativo en el formato C-1 que es:
10000011
5 -124
Posteriormente le sumamos 1 a la cifra menos significativa:
10000011
+ 1
10000100
Así la representación del número -124 con ocho bits en C-2 es:
10000100
01001110
6 -78 10110001
10110001
+ 1
10110010
Así la representación del número -78 con ocho bits en C-2 es:
10110010
Así en una tabla general podemos observar los códigos en sus diferentes formatos:
Nro. A
M.S. C-1 C-2
Representar
1 32 00100000 00100000 00100000
2 45 00101101 00101101 00101101
3 73 01001001 01001001 01001001
4 -92 11011100 10100011 10100100
5 -124 11111100 10000011 10000100
6 -78 11001110 10110001 10110010
Por ejemplo: Realizar las siguientes operaciones en Complemento a 1 (C-1) con 8 bits.
a) 45 – 23
Solución:
45 00101101
+ +
(−23) 11101000
22 100010101
+ 1
00010110
b) 83 – 34
Solución:
83 01010011
+ +
(−34) 11011101
49 100110000
+ 1
00110001
c) 54 – 89
Solución:
54 00110110
+ +
(−89) 10100110
−35 11011100
d) 24 – 75
Solución:
24 00011000
+ +
(−75) 10110100
−51 11001100
e) –43 – 57
Solución:
(−43) 11010100
+ +
(−57) 11000110
−100 110011010
+ 1
10011011
f) –34 – 29
Solución:
(−34) 11011101
+ +
(−29) 11100010
−63 110111111
+ 1
11000000
Por ejemplo: Realizar las siguientes operaciones en Complemento a 1 (C-1) con 8 bits.
a) 45 – 23
Solución:
45 00101101
+ +
(−23) 11101001
22 100010110
b) 83 – 34
Solución:
83 01010011
+ +
(−34) 11011110
49 100110001
c) 54 – 89
Solución:
54 00110110
+ +
(−89) 10100111
−35 11011101
d) 24 – 75
Solución:
24 00011000
+ +
(−75) 10110101
−51 11001101
e) –43 – 57
Solución:
(−43) 11010101
+ +
(−57) 11000111
−100 110011100
f) –34 – 29
Solución:
(−34) 11011110
+ +
(−29) 11100011
−63 111000001
Sistemas de Codificación
Código es un conjunto de símbolos convencionales que permiten representar datos para
su manejo en la computadora.
Codificación es el empleo de un grupo de símbolos para representar todos los números
o símbolos o palabras.
Código Decimal Binario (BCD)
O decimal codificado en binario codifica los diez dígitos decimales 0,1,2,3,4,5,6,7,8 𝑦 9
con cuatro bits cada uno de ellos existen tres versiones de este código los cuales son los
siguientes:
BCD Natural.- Cada digito decimal 0,1,2,3,4,5,6,7,8 𝑦 9 está relacionado a su
correspondiente número binario de cuatro bits.
Decimal BDC
Natural
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
Como este código emplea cuatro bits en cada digito decimal existe seis códigos no
válidos pues con cuatro bits existen 16 combinaciones posibles (de los que
empleamos únicamente los primeros diez).
Por tanto los Códigos no validos son: 10, 11, 12, 13, 14 𝑦15
No Válidos
10 1010
11 1011
12 1100
13 1101
14 1110
15 1111
2) 245
2 4 5
⏞
Solución: 0010 ⏞
0100 ⏞
0101 Por tanto la representación es: 001001000101
3) 85
8 5
⏞
Solución: 1000 ⏞
0101 Por tanto la representación es: 10000101
4) 961
9 6 1
Solución: ⏞
1001 ⏞
0110 ⏞
0001 Por tanto la representación es: 100101100001
5) 765
7 6 5
Solución: ⏞
0111 ⏞
0110 ⏞
0101 Por tanto la representación es: 001111100101
6) 542
5 4 2
Solución: ⏞
0101 ⏞
0100 ⏞
0010 Por tanto la representación es: 010101000010
BCD EXCESO 3.- Es un código simétrico cada digito decimal con su correspondiente
número binario excedido en tres unidades.
Decimal BDC Exceso 3
0 0011
1 0100
2 0101
3 0110
4 0111
5 1000
6 1001
7 1010
8 1011
9 1100
2) 245
2 4 5
⏞
Solución: 0101 ⏞
0111 ⏞
1000 Por tanto la representación es: 010101111000
3) 85
8 5
Solución: ⏞
1011 ⏞
1000 Por tanto la representación es: 10111000
4) 961
9 6 1
Solución: ⏞
1100 ⏞
1001 ⏞
0100 Por tanto la representación es: 110010010100
5) 765
7 6 5
Solución: ⏞
1010 ⏞
1001 ⏞
1000 Por tanto la representación es: 101010011000
6) 542
5 4 2
Solución: ⏞
1000 ⏞
0111 ⏞
0101 Por tanto la representación es: 100001110101
7 1101
8 1110
9 1111
2) 245
2 4 5
Solución: ⏞
0010 ⏞
0100 ⏞
1011 Por tanto la representación es: 001001001011
3) 85
8 5
⏞
Solución: 1110 ⏞
1011 Por tanto la representación es: 11101011
4) 961
9 6 1
⏞
Solución: 1111 ⏞
1100 ⏞
0001 Por tanto la representación es: 111111000001
5) 765
7 6 5
⏞
Solución: 1101 ⏞
1100 ⏞
1011 Por tanto la representación es: 110111001011
6) 542
5 4 2
⏞
Solución: 1011 ⏞
0100 ⏞
0010 Por tanto la representación es: 101101000010
Código GRAY
Es un código no numérico, es decir, no se asocia pasos posicionales a sus dígitos
binarios.
La característica principal de este código es que en una secuencia varia únicamente un
bit entre un código y el siguiente.
En el sistema binario estas variaciones son una desventaja pero en este código existe
solo una variación de digito a digito.
Decimal Binario GRAY
0 0000 0000
1 0001 0001
2 0010 0011
3 0011 0010
4 0100 0110
5 0101 0111
6 0110 0101
7 0111 0100
8 1000 1100
9 1001 1101
10 1010 1111
11 1011 1110
12 1100 1010
13 1101 1011
14 1110 1001
15 1111 1000
2) 245
Solución: Primeramente hallamos el binario del número a representar el cual es:
245 → 11110101(2
Ahora convertimos su binario a Gray:
11110101 → 1101100111
3) 85
Solución: Primeramente hallamos el binario del número a representar el cual es:
85 → 1010101(2
Ahora convertimos su binario a Gray:
1010101 → 11000111
4) 961
Solución: Primeramente hallamos el binario del número a representar el cual es:
961 → 1111000001(2
Ahora convertimos su binario a Gray:
1111000001 → 110101010001
5) 765
Solución: Primeramente hallamos el binario del número a representar el cual es:
765 → 1011111101(2
Ahora convertimos su binario a Gray:
1011111101 → 010001010111
6) 542
Solución: Primeramente hallamos el binario del número a representar el cual es:
542 → 1000011110(2
Ahora convertimos su binario a Gray:
1000011110 → 1101100111
Suma en BCD
El BCD es un código numérico por lo que es posible realizar operaciones aritméticas
siendo la suma la más importante pues a partir de ellas se realizan las restantes
operaciones.
El procedimiento para la suma en BCD Natural es el siguiente:
i. Sumar los dígitos del BCD como si fuese un número binario.
ii. Si el resultado es nueve es un código BCD válido.
iii. Si el resultado es mayor a nueve ósea el resultado genera acarreo los resultados
no son válidos y se debe sumar el dígito corrector binario 0110 ( es decir el
número seis) el cual permite saltar los seis códigos no válidos de BCD si se
presentan los acarreos en las sumas, sumarlos en los dígitos de la siguiente
posición de su izquierda.
Por ejemplo: Realizar las siguientes sumas en BCD
1) 23959 + 23423
Solución:
23959 0010 0011 1001 0101 1001
+ + + + + +
23423 → 0010 0011 0100 0010 0011
47382 ⏟
0100 ⏟
0111 1101 1000
⏟ 1100
+ +
4 7 0110 8 0110
1 0011
⏟ 1 0010
⏟
3 2
Por tanto el resultado en BCD Natural es:
01000111001110000010
2) 76859 + 72635
Solución:
76859 0111 0110 1000 0101 1001
+ + + + + +
72635 → 0111 0010 0110 0011 0101
149494 1110 ⏟
1001 1110 1001
⏟ 1110
+ + +
0110 9 0110 9 0110
⏟
00001 0100
⏟ 1 0100
⏟ 1 0100
⏟
1 4 4 4
3) 57439 + 23623
Solución:
57439 0101 0111 0100 0011 1001
+ + + + + +
23623 → 0010 0011 0110 0010 0011
81062 ⏟
1000 1011 1010 0110
⏟ 1100
+ + +
8 0110 0110 6 0110
1 0001
⏟ 1 0000
⏟ 1 0010
⏟
1 0 2
4) 21742 + 76538
Solución:
21742 0010 0001 0111 0100 0010
+ + + + + +
76538 → 0111 0110 0101 0011 1000
98280 ⏟
1001 ⏟
1000 1100 1000
⏟ 1010
+ +
9 8 0110 8 0110
1 0010
⏟ 1 0000
⏟
2 0
5) 55740 + 52663
Solución:
55740 0101 0101 0111 0100 0000
+ + + + + +
52663 → 0101 0010 0110 0110 0011
108403 1010 ⏟
1000 1110 1010 ⏟
0011
+ + +
0110 8 0110 0110 3
⏟
00001 0000
⏟ 1 0100
⏟ 1 0000
⏟
1 0 4 0
6) 14534 + 26136
Solución:
14534 0001 0100 0101 0011 0100
+ + + + + +
26136 → 0010 0110 0001 0011 0110
40670 ⏟
0100 1010 0110
⏟ 0111
⏟ 1010
+ +
4 0110 6 7 0110
1 0000
⏟ 1 0000
⏟
0 0
Por tanto el resultado en BCD Natural es:
01000000011001110000
El primero de la derecha:
signo BCD
este caso cada cuarteto lleva una cifra en BCD excepto el primero de la derecha el
cual lleva el signo.
1100 para el Positivo
1101 para el Negativo
Para cada byte contendrá 2 de los dígitos:
BCD BCD
El primero de la derecha:
BCD signo
Codificación Alfanumérica
Son todos los símbolos que se tiene en el teclado de la computadora o los símbolos que
introducen a ella.
a) 1111011
1111011 → 𝑃. 𝑃. = 0
b) 111011
111011 → 𝑃. 𝑃. = 1
c) 1111000
1111000 → 𝑃. 𝑃. = 0
ii. Paridad Impar (P.I.).- Cantidad de unos debe ser un número impar
Por Ejemplo.- Determinar el bit de paridad impar de los siguientes incisos:
a) 1001110
1001110 → 𝑃. 𝐼. = 1
b) 1101011
1101011 → 𝑃. 𝐼. = 0
c) 111000111
111000111 → 𝑃. 𝐼. = 1
El Código Hamming
Detecta si existe error en la transmisión además identifica la posición del bit erróneo.
Se construye agregado nuevos bits (P) al código a transmitir estos bits forman un
número binario que identifica la posición del bit erróneo.
La cantidad de bits “P” es el mínimo valor que satisface la relación:
2𝑃 ≥ 𝑁 + 𝑃 + 1
Para hallar los bits de paridad dependerá de donde tiene 1’s controlara a los que
tenga uno en la misma posición.
Para P1 tenemos todos los que tengan uno en la primera posición:
P1: 1 3 5 7 9 11 13 0 1 0 0 0 0 0 donde P1 = 1
Para P2 tenemos todos los que tengan uno en la primera posición:
P2: 2 3 6 7 10 11 14 0 1 0 0 0 1 0 1 donde P2 = 1
Para P3 tenemos todos los que tengan uno en la primera posición:
P3: 4 5 6 7 12 13 14 0 0 0 0 1 0 1 donde P3 = 0
Para P4 tenemos todos los que tengan uno en la primera posición:
P4: 8 9 10 11 12 13 14 0 0 1 0 1 0 1 donde P4 = 1
Así el Código Hamming es:
11100001010101
2) 11100001111 con paridad impar
Solución:
Primeramente hallamos el valor de “P” con la fórmula sabemos que N = 11:
24 ≥ 11 + 4 + 1
Como P = 4 entonces tendremos P1, P2, P3 y P4
Luego realizamos la siguiente tabla:
Pos. del Bit 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Para hallar los bits de paridad dependerá de donde tiene 1’s controlara a los que
tenga uno en la misma posición.
Para P1 tenemos todos los que tengan uno en la primera posición:
P1: 1 3 5 7 9 0 1 1 0 1 donde P1 = 1
Para P2 tenemos todos los que tengan uno en la primera posición:
P2: 2 3 6 7 0 1 1 0 donde P2 = 0
Para P3 tenemos todos los que tengan uno en la primera posición:
P3: 4 5 6 7 0 1 1 0 donde P3 = 0
Para P4 tenemos todos los que tengan uno en la primera posición:
P4: 8 9 0 1 donde P4 = 1
Así el Código Hamming es:
101011011
4) 1001 con paridad impar
Solución:
Primeramente hallamos el valor de “P” con la fórmula sabemos que N = 5:
24 ≥ 5 + 4 + 1
Como P = 4 entonces tendremos P1, P2, P3 y P4
Luego realizamos la siguiente tabla:
Pos. del Bit 1 2 3 4 5 6 7
Des. Del Bit P1 P2 D1 P3 D2 D3 D4
Pos. Bit Bin. 0001 0010 0011 0100 0101 0110 0111
Bit de datos 1 0 0 1
Bit Paridad 1 1 0
Código.
1 1 1 0 0 0 1
Hamming
Para hallar los bits de paridad dependerá de donde tiene 1’s controlara a los que
tenga uno en la misma posición.
Para P1 tenemos todos los que tengan uno en la primera posición:
P1: 1 3 5 7 0 1 0 1 donde P1 = 1
Para P1 tenemos todos los que tengan uno en la primera posición:
P2: 2 3 6 7 0 1 0 1 donde P2 = 1
Para P1 tenemos todos los que tengan uno en la primera posición:
P3: 4 5 6 7 0 0 0 1 donde P3 = 0
Así el Código Hamming es:
1110001
5) 1000000101 con paridad par
Solución:
Primeramente hallamos el valor de “P” con la fórmula sabemos que N = 10:
24 ≥ 10 + 4 + 1
Como P = 4 entonces tendremos P1, P2, P3 y P4
Luego realizamos la siguiente tabla:
Pos. del Bit 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Des. Del Bit P1 P2 D1 P3 D2 D3 D4 P4 D5 D6 D7 D8 D9 D10
Pos. Bit Bin. 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110
Bit de datos 1 0 0 0 0 0 0 1 0 1
Bit Paridad 0 0 0 0
Código.
0 0 1 0 0 0 0 0 0 0 0 1 0 1
Hamming
Para hallar los bits de paridad dependerá de donde tiene 1’s controlara a los que
tenga uno en la misma posición.
Para P1 tenemos todos los que tengan uno en la primera posición:
P1: 1 3 5 7 9 11 13 0 1 0 0 0 0 0 1 donde P1 = 0
Para P2 tenemos todos los que tengan uno en la primera posición:
P2: 2 3 6 7 10 11 14 0 1 0 0 0 0 1 donde P2 = 0
Para P3 tenemos todos los que tengan uno en la primera posición:
P3: 4 5 6 7 12 13 14 0 0 0 0 1 0 1 donde P3 = 0
Para P4 tenemos todos los que tengan uno en la primera posición:
P4: 8 9 10 11 12 13 14 0 0 0 0 1 0 1 donde P4 = 0
Así el Código Hamming es:
00100000000101