Codificación digital de la información Sistemas Digitales S-3 Representación de números binarios signados 1) Sistema signo-magnitud: bits de magnitud bit de signo "𝟎“ para número > 𝟎 "𝟏“ para número < 𝟎 Representación de números binarios signados 2) Sistema del complemento a 1: Los números > 𝟎, se representan igual que los números en signo-magnitud. Los números < 𝟎, se representan obteniendo el 𝑪 − 𝟏 del correspondiente nro > 𝟎. 1410 0 11102 1410 1 00012 Representación de números binarios signados 3) Sistema del complemento a 2: Los números > 𝟎, se representan igual que los números en signo-magnitud. Los números < 𝟎, se representan obteniendo el 𝑪 − 𝟐 del correspondiente nro > 𝟎. 1410 0 11102 1410 1 00102 Valor decimal de números binarios signados 1) Números en formato signo-magnitud: 24 23 22 21 20 1001012 1 0 0 1 0 1 0 0 4 0 1 510 Valor decimal de números binarios signados 2) Números en formato de complemento a 1: 26 25 24 23 22 21 20 01001012 0 1 0 0 1 0 1 32 4 1 3710 26 25 24 23 22 21 20 10100112 1 0 1 0 0 1 1 64 16 21 4510 110 4410 Valor decimal de números binarios signados 3) Números en formato de complemento a 2: 28 27 26 25 24 23 22 21 20 0110101102 0 1 1 0 1 0 1 1 0 128 64 16 4 2 21410 28 27 26 25 24 23 22 21 20 1110101102 1 1 1 0 1 0 1 1 0 256 128 64 16 4 2 4210 Valor decimal de números binarios signados 3) Representación del “cero”: S-M C 1 C 2 0 0000 0000 0000 0 1000 1111 0000 Sustracción con complementos 0 10 0 10 100101 010011 010010 minuendo sustraendo resta o diferencia Sustracción con complementos M r N M N r n Si 𝑴 ≥ 𝑵, se descarta un acarreo de salida 𝒓𝒏 . El resultado es 𝑴 − 𝑵. Si 𝑴 < 𝑵, no produce un acarreo de salida 𝒓𝒏 . El resultado es 𝒓𝒏 − 𝑵 − 𝑴 . n Sustracción con complementos M 647310 M N N 135210 r N 10 135210 1000010 135210 n 4 864810 6 4 7 3 10 1 3 5 2 10 5 1 2 1 10 M r n N 647310 864810 1512110 r n 104 1000010 512110 Sustracción con complementos M 59210 M N N 362110 r N 10 362110 1000010 362110 n 4 637910 5 9 2 10 3 6 2 1 10 3 0 2 9 10 M r n N 59210 637910 697110 697110 C 10 302910 r n N M 302910 Sustracción con complementos M 111100012 M N N 11101012 r N 2 11101012 n 8 1000000002 11101012 100010112 1 1 1 1 0 0 0 12 1 1 1 0 1 0 12 1 1 1 1 1 0 02 M r n N 111100012 100010112 1011111002 r n 108 1000000002 Sustracción con complementos M 11101012 M N N 111100012 r N 2 111100012 n 8 1000000002 111100012 11112 M r n N 11101012 11112 100001002 100001002 C 2 11111002 1 1 1 0 1 0 12 1 1 1 1 0 0 0 12 1 1 1 1 1 1 0 02 Operaciones con números con signo Las 3 formas de representar los números con signo: 𝑺 − 𝑴, 𝑪 − 𝟏 ó 𝑪 − 𝟐. Sin embargo, se emplea la representación 𝑪 − 𝟐 en aritmética computacional dado que: En 𝑪 − 𝟐 solamente el número cero tiene una única representación. La representación en 𝑆 − 𝑀 es incomoda puesto que debe operarse en forma separada el signo de la magnitud. La representación 𝑪 − 𝟏 presenta dificultades de manipulación y no es empleada, excepto en operaciones lógicas (dado el cambio de 0 → 1 y de 1 → 0). Si se estudia la suma de 2 números con signo, con la resta como un caso particular de la suma, se tienen 4 casos: i. ii. iii. iv. Ambos números son positivos. La magnitud del número positivo es mayor que la magnitud del número negativo. La magnitud del número positivo es menor que la magnitud del número negativo. Ambos números son negativos. Operaciones con números con signo i. Caso i.- 710 510 1210 01112 01012 11002 Operaciones con números con signo ii. Caso ii.- 710 6 10 110 01112 10102 C 2 de 0110 100012 2 00012 Operaciones con números con signo iii. Caso iii.- 7 10 410 310 10012 C 2 de 0111 1002 C 2 11012 2 10012 1002 100112 Operaciones con números con signo iv. Caso iv.- 8 10 6 10 1410 10002 C 2 de 1000 10102 C 2 de 0110 C 2 100102 2 2 10002 10102 111102 Operaciones con números con signo: “overflow” Bit de signo 1510 1310 2810 0 11112 0 11012 1 11002 supuestos bits de magnitud Supuesto bit de signo Números binarios en coma flotante Definido por el estándar 754-1985 ANSI/IEEE, un NCF se basa en la notación científica y se utiliza para representar números enteros muy grandes o muy pequeños que requieran de muchos bits. Existen NCF de doble precisión (64 𝑏𝑖𝑡𝑠), NCF de precisión ampliada (80 𝑏𝑖𝑡𝑠) y NCF de simple precisión (32 𝑏𝑖𝑡𝑠). , Parte entera Parte fraccionaria 8 2,415068 10 241.506.800d Números binarios en coma flotante Formato de NCF de simple precisión: 0 ( ) 1 () 𝑆𝑒 𝑒𝑠𝑐𝑟𝑖𝑏𝑒 𝑒𝑛 𝑓𝑜𝑟𝑚𝑎 𝑛𝑜𝑟𝑚𝑎𝑙𝑖𝑧𝑎𝑑𝑎 1 + 𝑝𝑎𝑟𝑡𝑒 𝑓𝑟𝑎𝑐𝑐𝑖𝑜𝑛𝑎𝑟𝑖𝑎 𝑜𝑚𝑖𝑡𝑖𝑒𝑛𝑑𝑜 𝑒𝑙 𝑒𝑛𝑡𝑒𝑟𝑜 (1). "𝑭" 𝑚𝑎𝑛𝑡𝑖𝑠𝑎 "𝒔“ 𝑠𝑖𝑔𝑛𝑜 1 bit 8 bits 23 bits 𝑒𝑥𝑝𝑜𝑛𝑒𝑛𝑡𝑒 "𝑬" 𝐹𝑜𝑟𝑚𝑎𝑡𝑜 𝑒𝑥𝑐𝑒𝑠𝑜 − 127, 𝑖𝑛𝑑𝑖𝑐𝑎 𝑑𝑒𝑠𝑝𝑙𝑧𝑎𝑚𝑖𝑒𝑛𝑡𝑜 𝑑𝑒 𝑐𝑜𝑚𝑎. 𝑅𝑒𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑎 𝑛ú𝑚𝑒𝑟𝑜𝑠 𝑐𝑜𝑛 𝑒𝑥𝑝𝑜𝑛𝑒𝑛𝑡𝑒 𝑑𝑒𝑠𝑑𝑒 − 126 ℎ𝑎𝑠𝑡𝑎 127. 𝑆𝑒 𝑐𝑎𝑙𝑐𝑢𝑙𝑎 𝑟𝑒𝑠𝑡𝑎𝑛𝑑𝑜 1 𝑎𝑙 𝑒𝑛𝑡𝑒𝑟𝑜 𝑚á𝑠 𝑔𝑟𝑎𝑛𝑑𝑒 𝑞𝑢𝑒 𝑠𝑒 𝑝𝑢𝑒𝑑𝑒 𝑟𝑒𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑎𝑟 𝑐𝑜𝑛 𝑵 𝒃𝒊𝒕𝒔 𝑦 𝑙𝑢𝑒𝑔𝑜 𝒅𝒊𝒗𝒊𝒅𝒊𝒆𝒏𝒅𝒐 𝒑𝒐𝒓 𝟐. Números binarios en coma flotante Dado que el exponente determina la posición del “𝑟𝑎𝑑𝑒𝑥 𝑝𝑜𝑖𝑛𝑡”, se pueden representar números que tengan parte entera como parte fraccionaria. La únicas excepciones son: 𝟎, 𝟎 → se presenta solo utilizando ceros. ∞ → se representa solo “1” en el exponente y “0” en la mantisa. 1 bit 8 bits 23 bits 𝑒𝑥𝑝𝑜𝑛𝑒𝑛𝑡𝑒 "𝑬" 𝐹𝑜𝑟𝑚𝑎𝑡𝑜 𝑒𝑥𝑐𝑒𝑠𝑜 − 127, 𝑖𝑛𝑑𝑖𝑐𝑎 𝑑𝑒𝑠𝑝𝑙𝑧𝑎𝑚𝑖𝑒𝑛𝑡𝑜 𝑑𝑒 𝑐𝑜𝑚𝑎. 𝑅𝑒𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑎 𝑛ú𝑚𝑒𝑟𝑜𝑠 𝑐𝑜𝑛 𝑒𝑥𝑝𝑜𝑛𝑒𝑛𝑡𝑒 𝑑𝑒𝑠𝑑𝑒 − 126 ℎ𝑎𝑠𝑡𝑎 127. 𝑆𝑒 𝑐𝑎𝑙𝑐𝑢𝑙𝑎 𝑟𝑒𝑠𝑡𝑎𝑛𝑑𝑜 1 𝑎𝑙 𝑒𝑛𝑡𝑒𝑟𝑜 𝑚á𝑠 𝑔𝑟𝑎𝑛𝑑𝑒 𝑞𝑢𝑒 𝑠𝑒 𝑝𝑢𝑒𝑑𝑒 𝑟𝑒𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑎𝑟 𝑐𝑜𝑛 𝑵 𝒃𝒊𝒕𝒔 𝑦 𝑙𝑢𝑒𝑔𝑜 𝒅𝒊𝒗𝒊𝒅𝒊𝒆𝒏𝒅𝒐 𝒑𝒐𝒓 𝟐. Números binarios en coma flotante Ejemplo: 5777d 0 12 + 1 0 1 1 0 1 0 0 1 0 0 0 1 1, 0 1 1 0 1 0 0 1 0 0 0 1 212 (S ) 0 (E ) 12 12 127 139 10001011 (F ) 011010010001 𝑺 𝑬 𝑭 0 1 0 0 0 1 0 1 1 0 1 1 0 1 0 0 1 0 0 0 1 Números binarios en coma flotante Ejemplo: 1 10010010 11110110000000000000000 1 1 F 2 E 127 S (S ) 1 (E ) 10010010 27 24 21 14610 1 (F ) 1111011 0 0 1 1 1111011 2146127 no aportan 1 1,1111011 219 11111011000000000000 1.028.096, 010 Números binarios en coma flotante Ejemplo: 1 10010010 11110110000000000000000 1 1 F 2 E 127 S (S ) 1 (E ) 10010010 27 24 21 14610 1 (F ) 1111011 0 0 1 1 1111011 2146127 no aportan 1 1,1111011 219 𝑜𝑡𝑟𝑎 𝑓𝑜𝑟𝑚𝑎: 19 1,960937510 2 1,1111011 X 10 1,960937510 1.028.096, 010