1 / 41

Curso Circuitos Digitales I Sesión 2

Curso Circuitos Digitales I Sesión 2. Prof. José Edinson Aedo Cobo, Msc. Dr. Eng . E-mail: joseaedo@udea.edu.co Departamento de Ingeniería Electrónica Grupo de Microelectrónica - Control Universidad de Antioquia. Sistemas numéricos y métodos de conversión.

inga-kirby
Download Presentation

Curso Circuitos Digitales I Sesión 2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Curso Circuitos Digitales ISesión 2 Prof. José Edinson Aedo Cobo, Msc. Dr. Eng. E-mail: joseaedo@udea.edu.co Departamento de Ingeniería Electrónica Grupo de Microelectrónica - Control Universidad de Antioquia

  2. Sistemas numéricos y métodos de conversión El sistema posicional (para expresar cantidades) Sistema decimal (base 10, se utilizan 10 símbolos: 0..9): ejemplo el número 953.78 (953.78)10= 9 x102 + 5 x101 + 3 x100 + 7 x10-1 + 8 x10-2 Sistema binario (base 2): ejemplo el número 1011.11 (1011.11)2= 1 x23 + 0 x22 + 1 x21 + 1 x20 + 1 x2-1 + 1 x2-2 = 8 + 0 + 2 + 1 + 0,5 + 0,25 = (11.75)10 Se emplean 2 dígitos (símbolos): 0,1 ( # símbolos = Base)

  3. Sistemas numéricos y métodos de conversión Generalización del sistema posicional: Sistema en base r : Se deben usar r símbolos o coeficientes. Sea el número (a4a3a2a1a0.a-1a-2a-3) en base r: (a4a3a2a1a0.a-1a-2)r = a4 x r4+ a3 x r3+ a2 x r2+ a1 x r1+ a0 x r0+ a-1 x r-1+ a-2x r-2 ai son los coeficientes (dígitos) donde 0≤ ai≤ r-1

  4. Sistemas numéricos y métodos de conversión Ejemplos: sistema en base ocho (octal): Símbolos: 0,1,2,3,4,5,6,7 Ejemplo (147.3)8 (147.3)8 = 1 x82 + 4 x81 + 7 x80 + 3 x8-1 = 64 + 32 + 7 + 3/8 = 103.37510

  5. Sistemas numéricos y métodos de conversión Ejemplos: sistema hexadecimal (base 16): Símbolos (16): 0,1,2,3,4,5,6,7, 8, 9, A, B, C, D, E, F Ejemplo (A2F)16 para encontrar el equivalente en el sistema decimal los símbolos deben expresarse en el sistema decimal, luego considerando: A = 10, B= 11, C= 12, D=13, E= 14, F=15 tenemos: (A2F)16 = 10 x162 + 2 x161 + 15 x160 = 2560 + 32 + 15 = 260710

  6. Taller en clase (40 minutos) • Procedimientos para realizar las operaciones suma, resta, multiplicación y división de números en los siguientes sistemas: • Binario • Octal • Hexadecimal • Siguiendo el material suministrado establezca los procedimientos • Para realizar las operaciones. Revisar los ejemplos suministrados para cada caso. • Nota: considere las tablas de multiplicar suministradas para el • sistema octal y hexadecimal en los ejercicios de • multiplicación.

  7. Representación de números con signo La forma más simple: Utilizar un digito llamado dígito de signo Se puede escribir el número con signo en el formato de magnitud y signo (sm) en la base r, de la siguiente forma: Ejemplo: N= -(13)10 sería (1, 1101)2sm y (9, 13)10sm S Representación de la magnitud Dígito de signo s= 0 si N es positivo N= (san-1 ….a0.a-1 a-2..a-m)rsm s= r si N es negativo

  8. Sistemas numéricos complementarios • Son útiles para realizar operaciones con números con signo. • Tipos de sistemas numéricos: • Complemento a una base (r): [N]r de un número (N)r se calcula: • [N]r = rn-(N)r • El número positivo más grande (escala positiva total) = rn-1-1 • El número negativo más pequeño (escala total negativa)=-rn-1 • Ejemplo: • Sea (N)2= (01100101)2 (r =2 y n= 8) [01100101]2 = ? n: número de dígitos r : es la base

  9. Sistemas numéricos complementarios Ejemplo (solución): [01100101]2 = 28 – (01100101)2 = (100000000)2 – (01100101)2 = (10011011)2 Nótese: 28 = (100000000)2 dígito adicional8 dígitos 8 dígitos Luego: [N]2 + (N)2 = 2n – (N)2 + (N)2 = 0 (n dígitos) + (acarreo) [N]2 + (N)2 = 0 o sea que [N]2 = -(N)2 [N]2 se puede usar para representar números negativos !!

  10. Sistemas numéricos complementarios Ejemplo: sea (N)2= (11010100)2 [N]2 = 28 – (11010100)2 = (100000000)2 – (11010100)2 = (00101100)2 Ahora: (N)2 + [N]2 = 0 11010100 + 00101100 1 00000000 Nótese que: [[N]2]2 = (N)2 Verificarlo ! acarreo

  11. Sistemas numéricos complementarios Ejercicio: Determinar el complemento a dos de: (N)2 = (10110)2 para n = 8 Ejercicio: Determinar el complemento a 10 de (40960)10

  12. Algoritmos para calcular [N]r a partir de (N)r Algoritmo 1: 1. A partir de dígito menos significativo se copian los dígitos de (N)r hasta encontrar el primer digito i distinto de cero ese dígito se reemplaza por r - ai A partir de esa posición los dígitos aj siguientes se remplazan por (r-1) – aj hasta llegar el dígito más significativo Algoritmo 2: Reemplazar cada dígito de aK de (N)r por (r-1)-ak Sumarle 1 al resultado

  13. Algoritmos para calcular [N]r a partir de (N)r Ejercicio: Encontrar el complemento a 2 de (11010100)2 Nótese que r-1 = 2-1 =1 Algoritmo 1 Algoritmo 2 1 (-----100) (00101011) + 1 2 (00101100) (00101100)

  14. Algoritmos para calcular [N]r a partir de (N)r Ejercicios: 1. Encontrar el complemento a 10 de (40960)10 2. Encontrar el complemento a 2 de (1100101)2

  15. Sistema numérico de complemento a 2 • Los números positivos se representa por magnitud y signo ( se utiliza el bit 0 a la izquierda para representar el signo positivo). • Los números negativos se representan con el complemento a 2 del número positivo correspondiente. • Notación: (N)2cns • De esta manera: • N= +(an-2 ….a0) =(0, an-2 ….a0 )2cns Con 0≤ N ≤ 2n-1 -1 • Si N = (an-1 ….a0) -N se representa por el complemento a 2 • de N o sea [N]2 con -1 ≥ - N ≥ - 2n-1

  16. Sistema numérico de complemento a 2 Ejemplos: Dado (N)2 = (1100101)2 determinar +(N) y –(N) con n= 8. El caso positivo: +(N)2 = (0, 1100101)2cns El caso negativo: -(N)2 =[0, 1100101]2 = (1, 0011011)2cns se utiliza una coma para identificar el bit de signo

  17. Sistema numérico de complemento a 2 • Ejercicios: • Determinar el complemento a 2 de +-(110101)2 para n=8. • Determinar el complemento a 2 de –(13)10 • Determinar el numero decimal representado por N=(1,1111010)2cns

  18. Aritmética en complemento a 2 La utilización de complemento a 2 facilita la implementación física (menos puertas lógicas) La operación: A – B se puede calcular como A + (-B) Los números se pueden representar en el intervalo: -2n-1≤ N ≤ 2n-1 -1 Donde n es el número de bits para representar el número. Si una operación aritmética produce un resultado por fuera de este intervalo se dice que se presenta una condición de desbordamiento. (no es un resultado válido).

  19. Aritmética en complemento a 2 Suma de números en complemento a 2 Caso 1: Calcular A = B + C donde B y C son enteros positivos O sea: (A)2 = (B)2 + (C)2 Como: 0≤ B ≤ 2n-1 -1 y 0≤ C ≤ 2n-1 -1 0≤ A ≤ 2n-1 -1 + 2n-1 -1 Luego: 0≤ A ≤ 2n- 2 Se presentara condición de desbordamiento cuando el resultado: 2n-1≤ A ≤ 2n- 2 ( el n-ésimo bit será siempre 1 mostrando el desbordamiento)

  20. Aritmética en complemento a 2 Suma de números en complemento a 2 Caso 1: Ejemplo: sumar +(1001)2 y +(0101)2 usando aritmética a dos de 5 bits +(1001)2 = (0, 1001)2cns 0 1 0 0 1 +(0101)2 = (0, 0101)2cns + 0 0 1 0 1 0 1 1 1 0 El bit de signo es “0” el resultado es correcto: (0, 1110)2cns = +(14)10

  21. Aritmética en complemento a 2 Suma de números en complemento a 2 Caso 1: Ejemplo: sumar +(1100)2 y +(0111)2 usando aritmética complemento a dos de 5 bits +(1100)2 = (0, 1100)2cns 0 1 1 0 0 +(0111)2 = (0, 0111)2cns + 0 0 1 1 1 1 0 0 1 1 El bit de signo es “1” el resultado es incorrecto: (1, 0011)2cns = -(1101)2 = -(13)10 Observación: existe desbordamiento. Se requieren más bits para expresar el resultado (19)10 el máximo valor que se puede expresar: (0, 1111)2cns

  22. Aritmética en complemento a 2 Suma de números en complemento a 2 Caso 2: Calcular A = B - C donde B y C son enteros positivos O sea: (A)2 = (B)2 + (-(C))2 (A)2 = (B)2 + [C]2 Luego: A = (B)2 + [C]2 = (B)2 + 2n – (C)2 = 2n + (B – C)2 Nótese: 2n es el bit de acarreo y si B ≥ C siempre habrá acarreo (A)2 = (B)2 + [C]2 y el acarreo se descarta. Si B < C (B-C) < 0 luego: A = 2n - (C – B)2 = -(C-B)2 [C-B] 2 no hay acarreo

  23. Aritmética en complemento a 2 Suma de números en complemento a 2 Caso 2: Si B y C son positivos B – C siempre será menor que A, lo cual significa que no habrá desbordamiento Ejemplo: calcular (12)10 – (5)10 , en complemento a 2 usando 5 bits. como: (12)10 =+(1100)2 y -(5)10 =-(0101)2 +(1100)2 = (0, 1100)2cns 0 1 1 0 0 -(0101)2 = (1, 1011)2cns + 1 1 0 1 1 1 0 0 1 1 1 Se descarta el acarreo, el bit de signo es cero, resultado: +(7)10 hay acarreo

  24. Aritmética en complemento a 2 Suma de números en complemento a 2 Caso 2: Ejemplo: calcular (5)10 – (12)10 , en complemento a 2 usando 5 bits -(12)10= -(1100)2 y (5)10=+(0101)2 +(0101)2 = (0, 0101)2cns 0 0 1 0 1 -(1100)2 = (1, 0100)2cns + 1 0 1 0 0 1 1 0 0 1 no hay acarreo No hay acarreo, el bit de signo es uno (correcto), resultado: -(7)10

  25. Aritmética en complemento a 2 Suma de números en complemento a 2 Ejemplo: calcular (0,0111)2cns – (1,1010)2cns Para usar un sumador se nota que –(1, 1010) = (0,0110) (0,0111)2cns (0, 0111)2cns 0 0 1 1 1 -(1,1010)2cns (0, 0110)2cns + 0 0 1 1 0 0 1 1 0 1 No hay acarreo, el bit de signo es cero (correcto), resultado: +(13)10

  26. Aritmética en complemento a 2 Suma de números en complemento a 2 Ejemplo: calcular (0,0111)2cns – (1,1010)2cns Para usar un sumador se nota que –(1, 1010) = (0,0110) (0,0111)2cns (0, 0111)2cns 0 0 1 1 1 -(1,1010)2cns (0, 0110)2cns + 0 0 1 1 0 0 1 1 0 1 No hay acarreo, el bit de signo es cero (correcto), resultado: +(13)10 Nota: -[A] =[[A]2]2 = 2n –[A]2 = 2n – (2n –A) = A

  27. Aritmética en complemento a 2 • Suma de números en complemento a 2 • Caso 3: Calcular: A= - B – C = -(B+C) = [B + C]2 • A= (-B) + (-C) = [B]2 + [C]2 • A= 2n – (B)2 + 2n –(C)2 • A = 2n + [B+C]2 • Se consideran 2 posibilidades: • Si -2n-1≤ A y se descarta el acarreo el resultado será correcto. • Si A <-2n-1 Habrá desbordamiento y el bit de signo es incorrecto – aparece como positivo (el resultado es incorrecto).

  28. Aritmética en complemento a 2 Suma de números en complemento a 2 Caso 3: Ejemplo: calcular (-(9))10 + (-(5))10 , en complemento a 2 usando 5 bits -(9)10= -(1001)2 y -(5)10=-(0101)2 -(1001)2 = (1, 0111)2cns 1 0 1 1 1 -(0101)2 = (1, 1011)2cns + 1 1 0 1 1 1 1 0 0 1 0 hay acarreo hay acarreo (se descarta), el bit de signo es uno (correcto), resultado: -(14)10

  29. Aritmética en complemento a 2 Suma de números en complemento a 2 Caso 3: Ejemplo: calcular (-(12))10 + (-(5))10 , en complemento a 2 usando 5 bits -(12)10= -(1100)2 y -(5)10=-(0101)2 -(1100)2 = (1, 0100)2cns 1 0 1 0 0 -(0101)2 = (1, 1011)2cns + 1 1 0 1 1 1 0 1 1 1 1 hay acarreo hay acarreo (se descarta), el bit de signo es cero (incorrecto), resultado: +(15)10 el valor correcto debe ser –(17)10

  30. Aritmética en complemento a 2 Suma de números en complemento a 2 Ejercicio: Sea A = (25)10 y B= -(46)10 Calcular: A + B, A- B, B – A y –A-B, usando la suma

  31. Aritmética en complemento a 2 Suma de números en complemento a 2 Ejercicio: Solución: Como A = +(25)10 =(0,0011001)2cns B= -(46)10 =-(0,0101110)2cns =(1, 1010010)2cns

  32. Sistemas numéricos con complemento disminuido en una base El complemento disminuido de un número (Nr) en una base se define: [N]r-1 = rn-(N)r – 1 Caso especial: complemento disminuido en una base para los números binarios (se llama: complemento a a 1): [N]2-1 = 2n-(N)2 – 1 Ejemplos: encontrar el complemento a 1 de (01100101)2 [N]1 = 28 – (01100101)2- 1 = (100000000)2- (01100101)2- (00000001)2 =(10011011)2 - (00000001)2= (10011010)2 n: número de dígitos r : es la base

  33. Sistemas numéricos con complemento disminuido en una base Ejercicios: -Encontrar el complemento a 1 de (11010100)2 Resp: (00101011)2 - Encontrar el complemento a 9 de (40960)10 Resp: (59039)10

  34. Sistemas numéricos con complemento disminuido en una base Algoritmo para encontrar el complemento disminuido a una base: Reemplazar cada digito ai de (N)r por r-1-ai Caso especial: si r=2 basta reemplazar cada bit por su complemento. Ejercicio: Aritmética de complemento disminuido a una base. Qué es el acarreo final circular ? Analizar los mismos casos de las sumas , que se analizaron para el complemento a 2, con el complemento 1.

  35. Códigos de computadoras Son conjuntos de símbolos que se utilizan para representar Información. Ejemplo el: Semáforo: símbolos: verde, amarillo, rojo Cada tiene un significado (representa una información) Estudiaremos tres tipos de códigos: - Códigos numéricos. - Códigos de caracteres - Códigos para detección de errores.

  36. Códigos de computadoras Códigos numéricos: representan números. Ejemplos: Números de puntos fijo Números de puntos flotante. Números de punto fijo: Entero con signo, Fracciones con signo. .

  37. Códigos de computadoras Entero de punto fijo: . Signo Magnitud punto implícito Fracción de punto fijo: signo Magnitud punto implícito Bit signo 0: Representa un número positivo Bit signo 1: Representa un número negativo ( en complemento a 2) . n-1 n-2 n-3 …………… 2 1 0 0 1 2 …………… n-2 n-2 n-1 .

  38. Códigos de computadoras Representación con Exceso o Sesgada: Una representación con exceso –K de un código C se forma sumando el valor de K a la palabra de código C. Ejemplo: Sea el número [0111]2 (en complemento a 2) de cuatro bits. La representación en exceso 8 sería: Se suma (1000)2 (exceso 8) al código: [0111]2 + (1000)2 exceso 8: (1111) .

  39. Códigos de computadoras Números en punto flotante: Tienen la forma: N = M x r E mantisa(significado) Exponente(característica) Exponente: es un entero fijo Mantisa: es un número de punto fijo. Observe que: +-(an-1 …a0. a-1 a-m)r = +-(.an-1….a-m)r x rn La mantisa generalmente se codifica en magnitud y signo: signo=0 Positiva y signo=1 negativa .

  40. Códigos de computadoras Números en punto flotante: El exponente con frecuencia se codifica en complemento a 2 con Exceso K. Generalmente K es: 2e-1 donde e es el número de bits. Osea: -2e-1≤ E ≤ 2e-1 -1 Sumando el sesgo K 0 ≤ E + 2e-1 ≤ 2e -1 Luego el valor sesgado de E varía entre 0 y 2e -1 E = (be-1, be-2 ….b0) exceso -K Representación: se combina M y E: N=(SM be-1 be-2 … b0 an-1 … a-m)r =(1)SM x(.an-1 … a-m)r xrE .

  41. Codificación BCD ( códigos de caracteres) Decimal codificado en binario Sirve para representar dígitos del 0 al 9. Cada posición de bit en el código tiene un valor o peso numérico fijo asociado a ella. BCD: utiliza 4 bits y los pesos son los mismos que en un entero binario de 4 bits. El código BCD de un digito decimal, es igual al equivalente binario del número, con ceros de relleno. 0: 0000 3: 0011 6: 0110 9: 1001 1: 0001 4: 0100 7: 0111 10: XXXX 2: 0010 5: 0101 8: 1000 Ejemplo: (9750)10 = (1001011101010000)BCD .

More Related