Un aspecto a tener en cuenta, es que existen unas equivalencias del bit definidas a través de múltiplos, empleados comúnmente en los sistemas computacionales actuales, como son: 1 Nibble o cuarteto = 4 bits (1001) 1 Byte (B) = 2 nibbles = 8 bits (10101010) 1 Kilobyte (KB) = 1024 bytes = 1024*8 bits = 8192 bits 1 Megabyte (MB) = 1024 Kilobytes = 10242 bytes = 10242*8 bits = 8388608 bits 1 Gigabyte (GB) = 1024 MB = 10242 KB =10243 B = 10243*8 bits = 8589934592b 1Terabyte (TB) = 1024 GB = 10242 MB =10243 B = 10243 KB = 10244 B = 1024*8 1 Petabyte (PB) = 1024 GB = 9007199254740992 bits 1 Exabyte (EB) = 1024 PB = 9.223372036854776 x1018 bits 1 Zettabyte (ZB) = 9.444732965739290e+21 bits 1 Yottabyte (YB) = 9.671406556917033e+24 bits Existen unidades de información múltiplos del byte, definidas por el estándar internacional ISO/IEC 80000 (ISO/IEC, 2011) que se resume en la tabla 6 así: Tabla 6. Prefijos binarios ISO/IEC 80000-13 (en bytes). Fuente: Autores. Prefijo+Byte Símbolo Factor y valor ISO/IEC 80000-13 Byte B Prefijo+Bit 20 = 1 Bit Kibibyte KiB 210 = 1024 Kibibit Mebibyte MiB 220 = 1048576 Mebibit Gibibyte GiB 230 = 1073741824 Gibibit Tebibyte TiB 240 = 1099511627776 Tebibit Pebibyte PiB 250 = 1125899906842624 Pebibit Exbibyte EiB 260 = 1 152 921 504 606 846 976 Exbibit Zebibyte EiB 270 = 1 180 591 620 717 411 303 424 Zebibit Yobibyte YiB 280 = 1 208 925 819 614 629 174 706 176 Yobibit Ejemplos 1. Para realizar una conversión de bit a byte se procede a dividir por 8. Por ejemplo, transformar 500 Mebibit a Mebibyte: 500 Mebibit = 500*220/8 = 65536000 bits = 65,536 Mebibyte 2. Realizar la conversión de 15 PiB a bits. 15 * 1125899906842624 = 1,688849860263936x1016 bits 3. ¿Cuántos nibbles hay en 17,5 KiB? 17.5*1024 bits = 17920/4 = 4480 nibbles. 4. Un disco duro de 100 TB a cuántos bits reales equivale, cuál es el error que se comete al tomar literal el valor del prefijo TB. 100 * 240 = 109951162777600 = 1.099511627776 x1014 bits 100 TB = 100x 1012 bits = 1014 bits El error cometido es: 𝒆𝒓𝒓𝒐𝒓 % = (𝟏 − 𝟏 ) ∗ 𝟏𝟎𝟎% = 𝟗. 𝟎𝟓𝟏 % 𝟏. 𝟎𝟗𝟗𝟓𝟏𝟏𝟔𝟐𝟕𝟕𝟕𝟔 Como se aprecia, es conveniente respetar los valores reales de los prefijos binarios para no cometer errores en los cálculos, que pueden derivar en datos sesgados. En conclusión, para el ejercicio, cuanto mayor capacidad se calcule sobre un disco duro, va a ser mayor la diferencia de los resultados entre las cifras con prefijo decimal o binario. Conversiones con binarios Las conversiones entre los sistemas numéricos computacionales son muy importantes, porque se requieren para interpretar información, especialmente en los lenguajes de programación cuando se desean hacer operaciones, tomar lecturas de sensores, almacenar información en medios magnéticos, etc. Para las siguientes secciones, se pone a disposición de los lectores algunos métodos, para que utilicen el que más se les facilite o con el que mejor se identifiquen. Conversión de binario a decimal Esta conversión se puede hacer por dos métodos a saber, los cuales se exponen a continuación, para que el lector determine con cual se identifica mejor. La representación matemática de esta conversión es: Método 1. Divisiones sucesivas Este método consiste en tomar la expresión dada en binario y dividirse 10102, que es el equivalente a diez en decimal o 1010, hasta obtenerse una cantidad inferior al divisor; luego se toma el último cociente y se ubica como la cifra más significativa de la respuesta, seguida por todos los residuos de derecha a izquierda, como se ilustra a continuación en los siguientes ejemplos, sin olvidar que los acarreos son resaltados en color rojo para diferenciarlos de las otras cantidades. Ejemplos 1. Convertir 1001101012 a Decimal 1001101012 10102 1 111102 -1010 -1010 010010 01010 1 -1010 -1010 0000 010001 111 -1010 001110 -1010 01001 9 30910 R 10102 112 3 2. Convertir 100100110112 a Decimal 100100110112 1 -1010 010000 111 -1010 001101 1 -1010 001110 -1010 010011 1 -1010 01001 9 10102 11101012 10102 -1010 10112 010010 -1010 1 0001 -1010 010001 111 -1010 00111 7 10102 1 117910 R 3. Convertir 1101101010112 a Decimal 1101101010112 10102 -1010 1010111012 10102 001110 -1010 1000102 10102 -1010 00001110 -1010 112 010010 -1010 001110 3 -1010 1001 -1010 010001 9 0100 -1010 4 001110 -1010 010011 -1010 01001 9 349910 R 4. Convertir 1001101010112 a Decimal 1001101010112 10102 -1010 111101112 010010 -1010 -1010 01010 010001 -1010 -1010 0000111 001110 7 -1010 010010 -1010 010001 -1010 001111 -1010 0101 5 10102 110002 -1010 00100 4 10102 10 2 247510 R 5. Convertir 1110010101102 a Decimal 1110010101102 10102 -1010 1011011112 10102 010001 -1010 1001002 -1010 0001011 -1010 001110 -1010 010000 -1010 0000111 -1010 010010 7 00110 -1010 6 010001 -1010 001111 -1010 01010 -1010 0000 367010 R 10102 112 3 Ejercicio 5 Convertir las siguientes expresiones a decimal. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 110111011012 111101011012 1110110111102 1111010110112 11101110111012 111011011011102 111100101010012 111101101010112 1111100010110102 10101011100100112 11. 11100111101101012 12. 11110101101010012 13. 111110010101101102 14. 111111011010101102 15. 1101001010010101102 16. 1110101101110001102 17. 1111011001010011012 18. 1111101010101010102 19. 1111101101101101102 20. 1011011110101101012 21. 10110110101101110102 22. 11101010110101011102 23. 11111010110110110012 24. 11111010110110101012 25. 11111100110110101112 26. 11111011011010110012 27. 111110101110101101012 28. 111111110101010101012 29. 111111111010101101102 30. 111111111101011010112 Método 2. Ubicación exponencial Este método solo basta multiplicar el bit por 2 elevado a la potencia correspondiente según el peso del mismo o su ubicación en la cifra dada, luego se suman los valores obtenidos y de esta forma se obtiene el resultado final así: 1. Inicie por el lado derecho del número dado y luego multiplique cada dígito por 2 elevado a la potencia que le corresponde según su ubicación de derecha a izquierda, comenzando por 20. 2. Una vez realizada cada una de las multiplicaciones debe sumar los valores obtenidos, donde el número resultante es el equivalente en el sistema decimal. Ejemplos 1. Convertir 10111012 a Decimal 10111012 = 1x26 + 0x25 + 1x24 + 1x23 + 1x22 + 0x21 + 1x20 = 64 + 0 + 16 + 8 + 4 + 0 + 1 = 9310 R 2. Convertir 110110112 a Decimal 110110112 = 1x27 +1x26 + 0x25 + 1x24 + 1x23 + 0x22 + 1x21 + 1x20 = 128 + 64 + 0 + 16 + 8 + 0 + 2 +1 = 21910 R 3. Convertir 1101110012 a Decimal 1101110012 = 1x28 + 1x27 + 0x26 + 1x25 + 1x24 + 1x23 + 0x22 + 0x21 + 1x20 = 256 + 128 + 0 + 32 + 16 + 8 + 0 + 0 + 1 = 44110 R 4. Convertir 10110110102 a Decimal 10110110102 = 1x29 + 0x28 + 1x27 + 1x26 + 0x25 + 1x24 + 1x23 + 0x22 + 1x21 + 0x20 = 512 + 0 + 128 + 64 + 0 + 16 + 8 + 0 + 2 + 0 = 73010 R 5. Convertir 101101111012 a Decimal 101101111012 = 1x210+0x29+1x28+1x27+0x26+1x25+1x24+1x23+1x22+0x21+1x20 = 1024 + 0 + 256 + 128 + 0 + 32 + 16 + 8 + 4 + 0 +1 = 146910 R Ejercicio 6 Convertir las siguientes expresiones a decimal. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 110111110102 1101010110112 1100110111102 1110101110112 11011101110102 101011011011102 101011010101012 101011111010112 1010110101011102 11001011100100112 11. 1110111101101012 12. 10110110111010012 13. 100111001101101102 14. 110101101101011102 15. 110100101001011102 16. 110101101110001102 17. 110111100110011012 18. 101101110100100102 19. 111101110101101102 20. 101101111010110102 21. 1010110101101110102 22. 1011001110101011102 23. 1110110011010110012 24. 1110111011011101012 25. 1111010110110101112 26. 1111010111101110012 27. 1111101011010110102 28. 1111101101011010112 29. 11111100110101011102 30. 101101100110101010112 Conversión de decimal a binario También se presentan dos métodos, los cuales se describen a continuación: Método 1. Divisiones sucesivas En esta conversión a la cantidad dada se divide por 2, donde el residuo puede ser 1 o 0 y sí el divisor es superior o igual a 2 se le vuelve a efectuar el mismo procedimiento hasta reducirse a la mínima expresión. Una vez terminada la operación, se coloca el cociente como la cifra más significativa o el primer bit de la izquierda, seguido por todos los residuos ordenados de derecha a izquierda, como se ilustra en los siguientes ejemplos: Ejemplos 1. Convertir 4810 a Binario 4810 -4 08 -8 0 210 24 210 -2 12 04 -12 -4 00 0 210 6 -6 0 210 3 -2 1 210 1 1100002 R 2. Convertir 20710 a Binario 20710 210 -2 103 007 -10 -6 003 1 -2 1 210 51 -4 11 -10 01 210 25 210 -2 12 210 05 -12 6 -4 00 -6 1 0 210 3 -2 1 210 1 110011112 R 3. Convertir 28710 a Binario 28710 210 -2 143 08 -14 -8 003 07 -2 -6 1 1 210 71 -6 11 -10 01 1000111112 R 210 35 -2 15 -14 01 210 17 210 -16 8 01 -8 0 210 4 210 -4 2 0 -2 0 210 1 4. Convertir 30410 a Binario 30410 -2 10 -10 004 -4 0 210 152 -14 012 -12 00 1001100002 210 76 210 -6 38 210 16 -2 19 210 -16 18 -18 9 210 00 -18 01 -8 4 210 00 1 -4 2 0 -2 0 R 210 1 5. Convertir 45910 a Binario 45910 -4 05 -4 19 -18 1 210 229 -2 02 -2 09 -8 1 210 114 -10 014 -14 00 210 57 210 -4 28 210 17 -2 14 -16 08 -14 01 -8 00 0 210 7 -6 1 210 3 -2 1 210 1 1110010112 R Ejercicio 7 Convertir las siguientes expresiones a binarios. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 65710 96810 189610 348710 761910 946710 1151310 1393510 1879110 1970410 11. 2132510 12. 2784910 13. 3178410 14. 4704110 15. 5793410 16. 6813910 17. 7381710 18. 8421310 19. 9703510 20. 15641910 21. 21893610 22. 30498710 23. 45792810 24. 56239610 25. 99281910 26. 121940810 27. 391817610 28. 413504110 29. 517971310 30. 725733610 Método 2. Ubicación exponencial Este método consiste en ubicar la cantidad según el peso del digito; como se observa en la tabla 7, los valores binarios van aumentando de derecha a izquierda en una proporción del doble. Luego se toma el número dado y se ubica en la tabla, si no se encuentra, entonces se debe seleccionar la cantidad más próxima por debajo de su valor y se efectúa la diferencia; al resultado se le vuelve a hacer el mismo procedimiento, hasta obtenerse la mínima expresión, como se ilustra en los siguientes ejemplos: Tabla 7. Valor de Bits, según su posición. Fuente: Autores. Bit 𝟐𝟏𝟎 𝟐𝟗 𝟐𝟖 𝟐𝟕 𝟐𝟔 𝟐𝟓 𝟐𝟒 𝟐𝟑 𝟐𝟐 𝟐𝟏 𝟐𝟎 0 0 0 0 0 0 0 0 0 0 0 0 1 1024 512 256 128 64 32 16 8 4 2 1 Ejemplos 1. Convertir 8710 a Binario 8710 = 1x26 + 0x25 + 1x24 + 0x23 + 1x22 + 1x21 + 1x20 = 64 + 0 + 16 + 0 + 4 + 2 + 1 10101112 R 2. Convertir 79510 a Binario 79510 = 1x29 + 1x28 + 0x27 + 0x26 + 0x25 + 1x24 + 1x23 + 0x22 +1x21 + 1x20 = 512 + 256 + 0 + 0 + 0 + 1 + 1 + 0 + 1 +1 11000110112 R 3. Convertir 124810 a Binario 124810 = 1x210 +0x29 + 0x28 + 1x27 + 1x26 + 1x25 + 0x24 + 0x23 + 0x22 + 0x21 + 0x20 = 1024 + 0 100111000002 R + 0 + 128 + 64 + 32 + 0 + 0 + 0 +0 + 0 4. Convertir 296410 a Binario 296410 = 1x211 +0x210 +1x29 + 1x28 + 1x27 + 0x26 + 0x25 + 1x24 + 0x23 + 1x22 + 0x21 + 0x20 = 2048 + 0 + 512 + 256 + 128 + 0 + 0 + 16 + 0 +4 + 0 + 0 1011100101002 R 5. Convertir 351810 a Binario 351810 = 1x211+x210+0x29+x28 +1x27+0x26+1x25+1x24 +1x23 +1x22 +1x21+0x20 = 2048+1024+0 + 256 +128 + 0 + 32 + 16 + + 4 + 2 + 0 1101101111102 R Ejercicio 8 Convertir las siguientes expresiones a binarios. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 83910 96810 157610 216510 439510 687710 791910 918010 1329610 15720810 11. 2258610 12. 2631810 13. 3238110 14. 4307810 15. 5727310 16. 8404710 17. 9342210 18. 11810910 19. 13247210 20. 18725110 21. 23411410 22. 28917610 23. 31793610 24. 46376410 25. 57921810 26. 69627110 27. 89254810 28. 119408810 29. 139319310 30. 213208210