Representación de la información numérica

Documentos relacionados
APUNTES DE CATEDRA: SISTEMAS DE NUMERACION - REPRESENTACION INTERNA DE NUMEROS Y CARACTERES

Representación de la información

Sistemas Numéricos y Códigos Binarios

Tipos de Datos y Representaciones. Circuitos Digitales, 2º de Ingeniero de Telecomunicación. EITE ULPGC.

GENERALIDADES SOBRE SISTEMAS NUMÉRICOS. Transversal Programación Básica

Realizar la siguiente suma y expresar el resultado en hexadecimal: Teniendo los 3 valores expresados en la misma base, podemos realizar la suma:

Un sistema de numeración está compuesto por el conjunto de símbolos y reglas que se utilizan para representar cantidades.

5 centenas + 2 decenas + 8 unidades, es decir: = 528

Titulación: Grado en Ingeniería Informática Asignatura: Fundamentos de Computadores

Universidad de San Buenaventura - Facultad de Ingeniería

Aritmética de Enteros

5.2. Sistemas de codificación en binario

Práctica 1 - Representación de la información

I. INTRODUCCIÓN. A cada valor de una señal digital se le llama bit y es la unidad mínima de información.

TEMA V SISTEMAS DE NUMERACIÓN

I.E.S Santo Domingo. Departamento Informática. Tema 1 Los Sistemas de Numeración. José Luis Mollinedo Jiménez

Números. Índice del libro. 1. Los números reales. 2. Operaciones con números enteros y racionales. 3. Números decimales

TRABAJO DE INVESTIGACION SOBRE LAS CONVERCIONES DE LOS SISTEMAS NUMERICOS JIMMY DADNOVER ROZO GUERRERO

SISTEMAS DE NUMERACION

BLOQUE V. CONTROL Y PROGRAMACIÓN DE SISTEMAS AUTOMÁTICOS

BLOQUE V. CONTROL Y PROGRAMACIÓN DE SISTEMAS AUTOMÁTICOS

Sistemas de Numeración. I semestre 2011

Representación de Números

Tema 2: Sistemas de numeración

Representación de la Información.... en los Computadores

TEMA 1: INTRODUCCIÓN A LOS SISTEMAS DIGITALES.

Computación I Representación Interna Curso 2011

MatemáticaDiscreta&Lógica 1

TÉCNICAS DIGITALES SISTEMAS NUMÉRICOS

Implantación de Sistemas Operativos 1º ASIR

SISTEMAS NUMÉRICOS. Conocer los diferentes sistemas numéricos y su importancia en la informática y la computación

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN

S i s t e m a s A n a l ó g i c o s y D i g i t a l e s

Computación 1. Representación Interna de Números

Sistemas de numeración

Práctica 1: Representación de números

Representación de números enteros: el convenio exceso Z

Tema 2. Sistemas de representación de la información

Computación I Representación Interna Curso 2011

{, }, #, $, %, &,,, +,,/,(, ), },!,?, [, ]

1.1 Sistemas de numeración. Ejemplos de sistemas de numeración posicionales. Base numérica. Circuitos Digitales

SISTEMAS DIGITALES. Margarita Pérez Castellanos

Aritmética de Enteros y

ESCUELA PREPARATORIA OFICIAL NO.16 MATERÍA: PENSAMIENTO NUMÉRICO Y ALGEBRAICO I

Representación de datos y aritmética básica en sistemas digitales

SISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: = =8245,97

TEMA 2. Números racionales. Teoría. Matemáticas

APUNTES DOCENTES ASIGNATURA: ANALISIS NUMERICO ASIGNATURA: ANALISIS NUMERICO UNIDADES TECNOLÓGICAS DE SANTANDER

Representación de datos y aritmética básica en sistemas digitales

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS

HOJA DE PROBLEMAS 2. SISTEMA BINARIO DE REPRESENTACIÓN NUMÉRICA. 1. Convertir los siguientes números binarios a sus equivalentes decimales: a.

CONJUTOS NÚMERICOS NÚMEROS NATURALES

Centro Asociado Palma de Mallorca. Tutor: Antonio Rivero Cuesta

TEMA 1 LOS NÚMEROS REALES

TEMA 1 LOS NÚMEROS REALES

Arquitectura de Computadoras

NÚMEROS UTILIZADOS EN ELECTRÓNICA DIGITAL

Métodos Numéricos: los números reales y su representación

TEMA 3 NÚMEROS DECIMALES

Lectura Obligatoria (LO-II-003) Guía de Conversiones entre sistemas de numeración


+- S x B +-E. Este estándar presupone una representación normalizada. Es decir, los números a representar obedecen a la siguiente forma:

SISTEMAS DE NUMERACIÓN CON REPRESENTACIÓN POSICIONAL DE LOS NÚMEROS

Tema 2: Sistemas de numeración

Tecnólogo en Informática Paysandú - Uruguay

Estructura de Computadores Tema 2. Representación de la información

Introducción al análisis numérico

CONALEP TEHUACÁN ING. JONATHAN QUIROGA TINOCO SPORTE Y MANTENIMIENTO A EQUIPOS DE CÓMPUTO OPERACIÓN DE CIRCUÍTOS ELECTRÓNICOS DIGITALES TEMA 1.1.

Tema 3. Aritmética y representación de la información en el ordenador. Informática Grado en Física Universitat de València

Lección 5. Punto flotante

OBJETIVOS CONTENIDOS PROCEDIMIENTOS

CAPÍTULO II SISTEMAS NUMÉRICOS. Este método de representar los números se llama sistema de numeración decimal, donde 10 es la base del sistema.

SISTEMAS DE NUMERACIÓN

Tema II. 1* * *10 0 ó lo que es lo mismo:

ESCUELA POLITÉCNICA NACIONAL

TEMA 2. CODIFICACIÓN DE LA INFORMACIÓN

TEMA 2 LA INFORMACIÓN Y SU REPRESENTACIÓN

INSTITUCION EDUCATIVA LA PRESENTACION NOMBRE ALUMNA: AREA :

Representación digital de la información

TEMA 1. Los números enteros. Matemáticas

Organización de Computadoras. Clase 3

INFORMÁTICA APLICADA A LA ECONOMÍA Tema 3: Representación de la Información. Verónica A. Bollati

Sistemas de Numeración

Sistemas Numéricos Transversal de Programación Básica Proyecto Curricular de Ingeniería de Sistemas

Área Académica: Ingeniería en Computación. Materia: Introducción a la Electrónica Digital

TEMA 1: NÚMEROS REALES

ESCUELA POLITÉCNICA NACIONAL

Ingeniería en Computación

Representación de la Información en los Sistemas Digitales

Sistemas de Representación. Organización del Computador 1 Verano 2016

1.4.3 Errores de redondeo y la aritmética finita de las computadoras

Lógica Computacional. Aritmética binaria

GUIA SISTEMAS NUMERICOS

Representación de números binarios en punto fijo y punto flotante.

Colegio Diocesano San José de Carolinas

Introducción histórica. Números irracionales

Tema 2: Sistemas y códigos numéricos

Nombre del Plantel: Conalep Tehuacán 150. Nombre del módulo: Operación de Circuitos de Electrónicos. Apunte 2: Sistemas de Representación Numérica

Agenda. 0 Operaciones aritméticas 0 ASCII 0 UTF-8 0 Código Gray. 0 Números de punto flotante

Transcripción:

Representación de la información numérica Antonio José Velasco González Ramon Costa Castelló PID_005355

FUOC PID_005355 Representación de la información numérica Índice Introducción... 5 Objetivos... 6. Los números y los sistemas de representación... 7.. Sistemas de representación... 7.2. Sistemas de numeración posicionales... 8.3. Cambios de base....3.. Método basado en el TFN....3.2. Método basado en el teorema de la división entera... 2.3.3. Cambio de base entre b y b n... 5.4. Números con signo... 8.5. Suma y resta en los sistemas posicionales... 9.6. Multiplicación y división por potencias de la base de numeración... 20.7. Representación en notación científica... 22.8. Suma y resta en notación científica... 23 2. Representación de los números en un computador... 25 2.. Condicionantes físicos... 25 2... Rango de representación... 27 2..2. Precisión... 28 2..3. Error de representación... 29 2..4. Aproximaciones: truncamiento y redondeo... 29 2..5. Desbordamiento... 32 2.2. Números naturales... 34 2.3. Números enteros... 35 2.3.. Representación de enteros en signo y magnitud en base 2... 36 2.3.2. Suma y resta en signo y magnitud... 38 2.3.3. Complemento a la base... 39 2.3.4. Representación en complemento a 2... 40 2.3.5. Cambio de signo en complemento a 2... 43 2.3.6. Magnitud de los números en complemento a 2... 44 2.3.7. Suma en complemento a 2... 46 2.3.8. Resta en complemento a 2... 48 2.3.9. Multiplicación por 2 k de números en complemento a 2... 49 2.3.0. Representación en exceso a M... 50 2.4. Números fraccionarios... 57 2.5. Representación en coma flotante... 67 2.5.. Rango de representación en coma flotante... 72 2.5.2. Precisión de una representación en coma flotante... 75 2.5.3. Suma en coma flotante... 80

FUOC PID_005355 Representación de la información numérica 3. Otros tipos de representaciones... 84 3.. Empaquetamiento de la información... 84 3.2. Representación de la información alfanumérica... 86 3.3. Representación BCD... 88 Resumen... 9 Ejercicios de autoevaluación... 93 Solucionario... 94 Glosario... 30 Bibliografía... 32

FUOC PID_005355 5 Representación de la información numérica Introducción Desde que se inventaron, una de las funciones principales de los computadores ha sido la realización de cálculos, tanto dentro del ámbito científico y técnico como administrativo. Los elementos fundamentales de estos cálculos son los números y las operaciones entre los mismos. No es extraño, por tanto, que se haya realizado un esfuerzo importante de análisis y estudio de las maneras de representar y trabajar con los números dentro de un computador. La adaptación de los sistemas de representación numérica al entorno de los computadores ha hecho que, finalmente, la manera en la que los humanos trabajamos con los números sea muy distinta, en muchos aspectos, de la manera en la que trabajan los computadores. Un ejemplo simple puede ilustrar la naturaleza de estas diferencias: en nuestra vida cotidiana utilizamos diez símbolos distintos para representar los números (0,, 2, 3, 5, 7, 6, 8 y 9), mientras que las características de la tecnología hacen que dentro de los computadores sólo haya dos símbolos distintos (0 y ). Por otro lado, la naturaleza de las operaciones que hacemos y el tipo de números involucrados en los cálculos determinan el sistema de representación numérica más adecuado en cada caso. Hablamos de los números, muchas veces, de manera genérica, pero es importante recordar que los hay de distintos tipos: los naturales (, 2, 3, 4, 5, 6, etc.), los enteros ( 3, 0, 0, 0, etc.) y los números fraccionarios (,025, 23,456), entre otros. Cada uno de este tipo de números presenta unas características y propiedades diferenciadas que hay que tener en cuenta en el momento de elegir la manera de representarlos dentro de un computador. En este módulo, se estudian los principales sistemas de representación de números dentro de los computadores. Se hace un énfasis especial en las características de cada una de las representaciones y se analiza la problemática introducida por las limitaciones físicas de los computadores.

FUOC PID_005355 6 Representación de la información numérica Objetivos Los objetivos principales que alcanzaréis con el estudio de este módulo son los siguientes:. Conocer los sistemas de representación de la información numérica que permiten trabajar con números naturales, con números enteros y con números fraccionarios. 2. Conocer en profundidad los sistemas ponderados no redundantes de base fija 2, 0 y 6, además de saber representar un mismo valor numérico en bases distintas. 3. Comprender y saber utilizar los formatos con los cuales se codifica la información numérica en un computador: el sistema ponderado en binario para los números naturales; signo y magnitud, complemento a 2 y exceso a M para los números enteros; y los sistemas de coma fija y de coma flotante para la representación de números fraccionarios. 4. Conocer las operaciones aritméticas básicas que lleva a cabo un computador y saber efectuarlas a mano. Estas operaciones son la suma y la resta sobre números naturales, enteros y fraccionarios. 5. Comprender los conceptos de rango y precisión de un formato de codificación de la información numérica en un computador. Esto incluye los conceptos de desbordamiento y de error de representación. 6. Conocer la manera de representar caracteres en formato ASCII. 7. Entender la manera de empaquetar datos a partir de la base 6 o el sistema BCD.

FUOC PID_005355 7 Representación de la información numérica. Los números y los sistemas de representación El objetivo de este apartado es dar una visión de conjunto de la representación de valores numéricos. Se exponen las bases de nuestro sistema de numeración y se enumeran distintos sistemas de representación de valores numéricos. Después de esta introducción, pasamos a analizar en profundidad el sistema de representación posicional de base (o raíz) fija. Finalmente, se introducen las técnicas que nos permiten obtener las diferentes representaciones que un mismo valor numérico tiene según los parámetros que definen el sistema de numeración... Sistemas de representación La idea de valor numérico es un concepto abstracto. El sentido de un valor numérico viene dado por la relación que mantiene con otros valores numéricos. Utilizamos esta información para relacionarla de distintas maneras con otros valores numéricos y llegar a determinadas conclusiones. Para trabajar ágilmente con este tipo de información, debemos poder representarla eficientemente, de manera que tenemos que disponer de lo que denominamos un sistema de representación numérica. Un sistema de representación numérica es una metodología que permite representar un conjunto de valores numéricos. La gama de sistemas de representación numérica es bastante amplia. Entre otros, podemos encontrar los sistemas de raíz o base, los sistemas de dígitos signados, los sistemas de restos y los sistemas racionales. Del conjunto de sistemas de representación numérica, los sistemas basados en raíz (o base) son los que más se utilizan, y en éstos centraremos nuestra atención.a Aspectos de terminología Se puede utilizar la designación de base o raíz de manera indistinta, aunque es más habitual el uso de la palabra base: hablamos de sistemas de numeración en base n. Un sistema de representación numérica basado en raíz describe los valores numéricos en función de una o distintas raíces. La raíz o base del sistema de numeración indica el número de dígitos distintos de los que se dispone. Cuando trabajamos con base 0, disponemos de diez dígitos distintos para la representación: 0,, 2, 3, 4, 5, 6, 7, 8 y 9. Si la base del sistema de numeración es

FUOC PID_005355 8 Representación de la información numérica 2, se dispone de dos dígitos, frecuentemente representados por 0 y. En caso de que la base de numeración sea 6, disponemos de dieciséis dígitos distintos, que normalmente se representan con: 0,, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E y F. Por otro lado, hay sistemas de numeración que utilizan más de una base. Se trata de sistemas de representación de base mixta o combinada. Los sistemas de representación que usan sólo una base reciben el nombre de sistemas de base fija. La aritmética que utilizamos de manera cotidiana se desarrolla en un sistema de numeración de base fija en el que la base de numeración es 0. Sistema de representación de base mixta Un ejemplo de este tipo de sistema es el sistema horario, en el cual los valores varían en función de las bases 24, 60 y 60 (horas, minutos y segundos). Consideremos el valor numérico 32 en nuestro sistema de numeración en base 0. Para representar este valor hemos utilizado el dígito 3, el dígito 2 y el dígito, ordenados de una manera determinada. Estos mismos dígitos, ordenados de otra manera (por ejemplo, 23), representan un valor numérico distinto, pese a estar constituido por los mismos dígitos. Los sistemas de numeración en los cuales el orden de los dígitos es determinante en la representación numérica se denominan sistemas posicionales. Un sistema posicional es aquél en el que la representación de un valor numérico es determinada por una secuencia ordenada de dígitos. A partir de este punto, los análisis y los estudios contenidos en el resto de los apartados de este módulo harán referencia a sistemas de numeración posicionales de base fija, que son los que tienen más interés para nuestro estudio de la representación de la información numérica en los computadores.a.2. Sistemas de numeración posicionales Estamos acostumbrados a trabajar con sistemas de numeración posicionales. Nuestra aritmética se basa en un sistema de numeración posicional de base fija, en el que la base de numeración es 0. En este sistema, la posición que ocupa un dígito tiene asociada un peso determinado. Esto quiere decir que la representación de los números naturales empieza por 0 y los dígitos siguen hasta llegar al 9. Después del dígito 9 viene una combinación de dos dígitos, el 0, porque sólo disponemos de diez dígitos distintos. La secuencia de números naturales es de la forma: 0,, 2, 3, 4,5, 6, 7, 8,9, 0,, 2, 3, 4, 5, 6, 7, 8, 9,20, etc. Consideremos el valor 632 (0. Entendemos que este número representa 6 centenas, 3 decenas y 2 unidades. Un cambio de orden de los dígitos (por ejemplo, 326 (0 ) comporta un cambio de los pesos asociados y, por lo tanto, un cambio del valor numérico representado.

FUOC PID_005355 9 Representación de la información numérica Un sistema de representación numérica posicional de base fija es aquél en el que un valor numérico X se representa como una secuencia ordenada de dígitos, de la manera siguiente: X = x n x n 2 x x 0,x x m donde cada x i es un dígito tal que 0 x i b, donde b es la base del sistema de numeración y x i el dígito de la posición i-ésima de la secuencia. Las posiciones con subíndice negativo corresponden a la parte fraccionaria del valor numérico y se consignan a la derecha de la coma. Las posiciones con subíndice positivo corresponden a la parte entera del valor numérico y se consignan a la izquierda de la coma. Para indicar la base b del sistema de numeración seguiremos la nomenclatura X (b, donde X es la representación del valor numérico (secuencia ordenada de dígitos) en base b.a Consideremos de nuevo el valor 632 (0. Podemos expresar este número en función de los pesos asociados a la posición que ocupa cada dígito de la manera siguiente: 632 (0 = 6 00 + 3 0 + 2 Según la numeración que hemos establecido, en el número 632 (0, el dígito 2 ocupa la posición 0, el dígito 3 ocupa la posición y el dígito 6 ocupa la posición 2. Podemos reescribir la expresión anterior relacionando los pesos con la base de numeración y la posición que ocupa cada dígito: 632 (0 = 6 0 2 + 3 0 + 2 0 0 Podemos intuir que, en general, un sistema de representación numérica posicional de base fija permite expresar un valor numérico de esta manera, según la base de numeración y la posición de cada dígito. Examinemos, ahora, el número 34,75 (0. Se trata de un número con parte fraccionaria. Según la numeración de dígitos propuesta, el dígito 7 ocupa la posición y el dígito 5 la posición 2, mientras que los dígitos 3 y 4 (dígitos de la parte entera) ocupan las posiciones y 0, respectivamente. La expresión de este valor en función de la base de numeración y de la posición de cada dígito es: 34,75 (0 = 3 0 + 4 0 0 + 7 0 + 5 0 2 La secuencia de dígito que representa un valor numérico en un sistema posicional debe ser ordenada, porque cada posición tiene un peso asociado. En un sistema de base fija, el valor de este peso depende de la posición que ocupa el Recordemos que k x = k x

FUOC PID_005355 0 Representación de la información numérica dígito y de la base de numeración. El peso asociado a la posición p es b p, donde b es la base de numeración.a De esta manera: n X = x b = x b + x b +... + x b i= m i n n 2 m i n n 2 m Esta expresión se conoce como el teorema fundamental de la numeración (TFN), y nos muestra cómo se expresa un número según la base en la que está representado. Abreviaremos teorema fundamental de la numeración con la sigla TFN. Por lo tanto, además de una secuencia de dígitos correspondiente a la representación de un valor numérico en un sistema posicional de raíz fija, habrá que conocer la base de numeración para determinar el valor numérico representado.a Consideremos la secuencia de dígitos 235. Ésta es una secuencia de dígitos que representa un valor numérico válido en cualquier sistema de numeración posicional de raíz fija en el que la base sea mayor o igual que 6, dado que el 5 no es un dígito válido en las bases de numeración inferiores a 6. Ahora bien, esta secuencia de dígitos representa valores numéricos distintos según la base de numeración. Por lo tanto, 235 (6 235 (0 235 (6. La tabla siguiente muestra la correspondencia entre las representaciones de los valores en las bases más habituales: Base 2 Base 4 Base 8 Base 0 Base 6 0 0 0 0 0 0 2 2 2 2 3 3 3 3 00 0 4 4 4 0 5 5 5 0 2 6 6 6 Elementos de la tabla En cada columna se representan los valores numéricos desde el 0 hasta el 8 (0 en la base indicada en la casilla superior de la columna. En cada fila disponemos de la representación del mismo valor numérico en diferentes bases. La correspondencia entre estas representaciones se explica en el siguiente subapartado. 3 7 7 7 000 20 0 8 8 00 2 9 9 00 22 2 0 A 0 23 3 B 00 30 4 2 C 0 3 5 3 D 0 32 6 4 E 33 7 5 F 0000 00 20 6 0 000 0 2 7 000 0 22 8 2

FUOC PID_005355 Representación de la información numérica El sistema de numeración con el que trabajaremos habitualmente tiene base 0 y recibe el nombre de sistema decimal. Análogamente, se denomina sistema binario al sistema de numeración en base 2, sistema octal al que utiliza base 8 y sistema hexadecimal al que utiliza base 6.a Un dígito binario recibe el nombre de bit, que es un acrónimo de la expresión inglesa binary digit..3. Cambios de base La secuencia ordenada de dígitos que representa un valor numérico cambia según la base b del sistema de numeración, pero hay una relación directa entre estas representaciones. Los métodos de cambio de base nos permiten encontrar la secuencia de dígitos de un valor numérico X que corresponde al sistema de numeración en base b, a partir de la representación del valor numérico X en el sistema de numeración en base b, es decir: Utilidad de los cambios de base Los cambios de base serán de utilidad, por ejemplo, para convertir valores numéricos expresados en base 0 (nuestro sistema habitual de numeración) a base 2 (sistema de numeración habitual en los computadores), y viceversa. X (b Método de cambio de base X (b En los apartados siguientes, se exponen las dos maneras básicas de efectuar un cambio de base..3.. Método basado en el TFN Consideremos el número 324 (0. Hemos visto que el TFN nos permite expresar un valor numérico según su base. Si aplicamos el TFN a este número, tenemos: 324 (0 = 3 0 2 + 2 0 + 4 0 0 Si hacemos las operaciones indicadas a la derecha de la igualdad en base 0, obtenemos la representación en base 0 de este valor numérico, que es el que tenemos a la izquierda de la igualdad. Ahora bien, si hiciésemos las operaciones en otra base, por ejemplo en base 7, obtendríamos la representación de este valor numérico en base 7. Si hiciésemos las operaciones en base b, obtendríamos la representación en base b. La dificultad reside en operar en una base distinta de la base 0, puesto que no estamos acostumbrados a esto. Por lo tanto, este método nos será útil para pasar un valor representado en una base b a base 0.a Cambio de base basado en el TFN Para realizar el cambio de base siguiente: 462 (7 X (0 ) Ponemos el número en función de su base (base 7): 462 (7 = 4 7 2 + 6 7 + 2 7 0

FUOC PID_005355 2 Representación de la información numérica Hacemos las operaciones a partir de la aritmética de la base de llegada (base 0): 4 7 2 + 6 7 + 2 7 0 = 4 49 + 6 7 + 2 = 240 (0 Las secuencias de dígitos 462 (7 y 240 (0 representan el mismo valor numérico. Son dos representaciones del mismo número, expresado en sistemas de numeración que tienen bases distintas: base 7 la primera y base 0 la segunda. Podemos formalizar el proceso para transformar la representación de un valor numérico X en base b a base 0 de la siguiente manera: ) Expresar el valor numérico X según la base b del sistema de numeración en el que está representado (siguiendo el TFN). 2) Hacer las operaciones aritméticas en base 0. Para los casos en los que b > 0, será necesario convertir los dígitos de base b a base 0 antes de hacer las operaciones. El método es válido tanto para números enteros como para números con parte fraccionaria.a Cambios de base basados en el TFN Para realizar el cambio de base siguiente: 000,0 (2 X (0 ) Ponemos el número en función de su base (base 2): 000,0 (2 = 2 5 + 0 2 4 + 2 3 + 2 2 + 0 2 + 0 2 0 + 0 2 + 2 2 2) Hacemos las operaciones a partir de la aritmética de base 0: 2 5 + 0 2 4 + 2 3 + 2 2 + 0 2 + 0 2 0 + 0 2 - + 2-2 = = 32 + 0 6 + 8 + 4 + 0 2 + 0 + 0 0,5 + 0,25 = 44,25 (0 Valores decimales Dígitos hexadecimales 0 0 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 0 A B 2 C 3 D 4 E 5 F Para realizar el cambio de base siguiente: AF2C,2 (6 X (0 ) Ponemos el número en función de su base (base 6): AF2C,2 (6 = A 6 3 + F 6 2 + 2 6 + C 6 0 + 2 6 2) Hacemos las operaciones a partir de la aritmética de base 0. En este caso, encontramos que la base inicial es mayor que 0. Por lo tanto, deberemos transformar los dígitos antes de hacer las operaciones: A 6 3 + F 6 2 + 2 6 + C 6 0 + 2 6 = = 0 6 3 + 5 6 2 + 2 6 + 2 6 0 + 2 6 = 44844,25 (0.3.2. Método basado en el teorema de la división entera La dificultad que se presenta con el método de cambio de base basado en el TFN para conseguir la representación de un número en una base b que no sea base 0 es que hay que hacer operaciones en esta base b. Con el objetivo de superar esta dificultad, disponemos de un método alternativo para hacer un cambio de base.

FUOC PID_005355 3 Representación de la información numérica La idea subyacente de este segundo método es ir haciendo de manera iterativa divisiones enteras de la representación en base 0 por el valor de la nueva base de numeración. Los restos de las divisiones enteras forman los dígitos de la representación en la nueva base: 37 (0 X (7 37 = 45 7 + 2 45 = 6 7 + 3 6 = 0 7 + 6 37 (0 = 632 (7 La secuencia de restos tomados en orden inverso nos da la representación en base 7. Las secuencias de dígitos 632 (7 y 37 (0 representan el mismo valor numérico. Son dos representaciones del mismo número, expresado en sistemas de numeración que tienen bases distintas: base 7 la primera y base 0 la segunda. Para el cambio de base de números fraccionarios, debemos separar y tratar de manera independiente la parte entera y la parte fraccionaria.a ) Parte entera: aplicar sucesivamente el mecanismo de la división entera, dividiendo la parte entera por el valor de la nueva base, y haciendo las operaciones en base 0. La secuencia de restos obtenidos, tomados del último al primero conseguido, corresponde a la secuencia de dígitos de izquierda a derecha de la parte entera en la nueva base. Para los casos en los que la nueva base sea mayor que 0, será necesario convertir los restos obtenidos a dígitos de la nueva base. 2) Parte fraccionaria: sucesivamente, se separa la parte fraccionaria y se multiplica por el valor de la nueva base. Las operaciones se hacen en base 0. La secuencia de valores enteros obtenidos al hacer las multiplicaciones tomados del primero al último obtenido corresponde a la secuencia de dígitos de izquierda a derecha en la nueva base de representación. Para los casos en los que la nueva base sea mayor que 0, habrá que convertir los valores enteros obtenidos a dígitos de la nueva base. Finalmente, hay que juntar la parte entera y la parte fraccionaria obtenidas. Cambio de base Consideremos el siguiente cambio de base: 44,25 (0 X (2 a) Parte entera: aplicamos sucesivamente el mecanismo de la división entera, dividiendo la parte entera por el valor de la nueva base (base 2): 44 = 22 2 + 0 22 = 2 + 0 = 5 2 + 5 = 2 2 + 2 = 2 + 0 = 0 2 + 44 (0 = 000 (2

FUOC PID_005355 4 Representación de la información numérica b) Parte fraccionaria: multiplicamos sucesivamente la parte fraccionaria por el valor de la nueva base (base 2): 0,25 2 = 0,50 = 0,50 + 0 0,50 2 =,00 = 0,00 + 0,25 (0 = 0,0 (2 Para completar el cambio de base, hay que juntar la parte entera y la parte fraccionara que resultan: 44,25 (0 = 000 (2 + 0,0 (2 = 000,0 (2 Las operaciones se hacen en la base inicial (base 0 en los ejemplos anteriores). Por lo tanto, es un método especialmente útil para pasar de base 0 a otra base. Al hacer el cambio de base de la parte entera, detendremos la sucesión de divisiones cuando obtengamos un cociente 0. Al hacer el cambio de base de parte fraccionaria, detendremos la sucesión de multiplicaciones cuando la precisión sea suficiente o cuando encontremos un comportamiento periódico. De hecho, un número que tiene una parte fraccionaria con una representación finita no periódica en una base puede tener una representación infinita periódica de la parte fraccionaria en otra base. Por ejemplo, 0,3 (0 = 0,00000 (2.a Cambio de base basado en el teorema de la división entera Consideramos el cambio de base siguiente: 44844,2 (0 X (6 ) Parte entera. Hacemos la sucesión de divisiones enteras: 44844 = 2802 6 + 2 2802 = 75 6 + 2 75 = 0 6 + 5 0 = 0 6 + 0 En este caso, la nueva base es mayor que 0. Deberemos transformar los restos en dígitos de la nueva base (base 6): 2 (0 C (6 2 (0 2 (6 44844 (0 = AF2C (6 5 (0 F (6 0 (0 A (6 2) Parte fraccionaria. Multiplicamos sucesivamente por la nueva base: 0,2 6 =,92 = 0,92 + 0,92 6 = 4,72 = 0,72 + 4 0,72 6 =,52 = 0,52 + 0,52 6 = 8,32 = 0,32 + 8 0,32 6 = 5,2 = 0,2 + 5 0,2 6 =,92 = 0,92 + 0,92 6 = 4,72 = 0,72 + 4 Observemos que la secuencia que obtenemos se repite (, 4,, 8, 5,, 4, ). Esto quiere decir que se trata de un número periódico. Como en el apartado anterior, deberemos transformar los valores obtenidos en dígitos de base 6: 0,2 (0 = 0,EB85EB85EB... (6 = (0 (6 4 (0 E (6 (0 B (6 8 (0 8 (6 5 (0 5 (6 (0 (6 0,EB85 (6

FUOC PID_005355 5 Representación de la información numérica Finalmente, juntaremos la parte entera y la parte fraccionaria: 44844,2 (0 = AF2C,EB85 (6 Cuando debemos transformar la expresión de un valor numérico de una base b a una base b', donde ni b ni b' son la base 0, utilizaremos la base 0 como base intermedia. Así pues, utilizaremos el primer método (basado en el TFN) para pasar de la base b a la base 0 y posteriormente el segundo método (basado en el teorema de la división entera) para pasar de la base 0 a la base b'.a Es decir, hacemos los cambios de base: X X 2 X ( b (0 ( b' cuando b 0 y b' 0 ) Se aplica el método basado en el teorema fundamental de la numeración. 2) Se aplica el método basado en el teorema de la división entera. Potencias de 2 2 6 65.536 2 5 32.768 2 4 6.384 Ejemplo de cambio entre bases distintas de la base 0 Consideramos el cambio de base siguiente: 2232, (4 X (6 Haremos este cambio de base en dos pasos: ) Hacemos el cambio de base 232, (4 X (0 232, (2 = 2 4 2 + 3 4 + 2 4 0 + 4 = = 32 + 2 + 2 + 0,25 = 46,25 (0 2) Completamos el cambio entre las bases 4 y 6 y transformamos, de esta manera, la representación obtenida en la base 0 a la base 6: 46 = 7 6 + 4 0,25 6 =,50 = 0,50 + 7 = 6 + 0,50 6 = 3,00 = 0,00 + 3 = 0 6 + 46 (0 = 4 (6 0,25 (0 = 0,3 (6 Finalmente, uniremos la parte entera y la parte fraccionaria: 46,25 (0 = 4,3 (6 2 3 8.92 2 2 4.096 2 2.048 2 0.024 2 9 52 2 8 256 2 7 28 2 6 64 2 5 32 2 4 6 2 3 8 2 2 4.3.3. Cambio de base entre b y b n Hay un tipo especial de cambio entre bases que se da cuando una base es potencia de la otra. Esta particularidad simplifica mucho la conversión. La simplificación de este tipo de cambio de base es determinada por el hecho de que un dígito en base b n se corresponde con n dígitos en base b. 2 2 2 0 2 0,5 2 2 0,25 2 3 0,25 2 4 0,0625 2 5 0,0325 Paso de b a b n Consideramos la conversión siguiente: 2 6 0,05625 2 7 0,007825 2 8 0,00390625 0000,000 (2 X (6

FUOC PID_005355 6 Representación de la información numérica Vemos que una base se puede escribir en forma de potencia del valor de la otra base: 6 = 2 4. Este hecho nos dice que cada dígito de base 6 se corresponde con cuatro dígitos de base 2. Para cambiar de base, haremos agrupaciones de cuatro dígitos binarios y convertiremos directamente cada agrupación en un dígito hexadecimal. Las agrupaciones se hacen siempre a partir de la coma, y deben ser completas. Podéis ver los sistemas de numeración posicionales del subapartado.2 de este módulo. 00 00, 00 0 (2 9 6, 6 D (6 0000,000 (2 = 96,6D (6 Si faltan dígitos para completar una agrupación, añadiremos ceros.a En el ejemplo siguiente, debemos completar las agrupaciones con ceros: 00,00 (2 X (6 Podemos escribir una base en función de la otra de la forma 6 = 2 4. El exponente es 4 y, por lo tanto, haremos agrupaciones de cuatro dígitos binarios a partir de la coma. Añadiremos los ceros necesarios para completar las agrupaciones y convertiremos directamente cada agrupación en un dígito hexadecimal: 000 0, 0 000 (2 2 E, B 4 (6 00,00 (2 = 2E,B4 (6 Paso de b n a b El cambio entre bases de este tipo es análogo al caso tratado en el apartado anterior, pero en sentido inverso, es decir, cada dígito en base b n se transformará en n dígitos en base b. Podemos ver su proceso con el cambio de base siguiente: 7632,3 (8 X (2 En primer lugar, analizamos la relación entre las bases, que es 8 = 2 3. Consiguientemente, cada dígito en base 8 dará lugar a tres dígitos binarios: 7 6 3 2, 3 (8 0 0 00, 00 0 (2 7632,3 (8 = 0000,000 (2

FUOC PID_005355 7 Representación de la información numérica Debemos prestar atención al hecho de que se deben obtener exactamente n dígitos en base b por cada dígito en base b n (en este caso, tres dígitos binarios por cada dígito octal), añadiendo para cada dígito los ceros necesarios. Veamos en el ejemplo siguiente cómo cada dígito hexadecimal da lugar a cuatro dígitos binarios, ya que la relación entre las bases 6 = 2 4 : EB2,4F (6 X (2 E B 2, 4 F (6 0 000 0 000, 000 (2 EB2,4F (6 = 00000000,000 (2 Errores habituales Con frecuencia, se cometen dos errores cuando se hacen estos dos últimos tipos de cambio de base: ) Cuando hacemos un cambio de la base b n a la base b, cada dígito de la base b n debe dar lugar a n dígitos en la base b. Error frecuente Hay que evitar el siguiente error: A3 (6 = 00 (2 donde el dígito hexadecimal A ha dado lugar a los dígitos 00 en base 2 y el dígito 3 a los dígitos. En realidad, debería ser: A3 (6 = 0000 (2 donde se han añadido dos ceros para completar el conjunto de cuatro dígitos que debe generar el dígito hexadecimal 3. 2) Cuando hacemos un cambio de la base b a la base b n, son necesarios n dígitos de la base b para obtener un dígito en la base b n. Error frecuente Hay que evitar el siguiente error: 00, (2 = C,3 (6 donde los dígitos binarios 00 dan lugar al dígito hexadecimal C y los dígitos al 3. En realidad, debería ser: 00,00 (2 = C,C (6 donde se han incorporado dos ceros por la derecha para constituir un grupo de cuatro dígitos binarios que dan lugar al dígito hexadecimal C. Actividades. Expresad los siguientes números en términos de su base y convertidlos a base 0: a) 46 (7 b) 3AD (6

FUOC PID_005355 8 Representación de la información numérica c) 000 (2 d) 333 (4 e) 333 (8 f) B2,3 (6 g) 2232,02 (4 h) 2464, (8 i) 000,00 (2 2. Haced los siguientes cambios de base: a) 3245 (8 X (0 b) 425 (0 X (2 c) AC3C (6 X (0 d) 45367 (0 X (6 e) 344 (0 X (2 3. Convertid a hexadecimal los siguientes números: a) 000,000 (2 X (6 b) 0,00 (2 X (6 c) 0,00000 (2 X (6 4. Rellenad la tabla siguiente: Binario Octal Hexadecimal Decimal 000,0 362,23 A,03 74,3 En cada fila, encontrad un valor numérico expresado en la base que indica la casilla superior de la columna donde está. Consignad en el resto de las casillas la representación correspondiente, según la base indicada en la parte superior. 5. Convertid los siguientes números en base hexadecimal a base 2, base 4 y base 8: a) ABCD (6 b) 45,45 (6 c) 96FF,FF (6 6. Convertid a base 2 los siguientes valores: a) 4365,4 (0 b) 234,2 (5 c) 3,25 (0 7. Convertid a base 0 los siguientes valores: a) 0000,0 (2 b) 00, (4 c) 00, (8.4. Números con signo Cuando representamos magnitudes, con frecuencia les asignamos un signo (+/ ), que indica si la magnitud numérica es positiva o negativa. Designaremos los números que llevan la información de signo como números con signo, en contraposición a los números sin signo, que sólo nos dan información sobre la magnitud del valor numérico.a A veces, cuando se trabaja con números con signo, el signo positivo (+) no se escribe: sólo aparece el signo cuando se trata de un número negativo. La información de signo se incorpora con un símbolo que precede a la secuencia de dígitos que identifica la magnitud. Se utiliza el símbolo para identifi-

FUOC PID_005355 9 Representación de la información numérica car las magnitudes negativas y el símbolo + para identificar las magnitudes positivas: +23 (0 456 (8 34,5 (7 +AF,34 (6.5. Suma y resta en los sistemas posicionales Estamos habituados al proceso de suma y de resta de valores numéricos en base 0. A continuación, analizaremos cuidadosamente un ejemplo en base 0 para entender el proceso de suma en otras bases. Hacemos la suma de los valores numéricos 834 (0 y 2463 (0. transportes 8 3 4 (0 + 2 4 6 3 (0 0 8 0 4 (0 resultado Fijémonos en el hecho de que la suma de dos valores numéricos se hace, en los sistemas posicionales, sumando los dígitos del mismo peso. Ahora bien, la suma de estos dígitos puede superar el valor de la base de representación (0 en nuestro ejemplo) y generar, consiguientemente, un transporte (lo que nos llevamos ). La suma realiza, por lo tanto, progresando de derecha a izquierda, sumando en cada etapa los dígitos del mismo peso (los que ocupan la misma posición) y el transporte de la etapa precedente. La suma de estos tres dígitos da un resultado de dos dígitos: el dígito de la suma, y el dígito de transporte para la etapa siguiente (que será 0 si la suma de los tres dígitos es inferior al valor b de la base, 0 en este ejemplo). El bit (dígito binario) de transporte recibe en inglés el nombre de carry. Este término es de uso habitual dentro del entorno de los computadores. El ejemplo siguiente de suma de dos valores hexadecimales sigue las mismas pautas, pero ajustadas al caso de base 6 (donde tenemos dieciséis dígitos distintos): transportes 3 5 8 2 (6 + A F 8 (6 E 4 9 A (6 resultado El proceso de suma en base 2 es análogo: transportes 0 0 0 0 (2 + 0 0 0 (2 0 0 0 0 0 0 (2 resultado Tabla de suma en base 2 transporte + bit de suma + 0 0 0 + 0 0 + 0 + + 0

FUOC PID_005355 20 Representación de la información numérica En los anteriores ejemplos precedentes se pone de manifiesto que se puede producir un transporte en la última etapa de suma. Por lo tanto, el resultado de una suma de números puede necesitar para su representación un dígito más que los operandos. El resultado de la suma de dos números representados en base b donde el mayor tiene n dígitos puede requerir un máximo de n + dígitos para su representación. La resta de dos valores numéricos recibe un tratamiento semejante. La operación también se realiza de derecha a izquierda, operando los dígitos de igual peso, y considerando el transporte de la etapa precedente. Se obtienen de nuevo dos dígitos: el dígito de resta y el dígito de transporte. La particularidad en esta operación es que el número de menor magnitud (sustraendo) es el que se debe restar del número de mayor magnitud (minuendo): En inglés, el transporte en el caso de la resta recibe el nombre de borrow. 8 3 4 (0 minuendo transportes 2 4 6 3 (0 subtraendo 5 8 7 8 (0 resultado El procedimiento en otras bases es idéntico. Sólo hay que adecuarse a la nueva base y procurar restar la magnitud pequeña de la grande: A F 8 (6 0 0 0 (2 transportes transportes 3 5 8 2 (6 0 0 0 0 (2 7 9 9 6 (6 resultado 0 0 0 0 (2 resultado En el caso de la operación de resta, no se puede producir ningún transporte en la última etapa. Por este motivo, el resultado de una resta de números necesitará para su representación, como máximo, los mismos dígitos que el minuendo. El resultado de la resta de dos números representados en base b donde el minuendo tiene n dígitos puede requerir un máximo de n dígitos para su representación..6. Multiplicación y división por potencias de la base de numeración En un sistema posicional de base fija, cada dígito tiene un peso b p, donde b es la base de numeración y p la posición que ocupa el dígito. El TFN nos permite

FUOC PID_005355 2 Representación de la información numérica expresar un número en términos de estos pesos, que son potencias de la base de numeración. En el caso de los sistemas de representación decimales, la base de numeración es 0. Por lo tanto, los pesos asociados a los dígitos son potencias de 0. Consiguientemente, multiplicar por 0 se traduce en aumentar en una unidad la potencia de 0 asociada a cada dígito, y dividir por 0 equivale a disminuir en una unidad la potencia de 0 asociada a cada dígito. Podéis consultar los sistemas de numeración posicionales del subapartado.2 de este módulo. Por ejemplo, el número 56,34 (0 se puede expresar en términos de los pesos asociados a cada dígito siguiendo el TFN: 56,34 (0 = 5 0 + 6 0 0 + 3 0 + 4 0 2 Si multiplicamos por 0, obtenemos: 56,34 (0 0 = (5 0 + 6 0 0 + 3 0 + 4 0 2 ) 0 = = 5 0 2 + 6 0 + 3 0 0 + 4 0 - = 563,4 (0. El efecto que se obtiene es el desplazamiento de la coma fraccionaria. Multiplicar por 0 un número en base 0 equivale a desplazar la coma fraccionaria una posición a la derecha, mientras que dividirlo por 0 equivale a desplazar la coma una posición a la izquierda. El proceso se puede extender a la multiplicación y a la división por una potencia de 0: multiplicar por 0 k un número en base 0 equivale a desplazar la coma fraccionaria k posiciones a la derecha, y dividirlo por 0 k equivale a desplazar la coma fraccionaria k posiciones a la izquierda. Este proceso de multiplicación y división por potencias de la base de numeración que aquí encontramos ejemplificado en base 0 es válido para todos los sistemas de posicionales de base fija b.a Multiplicar por b k un número representado en un sistema posicional de base fija b equivale a desplazar la coma fraccionaria k posiciones a la derecha. Dividir por b k un número representado en un sistema posicional de base fija b equivale a desplazar la coma fraccionaria k posiciones a la izquierda. Números sin parte fraccionaria En un número sin parte fraccionaria, desplazar la coma k posiciones a la derecha equivale a añadir k ceros a la derecha, puesto que la parte fraccionaria es cero. Por consiguiente, el resultado requerirá k dígitos más para la representación que el número inicial. Multiplicación por una potencia de 2 en binario Para multiplicar un número binario por 2 k, desplazaremos la coma fraccionaria k posiciones a la derecha. Para multiplicar el 00 (2 por 2 4, desplazaremos la coma fraccionaria cuatro posiciones a la derecha: 00 (2 2 4 = 000000 (2

FUOC PID_005355 22 Representación de la información numérica Este resultado que obtenemos de manera directa se puede justificar con los siguientes cálculos: 00 (2 2 4 = ( 2 4 + 2 3 + 0 2 2 + 2 + 0 2 0 ) 2 4 = = ( 2 8 + 2 7 + 0 2 6 + 2 5 + 0 2 6 ) = 000000 (2 Por lo tanto, 00 (2 2 4 = 000000 (2. División por una potencia de 2 en binario Para dividir un número binario por 2 k, desplazaremos la coma fraccionaria k posiciones a la izquierda. Para dividir el 00 (2 por 2 2, desplazaremos la coma fraccionaria 2 posiciones a la izquierda: 00 (2 / 2 2 = (2 Este resultado que obtenemos de manera directa se puede justificar con los siguientes cálculos: 00 (2 / 2 2 = ( 2 4 + 2 3 + 2 2 + 0 2 + 0 2 0 ) / 2 2 = = ( 2 2 + 2 + 2 0 + 0 2 + 0 2 2 ) = (2 Por lo tanto, 00 (2 / 2 2 = (2. Las operaciones de división por una potencia de la base de numeración de un número sin parte fraccionaria pueden dar como resultado un número con parte fraccionaria: 00 (2 / 2 4 =, (2. Ahora bien, si estamos en un contexto en el que se trabaja con números sin parte fraccionaria, podemos dar el resultado en forma de dos números enteros que reciben el nombre de cociente y resto: el cociente tiene relación directa con la parte entera del resultado y el resto, con la parte fraccionaria. En este caso, la operación recibe el nombre de división entera, mientras que, por oposición, la primera recibe el nombre de división real. El cociente y el resto de la división entera de 00 (2 por 2 4 se pueden obtener a partir del resultado de la división real 00 (2 / 2 4 =, (2, identificando el cociente con la parte entera (cociente = (2 ) y el resto, con la parte fraccionaria (resto = (2 ) El cociente y el resto de una división entera de un número sin parte fraccionaria por una potencia de la base de numeración se pueden obtener a partir del resultado de división real, identificando el cociente con la parte entera y el resto, con la parte fraccionaria..7. Representación en notación científica Las representaciones de números fraccionarios que aparecen en los apartados precedentes son del tipo 67,34 (0. Aquí encontramos un conjunto de los dígitos que representan la parte entera y un conjunto de dígitos destinados a representar la parte fraccionaria. Supongamos que debemos trabajar con números grandes, como por ejemplo la velocidad de transmisión de la luz en el vacío (c = 299.792.500 m/s) y, si-

FUOC PID_005355 23 Representación de la información numérica multáneamente, con números muy pequeños, como por ejemplo la masa de un electrón (m e = 0,0000000000000000000000000000009095 kg). Para representar números como éstos, encontramos una dificultad importante: necesitamos un número elevado de dígitos. Como en el segundo caso, muchos de estos dígitos pueden ser cero y, por lo tanto, la eficiencia de la representación puede ser bastante reducida. La notación científica es una estrategia que permite superar esta dificultad, y representar números muy grandes y números muy pequeños con un conjunto de dígitos reducido. La notación científica también recibe el nombre de representación en coma flotante. Los siguientes números están en notación científica: +2,997925 (0 0 8 6,487567 (0 0 5 Los números en notación científica toman la forma: Cuando el número en notación científica es positivo, el símbolo + ante R se puede obviar. ±R b e donde + o indica el signo de la magnitud representada, R es un número fraccionario que recibe el nombre de mantisa, b es la base de numeración y e es un número entero que recibe el nombre de exponente. La mantisa contiene los dígitos significativos de la magnitud representada, y está precedida por el signo de esta magnitud. El exponente marca el número de posiciones a la derecha (exponente positivo) o a la izquierda (exponente negativo) que debemos desplazar la coma fraccionaria para obtener el valor numérico representado. Veamos algunos ejemplos: +245,86 (0 = +2,4586 (0 0 2 (donde R = 2,4586 (0, b es 0 y e es 2) 0,000345 (0 = 3,45 (0 0 4 +0,0000000000000000000000000000009095 (0 = +9,095 (0 0 3 +299792500 (0 = +2,997925 (0 0 8 Cuando el exponente es positivo, no suele aparecer el símbolo + frente al exponente. Habitualmente se utiliza este tipo de representación para trabajar con las magnitudes de la física, como por ejemplo la velocidad de transmisión de la luz en el vacío o la masa de un electrón..8. Suma y resta en notación científica El proceso de suma y de resta en los sistemas posicionales comporta operar los dígitos del mismo peso. La virtud de la notación científica es, precisamente, la capacidad de alterar el peso relativo de los dígitos mediante el exponente. Podéis ver la suma y la resta en los sistemas posicionales del subapartado.5 de este módulo.

FUOC PID_005355 24 Representación de la información numérica Por ejemplo, la primera posición a la izquierda de la coma del número +,34 (0 0 es 0 (ya que +,34 (0 0 = +3,4 (0 ), mientras que la primera posición a la izquierda de la coma del número +45,2 (0 0 3 es 0 3 (ya que +45,2 (0 0 3 = +0,00452 (0 ). Por lo tanto, la dificultad de sumar y restar números en notación científica reside en la necesidad de igualar los exponentes de los números que se deben operar. Para hacerlo, desplazamos la coma del número con menor magnitud hasta conseguir que el exponente tenga el mismo valor que en el número de mayor magnitud. A continuación podremos hacer la operación:,34 (0 0 > 45,2 (0 0 3 45,2 (0 0 3 = 0, 00452 (0 0 +, 3 4 0 0 0 (0 0 + +0, 0 0 4 5 2 (0 0 +, 3 4 4 5 2 (0 0 El exponente del resultado de la operación de suma o resta se puede volver a ajustar si es necesario: +4, 3 0 5 (0 0 6 +4, 3 0 0 3 (0 0 6 +0, 0 0 0 2 (0 0 6 +0,0002 (0 0 6 = +,02 (0 0 3 Actividades 8. Haced las siguientes operaciones en la base especificada: a) 000 (2 +00000 (2 = b) 2345 (8 + 32 (8 = c) A23F (6 + 54A3 (6 = d) 000 (2 00000 (2 = e) 2345 (8 32 (8 = f) A23F (6 54A3 (6 = 9. Haced las siguientes operaciones en la base especificada: a) 62,48 (6 + 35,DF (6 = b) 00,0 (2 + 00000, (2 = c) 62,48 (6 35,DF (6 = d) 00,0 (2 00000, (2 = 0. Haced las siguientes multiplicaciones: a) 28,7 (0 0 (0 b) AFD (6 6 (0 c) 0,0 (2 2 (0. Encontrad el cociente y el resto de las siguientes divisiones enteras: a) 52978 (0 / 0 (0 b) 3456 (6 / 6 (0 c) 0000000 (2 / 2 (0 2. Escribid en notación científica el número +2044,4 (0. 3. Identificad la mantisa y el exponente del número 3,43 (0 0 45. 4. Sumad los números +23,34 (0 0 3 y +67,89 (0 0 5. 5. Restad los números +223,34 (0 0 2 y +65,6789 (0 0 5

FUOC PID_005355 25 Representación de la información numérica 2. Representación de los números en un computador En el primer apartado se hace la distinción entre el valor numérico y su representación o codificación. El valor numérico es único, pero tiene una representación diferente en cada sistema de numeración. Nuestro objetivo en este segundo apartado es estudiar las representaciones que permitan almacenar y procesar de una manera eficiente los valores numéricos en el interior de un computador. Terminología A lo largo del texto, utilizaremos indistintamente representación y codificación para referirnos a la secuencia de dígitos asociada a un valor numérico en un sistema de representación numérica. 2.. Condicionantes físicos Las restricciones de la tecnología con la que se construyen los computadores hace que el sistema binario, donde sólo se dispone de dos dígitos, sea el sistema de numeración más adecuado. Internamente, el computador asocia los dos dígitos con dos valores diferentes de tensión eléctrica (voltaje). Un dígito binario recibe el nombre de bit. Los bits pueden tomar los valores 0 y. Un bit constituye la unidad de información que se define como la cantidad de información asociada a la respuesta de una pregunta formulada de manera no ambigua, en la que sólo son posibles dos alternativas de respuesta y que, además, tienen la misma probabilidad de ser elegidas. Bit es un acrónimo de la expresión inglesa binary digit. Aunque el sistema de numeración habitual en los computadores es el sistema binario, trabajar directamente en base 2 suele ser poco práctico para nosotros, dada la gran cantidad de bits necesarios para representar valores numéricos usuales. Ahora bien, dada la relación directa que hay entre bases b y b n, es habitual convertir los valores numéricos internos del computador a hexadecimal, ya que es considerablemente más compacta y tiene una relación directa con base 2 (puesto que 6 es potencia de 2, 6 = 2 ).a 4 Aunque se utilice la base 2 dentro de los computadores, las unidades funcionales del computador no suelen trabajar bit a bit, sino que generalmente procesan cadenas de bits de una longitud determinada. Por las mismas características del sistema binario, hay unas longitudes determinadas que ofrecen un rendimiento computacional más elevado: son las cadenas cuya longitud es una potencia de 2. Las cadenas adecuadas son, por lo tanto, las de longitud 2, 4, 8, 6, 32, 64, etc. Las cadenas de 8 bits reciben el nombre de byte u octeto. Cuando dis-

FUOC PID_005355 26 Representación de la información numérica ponemos de 6 bits, hablamos de cadenas de 2 bytes; de 4 bytes para cadenas de 32 bits; etc. Hay una longitud característica relacionada con un computador, que denominamos palabra y que depende de la arquitectura particular de cada computador. Una palabra es la cantidad de información con la que opera un computador. A pesar de las mejoras tecnológicas, la capacidad de almacenamiento de los computadores es finita. Esto condiciona, y mucho, la representación numérica dentro de los computadores, sobre todo cuando se trabaja con números que requieren un número infinito de dígitos para representar la parte fraccionaria, como por ejemplo los casos bien conocidos de los números irracionales, como 2. Evolución de la longitud típica de la palabra La longitud típica de la palabra evoluciona con la tecnología. Actualmente, la palabra de los procesadores que equipan los computadores de carácter general es de 32 bits, pero cada vez aparecen más procesadores que trabajan con palabras de 64 bits. Los procesadores más veteranos y muchos de los actuales microcontroladores trabajan con palabras de 4, 8 o 6 bits. Estas limitaciones físicas que tienen los computadores en la representación de valores numéricos son semejantes a las que encontramos cuando trabajamos con lápiz y papel. Por ejemplo, en los cálculos aritméticos manuales trabajamos con una aproximación de los números irracionales. Para el número π, utilizamos el valor 3,4 (0 o el 3,46 (0 según el grado de precisión necesario. De una manera semejante, dentro de los computadores se trabaja con aproximaciones de aquellos números que no se pueden representar de manera exacta. Cuando un número no se puede representar de manera exacta dentro de un computador, se comete un error de representación. Este error es la distancia entre el número que queremos representar y el número representado realmente. Los números que se pueden representar de manera exacta reciben el nombre de números representables. De esta manera, si representamos el número π por el valor 3,4 (0, cometemos un error igual a π 3,4 (0 = 0,0059, mientras que si trabajamos con el valor 3,46 (0 para representar el número π, el error es π 3,46 (0 = 7,346402 0 6. Cuando trabajamos con lápiz y papel, escribimos los números de la manera más práctica y adecuada. Podemos escribir 03, 3,00, 3,000 o simplemente 3. En cambio, dentro de los computadores hay que seguir unas pautas más rígidas, un formato que especifique y fije el número de dígitos que hay que utilizar o el número de dígitos fraccionarios con los que se trabaja. Un formato de representación numérica es la manera específica en la que se deben representar los valores numéricos con los que se trabaja.

FUOC PID_005355 27 Representación de la información numérica Por ejemplo, supongamos que tenemos definido un formato de representación de la forma x x 0, x x 2, donde cada dígito x i corresponde a un dígito decimal. En este formato, el número 3 se debe representar como 03,00 y el 0,2, como 0,20. Una vez definido el formato de la representación numérica, queda fijado el conjunto de números que pueden ser representados.a En los siguientes subapartados, se describen los parámetros que nos ayudan a medir la eficiencia de un formato de representación numérica: el rango de representación, la precisión y el error de representación. 2... Rango de representación Dado que el conjunto de números que se pueden representar es finito, los tendremos delimitados dentro de un intervalo que recibe el nombre de rango. De esta manera, fijado el formato x x 0,x x 2 en la base 0, sólo podremos representar números entre el 00,00 (0 (el menor número representable en este formato) y el 99,99 (0 (el mayor número representable en este formato). El número 935 (0, por ejemplo, no se puede representar en este formato, ya que no está dentro del intervalo de representación. Dentro del intervalo de representación sólo se puede representar un conjunto de números. Aunque en el ejemplo el intervalo es [0, 99,99], el número 34,789 (0 no se puede representar de manera exacta, ya que tiene tres dígitos fraccionarios. El rango de un formato de representación numérica es el menor intervalo que contiene todos los números representables. Los límites del intervalo vienen determinados por el mayor y el menor número que se pueden representar. La notación que se utiliza para definir un intervalo de números representables es [a,b], donde a y b son los límites del intervalo y forman parte del mismo. La notación que se utiliza para especificar un rango de representación es: [a, b] donde a es el menor número que podemos representar en el formato espeficado y b, el mayor. Los números que están fuera del rango de representación de un formato determinado no son representables en aquel formato.a