Sistemas Digitales
Prof. PABLO
Sistemas Digitales
Civil Biomédica
AQUEVEQUE N . 2013
Pablo
(Sc.D.)
Introducción
Prof. Pablo Aqueveque Navarro.
e-mail :
[email protected]
Página web: www.udec.cl/~paaqueve web: www.udec.cl/~paaqueve www.biodas.cl Bibliografía : Thomas L. Floyd, “Fundamentos de Sistemas Si stemas Digitales”, Prentice Hall. Hans Rautenberg, “Diseño de sistemas digitales”, UdeC. Tocci, Widmer, “ Sistemas digitales, principios y aplicaciones”, Prentice Hall. Mano, M. Morris, “Lógica digital y diseño de computadores”, Prentice Hall.
Sistemas Digitales
Civil Biomédica
Pablo
(Sc.D.)
Introducción • Las señales en la vida real son continuas y discretas. • Magnitudes analógicas y digitales. • Sistema analógico común (radio cassette). • Sistema digital común (mp3) . • Existen formas de representar los datos. • En los sistemas digitales se tiene un muestreo. • Los sistemas digitales trabajan con distintos niveles previamente definidos.
Sistemas Digitales
Civil Biomédica
Prof. Pablo
Sistemas de Numeración
Numeración Decimal es utilizado comúnmente .
Existen 10 símbolos {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}.
32= 3 x 101 + 2 x 100 9 + 1 10 Sistemas Digitales
8 + 4 12 Civil Biomédica
Prof. Pablo
Sistemas de Numeración
Un número se representa por la suma de potencias en base 10 (ya que existen 10 símbolos).
Miles
10
3
Sistemas Digitales
Cientos
10
2
Decenas
10
Civil Biomédica
1
Unidad
10
0
Décimo
10
-1
Centésimo
10
Milésimo
-2
Prof. Pablo
10
-3
Sistemas de Numeración.
Los circuitos digitales trabajan con sistemas binarios ya que son más fáciles de identificar (sólo 2 estados). Los sistemas binarios se representan en base 2 y tienen sólo 2 símbolos disponibles. Se representan los números en función de los 2 dígitos disponibles (0 y 1). Este sistema de 2 dígitos se denomina “Sistema Binario” o “sistema digital binario”.
Sistemas Digitales
Civil Biomédica
Prof. Pablo
Sistemas de Numeración
Sistema Decimal
Sistema Binario
Sistema Hexadecimal
Sistemas Digitales
Civil Biomédica
Prof. Pablo
Sistemas Binarios
Cada Bit a la izquierda tiene un mayor “peso”. MSB 1 1 0 0 1 LSB
La representación de números binarios negativos puede ser de 3 formas:
Complemento a 1 Complemento a 2 Signo Magnitud
Sistemas Digitales
Civil Biomédica
Prof. Pablo
Complemento a 1
El complemento a 1 de un número se obtiene cambiando todos los “1” por “0” y los “0” por “1”. Ejemplo. Número Binario 11 d Complemento a 1 -11 d
Sistemas Digitales
Civil Biomédica
› 0000 101 1 › 1 1 1 1 0100
Prof. Pablo
Complemento a 2
El complemento a 2 de un número binario se obtiene sumando “1” al complemento a 1 del número. Ejemplo. Número Binario 11 d Complemento a 1 Complemento a 2 -11 d
Sistemas Digitales
Civil Biomédica
› 0000 101 1 › 1 1 1 1 0100 › 1 1 1 1 0101
Prof. Pablo
Formato Signo Magnitud
En este formato el primer bit indica el signo. Un “0” indica el número positivo, en cambio un “1” indica un número negativo. Ejemplo
Sistemas Digitales
9d -9 d
Civil Biomédica
› 00001001 › 1 0001001
Prof. Pablo
Numeración Binaria fraccionaria
Se pueden expresar además números menores que cero.
Ejemplo. 0,5 d › 0,1000 b
Sistemas Digitales
Civil Biomédica
Prof. Pablo
Representación numérica Los sistemas estudiados son parte de una forma particular de representar cantidades, en general un número se puede representar por cualquier base B y sus correspondientes símbolos a i mediante el siguiente polinomio Bn an + B n-1 an-1 + …B a1 + 1 a0 + B –1 a –1 + … + B –m a -m
Símbolos de bases más conocidas •Decimal 0 1 2 3 4 5 6 7 8 9 •Binario 0 1 •Octal 0 1 2 3 4 5 6 7 •Hexadecimal 0 1 2 3 4 5 6 7 8 9 A B C D E F Sistemas Digitales
Civil Biomédica
Prof. Pablo
Equivalencias entre sistema decimal, binario, octal y hexadecimal D ec im al
B i n ar i o
O c t al
H ex a
D ec im al
B i n ar i o
O c t al
H ex a
0
0000
00
00
8
1000
10
08
1
0001
01
01
9
1001
11
09
2
0010
02
02
10
1010
12
0A
3
0011
03
03
11
1011
13
0B
4
0100
04
04
12
1100
14
0C
5
0101
05
05
13
1101
15
0D
6
0110
06
06
14
1110
6
0E
7
0111
07
07
15
1 111
17
0F
D ec im al
B i n ar i o
O c t al
H ex a
D ec i m a l
B in ar i o
O c t al
H ex a
16
1 0000
20
10
24
1 1000
30
18
17
1 0001
21
12
25
1 1001
31
19
18
1 0010
22
13
26
11010
32
1A
19
1 0011
23
14
27
11011
33
1B
20
1 0100
24
15
28
11100
34
1C
21
1 0101
25
16
29
11101
35
1D
22
1 0110
26
17
30
11110
36
1E
23
1 0111
27
18
31
1 1111
37
1F
Sistemas Digitales - Ing. Civil Biomédica
Cambios de Base Conversión a decimal Para convertir un número entero de base binaria a base decimal, se recurre a su polinomio equivalente y calculando su valor en decimal Ejemplo. (1101,011)2 = 1* 2 3 + 1 * 2 2 + 0 * 2 1 + 1 * 2 0 + 0 * 2 –1 + 1 * 2 –2 + 1 * 2 – 3 = 8 + 4 + 1 + 0,25 + 0,125 = 13,375
Cambios de Base Conversión de decimal a base r El procedimiento consiste en dividir el número por la base r en forma sucesiva y el resto de la división se transformará en el dígito de la nueva base. •Si N es entero, las posiciones van del menos significativo al más significativo. •Si N es fraccional, entonces van del más significativo al menos significativo. Ejemplo (745) 10 a octal 745 / 8 93 / 8 11 / 8 1/8
= 93 + resto (1) = 11 + resto (5) = 1 + resto (3) = 0 + resto (1)
Número en Octal: (1351) 8
Cambios de Base
Base decimal a base binaria Se divide el número decimal entre 2, el cociente se vuelve a dividir entre 2 y así sucesivamente.
Los restos obtenido forman el número en el sistema binario. Ejemplo
327
327/2 = 163/2 = 81/2 = 40/2 = 20/2 = 10/2 = 5/2 = 2/2 = 1/2 = =
163 + 1 81 + 1 40 + 1 20 + 0 10 + 0 5+0 2+1 1+0 0+1 101000111
Cambios de Base Binario a octal •Se divide el número binario en grupos de tres dígitos (8 = 2 3). Su suma ponderada da un número en el sistema octal. •El número dado tendrá tantos dígitos en el sistema octal como grupos se hayan formado en el sistema binario. Ejemplo
(1 1 0 1 0 1 1 1 . 0 1 1 0 1 0) 2 = (3 2 7 . 3 2) 8
Cambios de Base Binario a hexadecimal Se divide el número binario en grupos de 4 dígitos (16 = 2 4). La suma ponderada de estos dígitos entrega el número correspondiente en hexadecimal, luego el número hexadecimal tendrá tantos dígitos como grupos de 4 dígitos se puedan formar con el número binario. Ejemplo (1 0 1 1 1 1 1 . 0 1 1 0 1) 2 = (5 F . 6 8) 16
Cambios de Base Sistema Octal a decimal. Es la suma ponderada de los digitos (base 8). Ejemplo. (3034,75) 8
= 3 * 512 + 0 * 64 + 3 * 8 + 4 * 1 + 7 * 1/8 + 5 * 1/64 = 1.564,953125
Decimal a octal. Se divide el número en forma sucesiva por la base 8, generando los dígitos octales con cada resto de la división. Ejemplo (12342)10. 12342/8 = 1542/8 = 192/8 = 24/8 = 3/8 =
1542 + 6 192 + 6 24 + 0 3+0 0+3
El número en octal = (30066)8
Cambios de Base Octal a binario. El equivalente binario de cada una de las cifras, representada con tres dígitos binarios. Ejemplo. (52) 8 = 101 010 Octal a hexadecimal Para esta conversión es conveniente transformar el número a decimal y luego el decimal llevarlo a hexadecimal. Otra alternativa es representarlo en binario y luego convertir de binario a hexadecimal
Hexadecimal a binario Cada grupo de cuatro digitos binarios equivale a una cifra hexadecimal, por lo que se sustituyen por el correspondiente símbolo hexadecimal. Ejemplo. DF4 = 1101 1111 0100 Hexadecimal a decimal Para esta conversión se utiliza el polinomio equivalente, considerando que los dígitos A, B, C, D, E y F deben ser sustituidos por las cantidades 10, 11, 12, 13, 14 y 15 respectivamente
Señales Binarias
Las señales binarias tienen varias formas de representarse:
Por niveles, Ej.: Nivel Alto=1 Nivel Bajo = 0
Por Flancos, Ej.: Flanco subida=1 Flanco Bajada =0
Estas señales son Voltajes que están presentes en los circuitos digitales.
Sistemas Digitales
Civil Biomédica
Prof. Pablo
Notaciones
Desde ahora asumiremos que un circuito digital trabaja con código binario simple o BCD. Un “bit” es el elemento básico o un digito del sistema binario y puede tomar valores “0” ó “1”. Un “Byte” es un conjunto de bits. La cantidad depende de la codificación, pero es universalmente reconocido que 1 byte = 8 bits.
Sistemas Digitales
Civil Biomédica
Prof. Pablo
Notaciones
Sistemas Digitales
Civil Biomédica
Prof. Pablo
Códigos Binarios El sistema binario que hemos estudiado recibe el nombre de código binario natural, sin embargo existen otros códigos binarios diferentes con sus propias características Decimal
Código Johnson
0
00000
1
00001
2
00011
3
00111
4
01111
5
11111
6
11110
7
11100
8
11000
9
10000
Código Johnson Es un código continuo y cíclico, pero no resulta una representación eficiente para indicar cantidades, ya que la capacidad de codificación de código para n bits es de 2 * n cantidades diferentes. Ejemplo de código para 5 bits.
Sistemas Digitales
Civil Biomédica
Prof. Pablo
Códigos Binarios Código Gray Es un código continuo porque las combinaciones correspondientes a números decimales consecutivos son adyacentes (es cíclico). No tiene pesos ni es aritmético. El código Gray se utiliza para poder detectar y corregir posibles errores de transmisión. Se obtiene sumando los números adyacentes del sistema binario, partiendo siempre con el mismo número de la izquierda MSB. Los códigos Gray varían según el número de dígitos que posean
Decimal
Código Binario
Código 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
Códigos Binarios Códigos BCD (Binary Code Decimal)
El código BCD natural es una norma de 4 dígitos binarios para representar los dígitos decimales de 0 a 9 (sólo utiliza 10 de las 16 combinaciones posibles). Los códigos BCD son ponderados ya que a cada posición o cifra binaria se le asigna un peso y el número decimal equivalente a una combinación binaria se obtiene sumando los pesos de las posiciones que valen 1.
Decimal
BCD natural
BCD Aiken
BCD 5421
0
0000
0000
0000
1
0001
0001
0001
2
0010
0010
0010
3
0011
0011
0011
4
0100
0100
0100
5
0101
1011
1000
6
0110
1100
1001
7
0111
1101
1010
8
1000
1110
1011
9
1001
1111
1100
Códigos Binarios BCD exceso 3
Código decimal
BCD exceso 3
0
0011
1
0100
2
0101
3
0110
4
0111
5
1000
6
1001
7
1010
8
1011
9
1100
Es el BCD que se obtiene al sumar la cantidad 3 a cualquiera de las combinaciones del BCD natural Tiene la ventaja de ser autocomplementario (igual que el Aiken), es decir, que la combinación correspondiente al complemento a 9 de n, o sea, n – 9, se obtiene invirtiendo la combinación de dígitos; es decir, cambiando los unos por ceros y los ceros por unos
Código
Representación del (528)10
BCD Natural
0101 0010 1000
BCD Aiken
1011 0010 1110
BCD 5421
1000 0010 1011
BCD exceso 3
1000 0101 1011
Ejemplo de representación de un número decimal 528 en los diversos códigos BCD
Otros Códigos Código ASCII •
Como hemos visto, los 0 y 1 se pueden utilizar para representar números en diversos sistemas (códigos).
•
También pueden codificarse para representar letras del alfabeto u otros símbolos.
•
Un código conocido de 7 bits es el American Standard Code for Information Interchange ( ASCII ). Este código se utiliza, entre otras cosas, para interpretar los caracteres del teclado en lenguaje de computadora.