Sistemas de Numeración

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 22

SISTEMAS Y CÓDIGOS DE

NUMERACIÓN
Universidad de las Fuerzas Armadas ESPE
Circuitos Digitales
Consulta
NRC:4752

1. Sistemas de numeración

1.1. Ecuación General: Representación de números enteros y decimales

Cualquier sistema numérico de posición puede crearse especificando dos cosas: la base y
los dígitos que integran el alfabeto.

En un sistema de base B, un número N cualquiera se puede representar mediante un


polinomio de potencias de la base, multiplicadas por un símbolo perteneciente al sistema.
En general tendremos:

𝑵𝑩 = ⋯ 𝑆3 𝐵3 + 𝑆2 𝐵2 + 𝑆1 𝐵1 + 𝑆0 𝐵0 + 𝑆−1 𝐵−1 + 𝑆−2 𝐵−2 + ⋯

Donde B es la base del sistema.

(Matemática Digital, Barco, Aristizábal, pág. 3)

1.2. Sistemas de numeración en cualquier base

Algunos de los sistemas de numeración con sus bases se muestran a continuación:

Base Nombre Símbolos de la base


(Dígitos del sistema)
2 Binario 01
3 Ternario 012
4 Cuaternario 0123
5 Quinario 01234
6 Hexal 012345
7 Septal 0123456
8 Octal 01234567
9 Nonario 012345678
10 Decimal 0123456789
11 Undecimal 0123456789A
12 Duodecimal 0123456789AB
13 Tridecimal 0123456789ABC
14 Tetradecimal 0123456789ABCD
15 Pentadecimal 0123456789ABCDE
16 Hexadecimal 01 2 3 4 5 6 7 8 9 A B C D E F
Tabla 1. Sistemas de numeración

(Matemática Digital, Barco, Aristizábal, pág. 4)

1.3.Sistemas de numeración más usados: Decimal, Binario, Octal y Hexadecimal

Sistema decimal

Es aquel sistema en el que se combinan de una manera sistemática los diez símbolos
0,1,2,3,4,5,6,7,8,9 para representar las cantidades y ejecutar con ellas las operaciones
aritméticas.

… 𝑆2 𝑆1 𝑆0 → 𝑁ú𝑚𝑒𝑟𝑜𝑠 𝑒𝑛𝑡𝑒𝑟𝑜𝑠

… 𝑆2 𝑆1 𝑆0 . 𝑆−1 𝑆−2 … → 𝑁ú𝑚𝑒𝑟𝑜𝑠 𝑑𝑒𝑐𝑖𝑚𝑎𝑙𝑒𝑠

𝑆𝑁 representa un símbolo cualquiera de un sistema numérico dado y el subíndice indica


la posición del símbolo con relación al punto de base a punto decimal.

Sistema binario

El sistema binario está compuesto por dos dígitos 0 y 1, y su base es 2; cada uno representa
un bit de información. En computación los sistemas binarios representan una cantidad
numérica, por ejemplo 1101001, las computadoras pueden reconocer cinco funciones
diferentes: datos numéricos reales, números correspondientes a una dirección de
memoria, un código de instrucción, código que represan a caracteres alfanuméricos e
información sobre las condiciones de dispositivos internos o externos en la computadora.

Secuencia de conteo binario


23 = 8 22 = 4 21 = 2 20 = 1 Decimal
0 0 0 0 0
0 0 0 1 1
0 0 1 0 2
0 0 1 1 3
0 1 0 0 4
0 1 0 1 5
0 1 1 0 6
0 1 1 1 7
1 0 0 0 8
1 0 0 1 9
1 0 1 0 10
1 0 1 1 11
1 1 0 0 12
1 1 0 1 13
1 1 1 0 14
1 1 1 1 15
Tabla 2. Secuencia de conteo binario

(Matemática Digital, Barco, Aristizábal, pág. 8)

Sistema Octal

En este sistema existen 8 símbolos diferentes del 0 al 7, tienen base 8. Resulta muy
sencilla la conversión del sistema octal a binario, por ser 8 = 23 .

Cuando se trabaja con una gran cantidad de números binarios de muchos bits, es más
adecuado escribirlos en octal y no en binario.

Sistema Hexadecimal

Este sistema es el de base 16, es decir que para la representación de las cantidades utiliza
16 números diferentes; estos son dígitos del 0 al 9 y letras del alfabeto de A a F. Al igual
que el del octal resulta sencilla la conversión de números del sistema binario al
hexadecimal debido a que 16 es una potencia de 2 (16 = 24 ).

(Sistemas electrónicos Digitales, Enrique mandado, pág. 5,6)

Las equivalencias en los sistemas numéricos son las siguientes:


Sistemas numéricos
Decimal Binario Octal Hexadecimal
(Base 10) (Base 2) (Base 8) (Base 16)
0 0000 00 0
1 0001 01 1
2 0010 02 2
3 0011 03 3
4 0100 04 4
5 0101 05 5
6 0110 06 6
7 0111 07 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
Tabla 3. Sistemas numéricos con sus respectivas bases.

(Matemática Digital, Barco, Aristizábal, pág. 18)

1.4. Conversiones de cualquier base a cualquier base

Conversión de decimal a otro sistema

El primer paso de la conversión consiste en separar la parte entera de la parte fraccionaria

La parte entera se divide por la base del número deseado, el primer residuo se designa por
𝑆0 , el segundo residuo por 𝑆1 y así sucesivamente hasta que el residuo sea menor a la
base, el cociente final será 𝑆𝑁 .

Por último, los números designados son leídos de derecha a izquierda proporcionando así
el número de la base que se quiere determinar equivalente al número entero decimal.

Ejemplo:

Conversión de 120,95 a número Hexa


Parte entera: 120

Parte decimal: 0.95

Dividimos la parte entera para 6.

120 20
= 20 → 𝑐𝑜𝑛 𝑟𝑒𝑠𝑖𝑑𝑢𝑜 5 = 𝑺𝟎 = 3 → 𝑐𝑜𝑛 𝑟𝑒𝑠𝑖𝑑𝑢𝑜 2 = 𝑺𝟏 𝑺𝟐 = 3
6 6

La conversión es: 12010 = 3256

Para la parte fraccionaria se multiplica el número por la base del número deseado

Se separa la parte entera del resultado y se designa como 𝑆−1 , se continua este
procedimiento hasta que ocurra una de las siguientes condiciones:

a) La parte fraccionaria del producto es exactamente cero (0)


b) Los dígitos de la fracción comienzan a repetirse

Ejemplo:

0,95 0,70 0,20 0,20


× 6 × 6 × 6 × 6
̅̅̅̅̅̅
𝟓, 70 ̅̅̅̅̅̅
𝟒, 20 ̅̅̅̅̅̅
𝟏, 20 ̅̅̅̅̅̅
𝟏, 20

𝑺−𝟏 = 5 𝑺−𝟐 = 4 𝑺−𝟑 = 1 𝑺−𝟒 = 1

0,9510 = 0,54111 …6 = 0,54(1)6

El número final de la conversión es: 120,9510 = 325,54(1)6

Conversión de otro sistema a decimal

Para convertir un numero de otro sistema a decimal se representa el número dado en su


forma común en base específica B y se simplifica utilizando la aritmética decimal para
obtener el número en la forma convencional decimal.

Ejemplo:

Número en base 4: 12032.3024

𝐵𝑎𝑠𝑒 𝑒𝑠𝑝𝑒𝑐í𝑓𝑖𝑐𝑎

= 1 × 44 + 2 × 43 + 0 × 42 + 3 × 41 + 2 × 40 + 3 × 4−1 + 0 × 4−2 + 2 × 4−3

= 256 + 128 + 0 + 12 + 2 + 0.75 + 0 + 0.03125


= 398.78125

12032.3024 = 398.7812510

(Matemática Digital, Barco, Aristizábal, pág. 5,6)

Conversión de octal a binario y binario a octal

Para convertir un número de base 8 a la base 2, se convierte cada cifra en su equivalente


binario. Por ejemplo, Si tenemos el número 325.68 se tiene:

38 = 0112
28 = 0102
58 = 1012
68 = 1102
La conversión es:

325.68 = 011010101.1102

La conversión del sistema de base 2 al sistema de base 8, se realiza a la inversa, agrupando


los bits enteros y fraccionarios en grupos de 3 a partir de la coma; y para completar el
último grupo se añaden los 0 necesarios. Por ejemplo, el número 11010.10112 .

Binario Octal
011 3
010 2
101 5
100 4
La conversión es:

11010.10112 = 32.548

Conversión de hexadecimal a binario y binario a hexadecimal

Para la conversión de un sistema hexadecimal a binario se reemplaza cada símbolo por


su equivalente binario, por ejemplo 9𝐴7𝐸1616 .

916 = 10012
𝐴16 = 10102
716 = 01112
𝐸16 = 11102
La conversión es:

9𝐴7𝐸1616 = 10011010011111102

La conversión de un sistema en base 2 al sistema de base 16 se realiza a la inversa,


agrupando los bits enteros y fraccionarios en grupos de 4 a partir de la coma, y añadiendo
ceros en caso de ser necesario. Por ejemplo, el número: 100111.101012

00102 = 216
01112 = 716
10102 = 𝐴16
10002 = 816
La conversión es:

100111.101012 = 27. 𝐴816

2. Operaciones aritméticas

2.1. Suma, resta, multiplicación y división binaria

Suma

Interviene la relación de equivalencia con sus propiedades esenciales, reflexiva, simétrica


y transitiva. En la adición los elementos se llaman sumandos y el operador es el signo (+)
y es conmutativa.

Tabla de adición binaria:

+ 0 1
0 0 1
1 1 10
Ejemplos:

1 + 1 = 210 → 1 + 1 = 102 2 + 1 = 310 → 10 + 1 = 112

1 10 10 11
+ 1 + 10 + 1 + 01
̅̅̅̅̅̅
𝟏0 ̅̅̅̅̅̅̅̅̅
𝟏𝟎𝟎 ̅̅̅̅̅̅
𝟏𝟏 ̅̅̅̅̅̅̅̅
𝟏𝟎𝟎
Resta

La sustracción no es conmutativa, tiene como elementos el minuendo y el sustraendo, su


operador es el signo (-).

Tabla de sustracción binaria:

- 0 1
0 0 1
0 -1 0
Ejemplos:

0 1 − 1 100 1111.111
− 1 − 1 − 1 − 1 − 100.101
̅̅̅̅̅̅
−𝟏 ̅̅̅̅̅̅̅
𝟎 ̅̅̅̅̅̅
−𝟏𝟎 ̅̅̅̅̅̅̅̅
𝟏𝟏 ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝟏𝟎𝟏𝟏. 𝟎𝟏𝟎

(Matemática Digital, Barco, Aristizábal, pág. 10)

Multiplicación

La multiplicación es conmutativa, asociativa y distributiva; sus elementos son:


multiplicando y multiplicador, el operador es el signo (x); estos elementos también son
conocidos como factores.

Tabla de multiplicación binaria:

x 0 1
0 0 0
1 0 1

Ejemplos:

11 101
10 10 11 𝑥 11 𝑥 11
𝑥 1 𝑥 10 𝑥 10 ̅̅̅̅̅̅̅
11 ̅̅̅̅̅̅̅̅̅
101
̅̅̅̅̅̅
𝟏𝟎 ̅̅̅̅̅̅̅̅
𝟏𝟎𝟎 ̅̅̅̅̅̅
𝟏𝟏𝟎 11 101
̅̅̅̅̅̅̅
𝟏𝟎𝟎𝟏 ̅̅̅̅̅̅̅
𝟏𝟏𝟏𝟏

Para multiplicar números que tienen parte entera y fraccionaria se opera como el
sistema decimal. Por ejemplo:
11.101
11.1
𝑥 1.01
𝑥 1.1 ̅̅̅̅̅̅̅̅̅̅̅̅̅
̅̅̅̅̅̅̅̅̅̅ 11101
111 00000
111
̅̅̅̅̅̅̅̅̅̅̅ 11101
𝟏𝟎𝟏. 𝟎𝟏 ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝟏𝟎𝟎. 𝟏𝟎𝟎𝟎𝟏

División

Los elementos de la división son dividendo y divisor, y se realiza como en la división con
números decimales, primero se debe desplazar el punto binario tanto en el dividendo
como en el divisor hasta que este sea un número entero; cuando el número de cifras
fraccionarias del divisor es mayor que él dividendo es necesario agregar a este los ceros
que se necesiten, Si el número de cifras del divisor es igual o menor que las cifras del
dividendo se coloca 1 en el cociente caso contrario se colocará 0.

Ejemplos:

1) 2)

1.111 111.1 11.11 111.1


= =
0.11 11 10.1 101

111.1 11 111.1 101


-11 10.1 -101 1.1
011 101
- 11 - 101
0 0

Existen fracciones binarias inexactas periódicas que pueden ser:

Periódicas puras: si la fracción tiene cifras que se repiten indefinidamente

Periódicas mixtas: si se presenta un grupo de cifras no periódicas seguido de infinito


número de periodos

(Matemática Digital, Barco, Aristizábal, pág. 13,14)

2.2. Suma y resta hexadecimal

Suma
En la suma hexadecimal se sigue las mismas reglas que la decimal, teniendo en cuenta
que el número mayor es F, se siguen los siguientes pasos:

1. Se suman los dos dígitos hexadecimales en decimal, insertando el equivalente


hexadecimal para números mayores que 9.
2. Si la suma es igual o menor que 15 puede expresarse como digito hexadecimal.
3. Si la suma es mayor o igual a 16 se le resta 16 y se arrastra un 1 hacia el digito de
la siguiente posición.

Ejemplo:

2816 𝑦 5416 𝐵716 𝑦 2616 1𝐹𝐸16 𝑦 95𝐴16


1FE
28 B7
+ 95ª
+ 54 + 26
B58
7C DD

Resta

Para resta de números hexadecimales se emplea el mismo método que para restar binarios;
es decir, en vez de restar, se suma el complemento a 2 del número hexadecimal. El
sustraendo hexadecimal se complementa a 2 y luego se suma al minuendo. Si existe
acarreo se desprecia.

Ejemplo:

Efectuar 5𝐶𝐴16 − 42𝐶16

El sustraendo 42𝐶 se complementa a 2, así:

4 2 C
0100 0010 1100 Binario
1011 1101 0100 Complemento a 2
B D 4 Hexadecimal complemento a 2
Y luego se efectúa la suma:
5CA
+ BD4
119E

Se desprecia el bit de acarreo y la resta da 19E. Puede comprobarse que:


5CA
- 42C
19E

(Matemática Digital, Barco, Aristizábal, pág. 19, 20)

3. Complemento de números

3.1.Complemento a la base y base disminuida

Cuando un dígito, aparte de 0, se sustrae de la base del sistema numérico en el cual se


expresa, el resultado es en complemento respecto a la base. En el sistema decimal, éste
es el complemento con respecto a 10 o complemento a 10. El complemento a 10 de un
entero decimal se obtiene retándolo de 10 elevado a una potencia igual al número de
dígitos del entero. Por ejemplo:

Complemento a diez de 461 𝑒𝑠 103 − 461 = 539

El mismo concepto puede aplicarse a los números binarios. Sea N un entero binario con
n dígitos. El complemento a 2 de N, que se denota 𝑁2 , se obtiene al restar el número de
2𝑛 expresado en forma binaria, esto es, restando el número binario de 1 seguido por n
ceros.

𝑁2𝑐 = 2𝑛 − 𝑁

Una manera más simple de obtener el complemento a dos de un número N puede


generalizarse a partir del ejemplo:

4. Se retiene el 1 menos significativo del número


5. También se retienen los ceros menos significativos que este 1
6. Todos los demás dígitos se sustituyen por sus complementos: 0 por 1 y 1 por 0

Las diferentes maneras de manejar el 1 menos significativo y los demás dígitos es el


resultado de “pedir prestado” cuando se efectúa la sustracción. Luego al sustraer un 1 de
1, queda 0; la sustracción de un 0 de un 1 deja un 1. De ese modo, la sustracción de cada
digito en N de 1 equivale a sustituir cada digito por su complemento, salvo del caso del 1
menos significativo. Incluso esta diferencia entre el 1 menos significativo y los otros
desaparecerá si restamos del resultado. Esto es, dado un entero binario N con n dígitos,
se forma el complemento a dos: 𝑁2𝑐 = (2𝑛 )2 − 𝑁 . Después de esto se resta 1.

𝑁1𝑐 = 𝑁2𝑐 − 1 = (2𝑛 )2 − 1 − 𝑁

Esto se conoce como el complemento a la base menos uno o complemento a uno en el


sistema binario, 𝑁1𝑐 . Por ejemplo:

El complemento a uno de 1011010 es:

𝑁1𝑐 = 𝑁2𝑐 − 1 = (27 )2 − 1 − 𝑁

𝑁1𝑐 = 1000000 − 1 − 1011010 = 1111111 − 1011010 = 0100101

3.2. Representación de números negativos

Los números sobre los cuales opera una computadora digital pueden ser positivos o
negativos, los números negativos surgen cuando se sustrae un número mayor que un
menor.

Aunque no es evidente a partir del desarrollo anterior, el complemento a dos proporciona


una manera de manejar números negativos. Se adoptará la siguiente representación
mezclada de números.

Un número no negativo (numero positivo o cero) se representará mediante su forma


binaria; un numero negativo se representará por medio del complemento a dos de su
magnitud.

Esta forma mezclada se conoce como representación numérica del complemento a dos.

(Principios de Diseño Lógico Digital, Balabanian, Carlson, pág. 11, 12)

4. Suma y resta binaria con signo

4.1. Magnitud y signo

Las computadoras digitales almacenan los números binarios en registros conformados por
dispositivos de almacenamiento de nominados FLIP – FLOPS, cada uno de estos
dispositivos almacena un bit, el signo se introduce con un bit adicional a la izquierda: 0
para los números positivos (+) y 1 para los números negativos (-).

4.2. Complemento a 1
El complemento a 1 de un sistema binario se obtiene cambiando cada bit del número por
su complemento.

En conclusión, el complemento a uno de un entero binario es justamente ese entero


binario con cada bit 1 sustituido por un 0 y cada bit 0 reemplazado por un 1.

4.3. Complemento a 2

El complemento a 2 de un número binario se halla tomando el complemento a 1 y


sumándole una unidad al bit menos significativo.

Por ejemplo, para introducir el signo al número +4310 se agrega un bit 0 adelante, así:
011010112 = +4310 .

Para obtener el número negativo −4310 se halla el complemento a 2 del número positivo,
por ejemplo, 10101012 = −4310.

El complemento a 2 de un número con signo cambiará un número positivo por uno


negativo y viceversa, es decir, que el complemento a 2 cambia la polaridad del número.
También se usa para representar números binarios con signo pues permite transformar
sustracciones adiciones, esto es importante porque la computadora podrá realizar ambas
operaciones utilizando los mismos circuitos. Al utilizar el complemento a 2 se pueden
representar 4 casos:

1.- Suma de dos números positivos,

Para sumar +28 con +13 se procede así:


+ 0011100
+ 28
+ 0001101
+ 13
+ 0101001
+ 41
2.- Resta entre dos números positivos en donde el minuendo el mayor que el sustraendo,

Para sumar +28 con -13:


+ 28 0011100
- 13 + 1110011
+ 15 10001111

El bit de acarreo se desprecia.

3.- A un número positivo se le suma un número negativo mayor,


Para sumar +13 con -28:
0001101
- 13
+ 1100100
+ 28
1110001
- 15
00011112 = +1510 (𝐶𝑜𝑚𝑝𝑙𝑒𝑚𝑒𝑛𝑡𝑜 𝑎 2)

4.- Sumar dos números negativos.


1110011
- 13
+ 1110001
- 15
11100100
- 28
00111002 = +2810 (𝐶𝑜𝑚𝑝𝑙𝑒𝑚𝑒𝑛𝑡𝑜 𝑎 2)

El bit de acarreo se desprecia.

La siguiente tabla muestra los números binarios con 4 bits usando el complemento a 2.

Decimal Complemento a 2
-8 1000
-7 1001
-6 1010
-5 1011
-4 1100
-3 1101
-2 1110
-1 1111
+0 0000
+1 0001
+2 0010
+3 0011
+4 0100
+5 0101
+6 0110
+7 0111
Tabla 4. Sistema decimal con su complemento a 2

(Matemática Digital, Barco, Aristizábal, pág. 12)


4.4. Desborde aritmético
Si la longitud del número que resulta de una operación aritmética sobre números
binarios excede la longitud de palabra n de la computadora, se retiene un numero
compuesto de los n bits menos significativos; los bits más significativos construirán
un desbordamiento.

5. Códigos de computador

5.1. Definición de un código

La información que los humanos transmiten se expresa por medio de un conjunto de


símbolos y cada uno de ellos constituyen un alfabeto del cual estos símbolos son los
dígitos, la serie de dígitos reciben el nombre de palabras, la asignación de una palabra de
código a cada mensaje en un conjunto de mensajes constituye un código.

El código es una representación unívoca de las cantidades y de los caracteres alfabéticos


de tal forma que, a cada uno de ellos, se asigna una combinación de símbolos
determinada. Con esto se concluye que los sistemas numéricos son códigos de
representación de cantidades.

Los códigos utilizados pueden ser binarios con peso, como el BCD, y códigos binarios
sin peso por ejemplo el código Gray; otros códigos son los detectores y correctores de
error los cuales utilizan un “bit de paridad”, que es un bit extra que viaja con la palabra y
puede ser indicador de un número par o impar.

5.2. Códigos binarios

El sistema binario recibe el nombre de código binario natural y representa considerables


ventajas al momento de realizar operaciones aritméticas, este es un alfabeto con solo dos
dígitos, es posible utilizarlo para codificar cualquier información deseada.

El número de bits que se usa en cada palabra de código depende del número total de
mensajes distintos que se van a transmitir en la información deseada, si el número de
mensajes es igual a dos, entonces será suficiente una palabra de código de un solo bit.
Con n cifras binarias o bits se pueden obtener 2𝑛 combinaciones diferentes y a cada una
de ellas se le puede asignar una cantidad distinta. (Principios de diseño lógico digital pág.
16)
5.3. Códigos BDC

La información que es ingresada por cualquier sistema digital se convierte finalmente al


sistema decimal para que se pueda interpretar con mayor facilidad. Esta es la principal
razón de que existan códigos decimales codificados en binario (BCD Binary Coded
Decimal).

En este tipo de códigos cada número decimal se codifica directamente en un código


binario. Solo es necesario saber los grupos de cuatro bits para los dígitos decimales de 0
a 9, esto hace que el número necesario de bits para representar una cantidad en un
código BDC sea superior al del código binario natural. (Sistemas electrónicos Digitales,
Enrique mandado, pág. 8)

Decimal BCD
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
Tabla 5. Código BCD

Por ejemplo, el número decimal 40.825 se escribe en el sistema BCD como:

01000000.100000100101

Mientras que el número escrito como binario es:


40.82510 = 101000.110(100)2

La diferencia entre los dos es que en el código BCD la conversión es inmediata y escrito
como binario es un proceso más largo de realizar.

(Matemática Digital, Barco, Aristizábal, pág. 15)

5.4. Código GRAY


Un código con una característica muy útil es aquel en el cual las palabras de código
sucesivas difieren exactamente en una posición de bit. Se dice que este tipo de códigos
son cíclicos; un código cíclico tiene solo 2 bits, por ejemplo, 00, 01, 11, 10. Sólo
cambia un bit al ir de una palabra a la palabra adyacente, incluso cuando se regresa de la
última palabra a la primera. (Matemática Digital, Barco, Aristizábal, pág. 18)

El código Gray completo de n bits tiene 2𝑛 palabras. Una gran ventaja de este código es
su facilidad de conversión al código binario natural y viceversa mediante la función O.

Dígito Código Código


decimal binario Gray
natural
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
Tabla 6. Código Gray
(Sistemas electrónicos Digitales, Enrique mandado, pág. 10)
5.5. Propiedades de los códigos
Propiedades como la auto complementación se observa en el código BCD Aiken,
este es un código en el que la combinación correspondiente al complemento a 9
de N(9-N), se obtiene invirtiendo la combinación correspondiente a N, es decir,
cambiando los ceros por unos y viceversa. Esta propiedad hace que un sumador/
restador de números codificados se realice con un circuito más sencillo que los
codificados en BCD natural.

(Sistemas electrónicos Digitales, Enrique mandado, pág. 8)


5.6. Códigos continuos y cíclicos

Un código es continuo si las combinaciones correspondientes a números decimales


consecutivos son adyacentes, se denominan combinaciones binarias adyacentes a aquellas
que difieren solamente en un bit. Se utilizan en todas aquellas aplicaciones en las que
alguna imperfección puede hacer que aparezcan combinaciones erróneas debido a que no
cambian simultáneamente todos los bits que deben hacerlo.

Un código continuo en el que la última combinación es adyacente a la primera se


denomina cíclico. El mayor código cíclico de mayor difusión es el código Gray.

5.7. Códigos alfanuméricos

Muchos sistemas digitales tanto de control como de proceso de datos, es necesario


representar información alfabética y además algunos signos especiales, el código
alfanumérico más utilizado en los sistemas de microcomputadores es el código ASCII
(American Standard Code for Information Interchange).

El siguiente listado contiene códigos de 7 bits para números, letras mayúsculas y


caracteres de puntuación.

Lista parcial del conjunto de caracteres ASCII


Carácter ASCII Carácter ASCII
Espacio 010 0000 A 100 0001
! 010 0001 B 100 0010
“ 010 0010 C 100 0011
# 010 0011 D 100 0100
4 010 0100 E 100 0101
% 010 0101 F 100 0110
& 010 0110 G 100 0111
‘ 010 0111 H 100 1000
( 010 1000 I 100 1001
) 010 1001 J 100 1010
* 010 1010 K 100 1011
+ 010 1011 L 100 1100
, 010 1100 M 100 1101
- 010 1101 N 100 1110
. 010 1110 O 100 1111
/ 010 1111 P 101 0000
0 011 0000 Q 101 0001
1 011 0001 R 101 0010
2 011 0010 S 101 0011
3 011 0011 T 101 0100
4 011 0100 U 101 0101
5 011 0101 V 101 0110
6 011 0110 W 101 0111
7 011 0111 X 101 1000
8 011 1000 Y 101 1001
9 011 1001 Z 10110
Tabla 7. Código ASCII

(Matemática Digital, Barco, Aristizábal, pág. 21)

6. Códigos de error

6.1. Códigos de detección y corrección de errores

En el manejo y transmisión de una información numérica, es probable que se creen errores


debido a la presencia de ruido en el proceso o avería de un componente. Cuando en un
código binario se han utilizado todas las combinaciones posibles de sus n posiciones, es
imposible la detección de un error, porque una combinación del código se modifica en
otra que también pertenece a él. Por ello para detectar un error en un código binario no se
utilizan todas las combinaciones.

Para que un código binario permita detectar errores es necesario tener en cuenta el
concepto de distancia mínima de un código. La distancia entre dos combinaciones
binarias viene dada por el número de bits de una de ellas que se modifican para obtener
la otra, la distancia mínima de un código es la menor de las distancias entre dos
combinaciones binarias cualesquiera pertenecientes al mismo.
El valor de la distancia mínima de los códigos estudiados es la unidad, para que un código
puede detectar errores su distancia mínima ha de ser superior a la unidad.

Existen diferentes tipos de códigos detectores de errores, entre los cuales se encuentras
los códigos de peso constante y códigos de paridad constante.

Códigos de peso constante: entre los códigos de peso constante se encuentran el 2 entre 5
y biquinario, los códigos de 2 entre 5, posee solamente dos lógicos y la distancia mínima
de este código es 2.

Dígito Código
decimal 2 entre 5
0 01100
1 11000
2 10100
3 10010
4 01010
5 00110
6 10001
7 01001
8 00101
9 00011

El código biquinario es un código ponderado de 7 bits, distancia mínima de dos y ha sido


utilizado en operaciones aritméticas.

Digito Peso
decimal 5043210
0 0100001
1 0100010
2 0100100
3 0101000
4 0110000
5 1000001
6 1000010
7 1000100
8 1001000
9 1010000

6.2. Códigos de paridad

Estos códigos se obtienen añadiendo a las combinaciones de los códigos de distancia


unidad un bit conocido como paridad. Si el código que se desea obtener es de paridad par,
el bit que se añada debe ser tal que el número de unos en cada combinación del nuevo
código sea par, por el contrario, si el código que se desea es de paridad impar el bit que
se agrega a cada combinación tiene que ser tal que la resultante tenga número impar de
unos.

La detección de errores en estos códigos consiste en comprobar si el número de unos en


cada combinación es par o impar; tanto los códigos de peso constante como los de paridad
son de distancia mínima dos y permiten la detección de errores de un bit.

La posibilidad de utilizar códigos detectores de errores de paridad constante obtenidos a


partir de los códigos de distancia mínima igual a la unidad como el binario natural o BCD
natural constituyen una de las características de los sistemas electrónicos digitales, para
la transmisión de información a distancia a través de un canal serie en el que las señales
eléctricas se puedan alterar debido a la presencia de ruido.

Los códigos correctores de errores no solo indican la existencia de un error sino también
brindan información de cuál es la cifra o cifras binarias erróneas y, por consiguiente,
permiten su corrección simplemente invirtiendo el bit correspondiente.

Se utilizan solamente en la transmisión de información en especial cuando no es posible


volver a enviarla en caso de producirse un error, esto sucede en algunos sistemas digitales
que trabajan a tiempo real, por ejemplo, aquellos que están situados en un satélite.

Los códigos de distancia mínima dos no permite la corrección de errores, ya que al


momento de producirse un error la combinación obtenida posee como mínimo dos
adyacentes perteneciente al código y no es posible comprender de cual de las dos procede.

Por lo tanto, para poder corregir errores la distancia mínima debe ser superior a dos. En
general la distancia mínima de un código para que permita corregir errores de n bits ha
de ser de 𝑑𝑚 = 2𝑛 + 1. (Sistemas electrónicos Digitales, Enrique mandado, pág.
14,15,16)

6.3. Código de Hamming

Los códigos Hamming se basan en la adición a un código de distancia unidad de n bits,


obteniéndose un nuevo código de n + p bits. En este nuevo código se realizan p
detecciones de paridad en bits seleccionados del mismo, con esto se obtiene un bit de
paridad uno o cero según el numero de bits sea par o impar. El conjunto de los p bits de
paridad forman un número en el sistema binario natural cuyo equivalente decimal nos
indica la posición del bit erróneo, y en caso de no existir ningún error dicho número debe
ser cero. Dado que p bits se obtiene de 2𝑝 combinaciones, se ha de cumplir la siguiente
relación 2𝑝 ≥ 𝑛 + 𝑝 + 1.

Por ejemplo:

En este código n=4, y por tanto el número de bits que se añaden es 3 para que cumpla la
relación, es decir, 23 = 4 + 3 + 1.

(Sistemas electrónicos Digitales, Enrique mandado, pág. 14,15,16, 18

Referencias
Carlos Barco, G. B. (1998). Matemática Digital. Bogotá: McGraw Hill.

Mandado, E. (1981). Sistemas Electrónicos Digitales. Bilbao: Marcombo.

Norman Balabanian, B. C. (2002). Principio de diseño lógico digital. México: Grupo Patria
Cultural.

También podría gustarte