Capítulo 20: Bases de numeración 20 Presentación preliminar de bases de numeración............................. 344 Introducción y conversión de bases de numeración......................... 345 Operaciones matemáticas con números binarios o hexadecimales............................................................................... 346 Comparación o manipulación de bits.................................................. 347 Siempre que se introduzca un número entero en una operación en la TI-89 / TI-92 Plus, puede hacerse en forma decimal, binaria o hexadecimal. También se puede ajustar el modo Base para especificar de qué manera se desean presentar los resultados en números enteros. Los resultados fraccionarios y de coma flotante se presentan siempre en forma decimal. Nota: El menú MATH/Base permite seleccionar de una lista las operaciones relacionadas con bases de numeración. Los números binarios utilizan 0 y 1 en el formato de base 2: 100 2 0 ù 0 = +0 2 1 ù 0 = +0 2 2 ù 1 = +4 Los números hexadecimales utilizan 0 – 9 y A – F en el formato de base 16: A8F 16 0 ù F = +15 16 1 ù 8 = +128 16 2 ù A = +2560 Dec Base 10 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Bin Base 2 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 10000 Hex Base 16 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 Puede utilizar la TI-89 / TI-92 Plus para convertir un número de una base a otra. Por ejemplo, 100 binario = 4 decimal y A8F hexadecimal = 2703 decimal. Los números hexadecimales se utilizan a menudo como notación resumida de números binarios largos y difíciles de recordar. Por ejemplo: 1010 1111 0011 0111 A F 3 7 El número hexadecimal AF37 resulta normalmente más fácil para trabajar que el binario 1010111100110111. TI-89 / TI-92 Plus también permite comparar o manipular números binarios bit a bit. Capítulo 20: Bases de numeración 343 20NUMBAS.SPA TI-89/TI-92 Plus: Number Bases (Spanish) Susan Gullord Revised: 01/10/00 10:16 AM Printed: 01/10/00 11:44 AM Page 343 of 6 Presentación preliminar de bases de numeración Calcule 10 binario (base 2) + F hexadecimal (base 16) + 10 decimal (base 10). A continuación, utilice el operador 4 para convertir un número entero de una base a otra. Para terminar, observe cómo la modificación del modo Base afecta a los resultados presentados. Pasos 1. Presente el recuadro de diálogo MODE, página 2. En modo Base, seleccione DEC como base de numeración por omisión. ³ TI-89 Pulsaciones › TI-92 Plus Pulsaciones 3„ (use D para pasar al modo Base) B1¸ 3„ (use D para pasar al modo Base) B1¸ Visualización Los resultados en números enteros se presentan de acuerdo con el estado del modo Base. Los resultados fraccionarios y de coma flotante siempre se presentan en forma decimal. OjB10«O 2™HF Para introducir un número binario o hexadecimal, debe utilizar el prefijo 0b j « 1 0 ó 0h (cero y la letra B o H). De no ser ¸ OB10«O HF «10 ¸ «12 2™BIN 2 presenta el operador de conversión 4. j ¸ «12 BIN «12 2™HEX j¸ «12 HEX «1¸ «1¸ 2. Calcule 0b10+0hF+10. así, la entrada se considera número decimal. 3. Sume 1 al resultado y conviértalo a binario. 4. Sume 1 al resultado y conviértalo a hexadecimal. 5. Sume 1 al resultado y déjelo en la base de numeración decimal por omisión. 3„ Cuando Base = HEX o BIN, la magnitud (use D para pasar al modo Base) de un resultado está restringida a determinadas limitaciones de tamaño. B 2 ¸ 6. Cambie el modo Base a HEX. Consulte la página 346. ¸ ¸ 3„ (use D para pasar al modo Base) B2¸ OjB10«O 2™HF j«10 ¸ OB10«O HF «10 8. Cambie el modo Base a BIN. 3„ (use D para pasar al modo Base) B3¸ 3„ (use D para pasar al modo Base) B3¸ 9. Vuelva a introducir 0b10+0hF+10. ¸ ¸ 7. Calcule 0b10+0hF+10. 344 Importante: El prefijo 0b ó 0h es un cero, no la letra O, seguido de B o H. Los resultados utilizan el prefijo 0b ó 0h para identificar la base. ¸ Capítulo 20: Bases de numeración 20NUMBAS.SPA TI-89/TI-92 Plus: Number Bases (Spanish) Susan Gullord Revised: 01/10/00 10:16 AM Printed: 01/10/00 11:44 AM Page 344 of 6 Introducción y conversión de bases de numeración Independientemente del estado del modo Base, siempre debe utilizarse el prefijo apropiado al introducir números binarios o hexadecimales. Introducción de números binarios o hexadecimales Para introducir un número binario, utilice la forma: (por ejemplo: 0b11100110) 0b Número binario Número binario con un máximo de 32 dígitos Cero, no la letra O, y la letra b Nota: Puede escribir la b o la h del prefijo, así como caracteres hexadecimales A – F, en mayúscula o minúscula. Para introducir un número hexadecimal, utilice la forma: (por ejemplo: 0h89F2C) 0h Número hexadecimal Número hexadecimal con un máximo de 8 dígitos Cero, no la letra O, y la letra h Si introduce un número sin el prefijo 0b ó 0h, como 11, siempre se considera número decimal. Si omite el prefijo 0h en un número hexadecimal que contenga A – F, toda la entrada o parte de ella se considera como una variable. Conversión entre bases de numeración Utilice el operador de conversión 4. Para 4, pulse 2 . Además, puede seleccionar conversiones de base en el menú MATH/Base. enteroExpresión 4 Bin enteroExpresión 4 Dec enteroExpresión 4 Hex Nota: Si la entrada no es un número entero, se presenta un Domain error. Por ejemplo, para convertir 256 de decimal a binario: Para una entrada binaria o hexadecimal, debe utilizar el prefijo 0b ó 0h. 256 4 Bin Para convertir 101110 de binario a hexadecimal: Los resultados utilizan el prefijo 0b ó 0h para identificar la base. 0b101110 4 Hex Método alternativo para realizar conversiones En vez de utilizar 4, puede: Si el modo Base = BIN: 1. Utilice 3 (página 346) para ajustar el modo Base a la base a la que desea convertir. Si el modo Base = HEX: 2. En la pantalla Home, escriba el número que desea convertir (con el prefijo correcto) y pulse ¸. Capítulo 20: Bases de numeración 345 20NUMBAS.SPA TI-89/TI-92 Plus: Number Bases (Spanish) Susan Gullord Revised: 01/10/00 10:16 AM Printed: 01/10/00 11:44 AM Page 345 of 6 Operaciones matemáticas con números binarios o hexadecimales Para realizar cualquier operación que utilice un número entero, puede introducir un número binario o hexadecimal. Los resultados se presentan de acuerdo con el estado del modo Base. No obstante, cuando Base = HEX o BIN, los resultados están restringidos a determinadas limitaciones de tamaño. Ajuste del modo Base para la presentación de los resultados 1. Pulse 3 „ para presentar la página 2 de la pantalla MODE. 2. Desplácese al modo Base, pulse B y seleccione el ajuste aplicable. 3. Pulse ¸ dos veces para cerrar la pantalla MODE. Nota: El modo Base afecta sólo a la salida. Para introducir un número hexadecimal o binario, debe utilizar siempre el prefijo 0h ó 0b. Si el modo Base = HEX: El modo Base sólo controla el formato de presentación de los resultados con números enteros. Los resultados fraccionarios y de coma flotante siempre se presentan en forma decimal. El prefijo 0h en el resultado identifica la base. División cuando Base = HEX o BIN Para asegurarse de que esa división siempre dé como resultado un número entero, utilice intDiv() en vez de e. Limitaciones de tamaño cuando Base = HEX o BIN Si el modo Base = HEX: Cuando Base=HEX o BIN, el resultado de una división se presenta en forma hexadecimal o binaria sólo si el resultado es un número entero. Pulse ¥ ¸ para presentar el resultado en la forma APPROXIMATE . Cuando Base=HEX o BIN, un resultado entero se almacena internamente como un número binario de 32 bits, con su signo correspondiente, comprendido en el rango (presentado en forma hexadecimal y decimal): 0hFFFFFFFF ë1 0h80000000 ë2,147,483,648 0h1 1 0h0 0 0h7FFFFFFF 2,147,483,647 Si la magnitud de un resultado es demasiado grande como para almacenarse en una forma binaria de 32 bits, con su signo correspondiente, una operación de módulos simétricos incorpora el resultado al rango. Cualquier número mayor que 0h7FFFFFFF se ve afectado. Por ejemplo, desde el 0h80000000 hasta el 0hFFFFFFFF se convierten a números negativos. 346 Capítulo 20: Bases de numeración 20NUMBAS.SPA TI-89/TI-92 Plus: Number Bases (Spanish) Susan Gullord Revised: 01/10/00 10:16 AM Printed: 01/10/00 11:44 AM Page 346 of 6 Comparación o manipulación de bits Los operadores y las funciones siguientes permiten comparar y manipular los bits en un número binario. Los números enteros pueden introducirse en cualquier base de numeración. Las entradas se convierten de forma automática a números binarios para la operación a nivel de bits, presentándose los resultados de acuerdo con el estado del modo Base. Operaciones booleanas Nota: Puede seleccionar estos operadores en el menú MATH/Base. Para obtener un ejemplo utilizando cada operador, consulte el Anexo A. Operador con sintaxis Descripción not entero Devuelve el complemento a uno. · entero Devuelve el complemento a dos, que es el complemento a uno + 1. entero1 and entero2 En una comparación bit a bit mediante una operación and, el resultado es 1 si ambos bits son 1; de no ser así, el resultado es 0. El valor devuelto representa los bits resultantes. entero1 or entero2 En una comparación bit a bit mediante una operación or, el resultado es 1 si cualquier bit es 1; el resultado es 0 sólo si ambos bits son 0. El valor devuelto representa los bits resultantes. entero1 xor entero2 En una comparación bit a bit mediante una operación xor, el resultado es 1 si cualquier bit (pero no ambos) es 1; el resultado es 0 si ambos bits son 0 ó 1. El valor devuelto representa los bits resultantes. Si el modo Base = HEX: Supongamos que introduce: 0h7AC36 and 0h3D5F Internamente, los enteros hexadecimales se convierten a un número binario de 32 bits con su signo correspondiente. Si el modo Base = BIN: Los bits correspondientes se comparan. Nota: Si se introduce un número entero demasiado grande para almacenarse en una forma binaria de 32 bits con su signo correspondiente, una operación de módulos simétricos incorpora el valor al rango (página 346). 0h7AC36 = 0b00000000000001111010110000110110 and 0h3D5F and = 0b00000000000000000011110101011111 0b00000000000000000010110000010110 = 0h2C16 Los ceros a la izquierda no se presentan en el resultado. El resultado se presenta de acuerdo con el estado del modo Base. Capítulo 20: Bases de numeración 347 20NUMBAS.SPA TI-89/TI-92 Plus: Number Bases (Spanish) Susan Gullord Revised: 01/10/00 10:16 AM Printed: 01/10/00 11:44 AM Page 347 of 6 Comparación o manipulación de bits (continuación) Rotación y desplazamiento de bits Función con sintaxis Descripción rotate(entero) Si #Rotaciones: –o– ¦ se omite — los bits se trasladan una posición a la derecha (el valor por omisión es ë 1). ¦ es negativo — los bits se trasladan a la derecha el número de veces especificado. ¦ es positivo — los bits se trasladan a la izquierda el número de veces especificado. rotate(entero, #Rotaciones) Nota: Puede seleccionar estas funciones en el menú MATH/Base. Para obtener un ejemplo con cada función, consulte el Anexo A. En un giro a derechas, el bit situado más a la derecha se mueve hasta la posición más a la izquierda; viceversa en una traslación a izquierdas. shift(entero) Si #Desplazamientos: –o– ¦ se omite — los bits se desplazan una posición a la derecha (el valor por omisión es ë 1). ¦ es negativo — los bits se desplazan a la derecha el número de veces especificado. ¦ es positivo — los bits se desplazan a la izquierda el número de veces especificado. shift(entero, #Desplazamientos) En un desplazamiento a la derecha, el bit situado más a la derecha se retira y se inserta 0 ó 1 para coincidir con el bit situado más a la izquierda. En un desplazamiento a la izquierda, el bit situado más a la izquierda se retira y se inserta 0 como el bit situado más a la derecha. Supongamos que introduce: Si el modo Base = HEX: shift(0h7AC36) Internamente, el entero hexadecimal se convierte a un número binario de 32 bits con su signo correspondiente. Si el modo Base = BIN: A continuación, se aplica el desplazamiento al número binario. Cada bit se desplaza a la derecha. Nota: Si se introduce un número entero demasiado grande para almacenarse en una forma binaria de 32 bits con su signo correspondiente, una operación de módulos simétricos incorpora el valor al rango (página 346). 0h7AC36 = 0b00000000000001111010110000110110 Inserta 0 si el bit situado más a la izquierda es 0, o 1 si dicho bit es 1. Retirado 0b00000000000000111101011000011011 = 0h3D61B Los ceros a la izquierda no se presentan en el resultado. El resultado se presenta de acuerdo con el estado del modo Base. 348 Capítulo 20: Bases de numeración 20NUMBAS.SPA TI-89/TI-92 Plus: Number Bases (Spanish) Susan Gullord Revised: 01/10/00 10:16 AM Printed: 01/10/00 11:44 AM Page 348 of 6