MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José...

27
MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores

Transcript of MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José...

Page 1: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

MÉTODOS NUMÉRICOS

Representación de números y Aritmética de la computadora

M. en C. José Andrés Vázquez Flores

Page 2: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4 Aritmética de la computadora

El usuario se comunica con la computadora en sistema decimal, es

decir, introduce en ella y extrae de ella números en base decimal.

Al recibir los datos, para poder trabajar con ellos, la computadora

los convierte al sistema binario, su lenguaje natural de operación.

Todas las operaciones se efectúan en binario y los resultados

obtenidos, antes de ser entregados al usuario, la máquina los

convierte al sistema decimal. Claro está que la computadora

realiza estos procesos a enormes velocidades, de manera que el

usuario ni se entera de lo que sucede ahí dentro.

Sin embargo, al efectuar las conversiones y realizar los cálculos se

suscitan pequeños errores que, si no se prevén, pueden

propagarse y arrojar resultados muy inexactos o totalmente

absurdos. Por eso es tan importante el entender la aritmética de

las computadoras e identificar las situaciones en que pueden ocurrir

errores severos.

Page 3: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4 Aritmética de la computadora

La operación interna de una computadora se basa en la aritmética binaria, en la que la base es el 2 y sólo hay dos símbolos: 0 y 1, pues la memoria de la máquina consiste en un vasto número de dispositivos de registro magnético y electrónico, cada uno de los cuales sólo puede presentar uno de dos posibles estados: magnetizado en un sentido, representando al cero, o magnetizado en el otro sentido, representando al uno. Cada dispositivo magnético es un dígito binario, denominado bit (abreviatura de "binary digit").Los bits se agrupan en unidades llamadas palabras, las cuales pueden contener 8, 16, 32 o 64 bits, dependiendo de la computadora de que se trate (los tamaños de palabra más usuales son los de 16 o de 32 bits). También se utilizan otras unidades denominadas bytes, constituidos generalmente por 8 bits, y utilizados como particiones de palabras, para representar caracteres. Así, por ejemplo, una palabra de 32 bits consta de 4 bytes.La manera en que se usan los bits para registrar los números enteros y los números fraccionarios, varía en función del diseño de la computadora

Page 4: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.1 Los números enteros en computadora

Los números enteros requieren de al menos una palabra para almacenarse dentro de la memoria de la computadora; si el tamaño de palabra de la computadora es de 2 bytes (16 bits), el primer bit registra el signo: positivo si es 0, negativo si es 1, y los 15 bits restantes se usan para registrar números enteros binarios en el rango de 000000000000000 a 111111111111111.

n1 n2 n3 n4 n5 n6 n7 n8 n9 n10 n11 n12 n13 n14 n15

Al convertir el número binario 111111111111111 a sistema decimal, se obtienen las cotas inferior y superior en sistema decimal:

214 + 213 + 212 + 211 + 210 + 29 + 28 + 27 + 26 + 25 + 24 + 23 + 22 + 21 + 20 = 215 - 1 =

32767

Conforme a esto, el mayor entero positivo posible sería el 32767 y el menor entero negativo posible sería el -32767; pero la mayoría de las computadoras usan el complemento a dos para almacenar los números negativos, lo cual consiste en cambiar la interpretación de la polaridad en los dispositivos magnéticos e incrementar en 1 el resultado obtenido; esto hace que su rango se incremente en 1, para que sea -32768.

00000000000000002 = 0 10000000000000002 = -3276810

Page 5: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.1 Los números enteros en computadora

Los números positivos se registran así:

00000000000000012 = 110 ... 01111111111111112 = 3276710

Para los números negativos, la polaridad se invierte: los ceros se cambian por unos y

los unos por ceros y se le añade un 1 al resultado, de manera que su registro se

hace así:

11111111111111112 = -110 ... 10000000000000012 = -3276710

Entonces, el rango de almacenamiento de números enteros decimales, en

máquinas con palabras de memoria de 16 bits es: (-32,768, 32,767),

valores más que suficientes para lo que requiere un ingeniero.

Si el tamaño de palabra de la computadora es de 4 bytes (32 bits), el

campo correspondiente es conocido como entero largo, pues el rango se

incrementa sustancialmente: (-2’147,483,648, 2’147,483,647), obtenido de

231 – 1, con complemento a dos.

Page 6: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.1 Los números enteros en computadora

Ejemplo: Representar el número 2834510 en sistema binario, en una palabra de 16 bits.

28345 114172 0 7086 0 3543 1 1771 1 885 1 442 0 221 1 110 0 55 1 27 1 13 1 6 0 3 1 1 1 0

0 1 1 0 1 1 1 0 1 0 1 1 1 0 0 1

(+)

2834510 = 1101110101110012

Page 7: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.1 Los números enteros en computadora

Ejemplo: Identificar qué número entero decimal está representado en la siguiente palabra de 16 bits.

0 0 0 0 0 1 1 0 1 1 1 1 1 0 1 0

(+)

210 + 29 + 27 + 26 + 25 + 24 + 23 + 21 = 178610

Ejemplo: Representar el número -284910 en sistema binario, en una palabra de 16 bits, usando complemento a dos.

2849 11424 0 712 0 356 0 178 0 89 1 44 0 22 0 11 1 5 1 2 0 1 1 0

284910 = 1011001000012 -284910 = -1011001000012

Page 8: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.1 Los números enteros en computadora

1 1 1 1 0 1 0 0 1 1 0 1 1 1 1 1

(-)

1 1 1 1 0 1 0 0 1 1 0 1 1 1 1 1

– Complementamos el valor a 15 caracteres: 0001011001000012

– Cambiamos la polaridad: 1110100110111102

– Le sumamos 1: 1110100110111112

Ejemplo: Identificar qué número entero decimal está representado en la siguiente palabra de 16 bits, usando complemento a dos.

– El valor sin signo en 15 caracteres es: 1110110010100112

– Le restamos 1: 1110110010100102

– Cambiamos la polaridad: 0001001101011012

- (211 + 28 + 27 + 25 + 23 + 22 + 20) = -247710

Es fácil darse cuenta que el manejo de números enteros en computadora no tiene el más mínimo problema, siempre que los números introducidos o los resultados del procesamiento no sobrepasen el rango establecido.

(-)

Page 9: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.2 Los números reales en computadora

Las computadoras también manejan los números reales en sistema binario, pero no pueden hacerlo de manera exacta, porque el número de dígitos está limitado por el tamaño de palabra de cada máquina. La memoria de la computadora impone así una restricción a la precisión y exactitud de los números reales, pues al registrarlos, necesariamente son redondeados, cometiendo con ello pequeños errores. Claro que esta limitación no es privativa de la computadoras; en los cálculos a mano o usando cualquier tipo de calculadora, también tenemos que hacer redondeos.

La forma de registrar un número real en una computadora digital depende del diseño del hardware y del software; sin embargo, el formato es del mismo tipo en todos los casos y se basa en el principio de utilizar la notación de punto flotante normalizado.

Cualquier número real decimal X puede ser expresado en notación científica normalizada; ésta consiste en expresar el número como una potencia de 10, asignándole el exponente n que resulte de desplazar el punto decimal las posiciones necesarias para que todos los dígitos significativos del número en cuestión queden inmediatamente a la derecha del punto, garantizando que el primero de ellos sea diferente de cero:

X = F x 10n

donde F es un número menor que 1 y mayor o igual que 0.1: 0.1 F < 1

y n es un entero positivo, negativo o cero: n Z

Ejemplos: 836.23810 = 0.836238 x 103

-0.0067281310 = -0.672813 x 10-2

Page 10: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.2 Los números reales en computadora

De la misma manera, aunque con valores significativos diferentes, en sistema binario también se puede expresar cualquier número real con la notación científica normalizada, a la que en este caso se le llama notación de punto flotante normalizado.

X = G x 2m

donde el exponente m es un entero positivo, negativo o cero, expresado en binario, y G es la mantisa del número, la cual debe ser menor que 1 y mayor o igual que 0.12 (ó 0.510).

Por ejemplo: 11111.012 = 0.11111012 x 2101

-0.000000111011012 = 0.111011012 x 2-110

La manera más común de almacenar números reales en una PC es utilizando palabras de 32 bits (4 bytes), distribuidos como sigue:

1 bit para el signo de la mantisa,1 bit para el signo del exponente,7 bits para el exponente entero, expresado en binario 23 bits para la mantisa, expresada en binario

0.1mmmmmmmmmmmmmmmmmmmmmmm x 2 eeeeeee

m = 0, 1 ; e = 0, 1

Page 11: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.2 Los números reales en computadora

En virtud de que la mantisa siempre empieza con 1, no hay necesidad de almacenar éste 1, de

manera que los 23 bits reservados para la mantisa son para guardar desde el segundo hasta el

veinticuatroavo caracter del número binario en punto flotante.

e e e e e e e m m m m m m m m m m m m m m m m m m m m m m m

Los 7 bits destinados al exponente se usan para registrar números enteros binarios en el rango

de 0000000 a 1111111. Su signo se controla por separado (distinguido en rojo).

Conforme a esto, el mayor exponente positivo posible sería el 127 y el menor exponente

negativo posible sería el -127; pero usando el complemento a dos, su rango se incrementa en

1, para que sea -128.

Los exponentes positivos se registran así:

000000012 = 110 ... 011111112 = 12710

Para los números negativos, la polaridad se invierte: los ceros se cambian por unos y los unos

por ceros y se le añade un 1 al resultado, de manera que su registro se hace así:

111111112 = -110 ... 100000012 = -12710

Page 12: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.2 Los números reales en computadora

Para analizar el rango de valores de la mantisa se consideran 24 bits: el 1 que no se guarda y los 23 bits reservados que si quedan almacenados. Entonces, se pueden registrar números fraccionarios binarios en el rango de 0.100000000000000000000000 a 0.111111111111111111111111 – El valor fraccionario más pequeño equivale a 0.5 en decimal es: 2 -1 = 0.5– El valor fraccionario más grande equivale a 0.999999940395 en decimal:

24 2- j = 1 - 2-24 = 0.999999940395355224609375j=1

Ahora bien, considerando simultáneamente los rangos del exponente y de la mantisa, podemos determinar el rango correspondiente a los números reales:– El número real positivo más pequeño que puede representarse es:

0.5 x 2-128 1.47 x 10-39

– El número real positivo más grande que puede representarse es:

0.999999940395355224609375 x 2127 1.70 x 1038

De manera que el rango total para los números reales positivos o negativos, en este tipo de computadora es de 1.47 x 10-39 a 1.70 x 1038.

Page 13: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.2 Los números reales en computadora

Ejemplo: Representar en sistema binario, en una palabra de 32 bits, el número 31.2510

31.2510 = 0.312510 x 102 = 0.312510 x 10010

0.3125 100 00.6250 0 50 00.2500 1 25 10.5000 0 12 00.0000 1 6 0

3 1 1 1

0

31.2510 = 0.01012 x 11001002 = 11111.012 = 0.11111012 x 2101

Recordando que el primer 1 de la mantisa no se almacena, la representación queda:

0 0 0 0 0 0 1 0 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

(+) (+)

Page 14: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.2.1 Los números reales en computadora

Ejemplo: Identificar el número real decimal que está representado en la siguiente palabra de 32 bits:

0 0 0 0 0 0 1 0 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 1 1 1 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Recordando que el primer uno no está representado, el número en binario es:

0.100001112 x 2101 = 10000.1112

24 + 2-1 + 2-2 + 2-3 = 16 + 0.5 + 0.25 + 0.125 = 16.87510

Ejemplo: Identificar el número real decimal que está representado en la siguiente palabra de 32 bits:

(+) (+)

(+) (-)

Dado que el exponente es negativo, le aplicamos el inverso del complemento a dos: primero restándole 1 y luego cambiando la polaridad:

11101112 - 12 = 11101102 ~ 00010012 , con lo que el exponente es: -10012

Recordando que el primer 1 no está representado, la mantisa es: 0.12

El número en binario es: 0.12 x 2-1001 = 0.00000000012

y en decimal: 2-10 = 0.000976562510

Page 15: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.2 Los números reales en computadora

Ejercicio: Suponga que una computadora maneja palabras de 16 bits;

¿cuál sería el resultado de sumar mil veces el número fraccionario

1/100? ¿cuál sería el error absoluto? Y ¿cuál el relativo?. Considere

que la computadora recibe las cifras en sistema decimal, las convierte

a binario, hace las operaciones en binario y el resultado lo traduce a

decimal. Considere los dos bits para los signos, cinco bits para el

exponente y nueve espacios para la mantisa.

Page 16: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.2 Los números reales en computadora

0.01

0.02 0

0.04 0

0.08 0

0.16 0

0.32 0

0.64 0

0.28 1

0.56 0

0.12 1

0.24 0

0.48 0

0.96 0

0.92 1

0.84 1

0.68 1

0.36 1

1/100 = 0.0110 = 0.00000010100011112 = 0.10100011112 x 2-110

1000 0 500 0 250 0 125 1 62 0 31 1 15 1 7 1 3 1 1 1 0

100010 = 11111010002

1000 x 1/100 = 11111010002 x 0.10100011112 x 2-110

Page 17: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.2 Los números reales en computadora

El resultado exacto del producto anterior es, en binario:

1001111100.10111000 x 2-110

Cifra que redondeada a 10 bits, en formato de punto flotante, queda expresada:

1001.111101 = 0.1001111101 x 2100

Este resultado en binario, traducido a decimal da:

=(0.50+0.0625+0.03125+0.015625+0.0078125+0.00390625+0.0009765625) x 2100

= 0.6220703125 x 16 = 9.95312510

El verdadero valor de la operación es: 1/100 x 1000 = 10

El error absoluto cometido es: E = 10 – 9.953125 = 0.046875

El error relativo es: e = 0.046875/10 = 0.0046875 ; e = 0.47%

Page 18: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.2 Los números reales en computadora

No obstante el rango tan amplio de manejo, los números reales no corresponden a un continuo en la computadora, sino que hay un conjunto finito de valores discretizados, que pueden ser representados de manera perfecta, mientras que el resto no pueden ser expresados con exactitud y precisión y sólo es posible representarlos en forma aproximada.Por ejemplo, si el número real más pequeño que puede representarse en una computadora como la descrita anteriormente es:

0.5 x 2-128 1.47 x 10-39, significa que no se pueden representar números reales en el intervalo que está entre 0 y 1.47 x 10-39.Si el número real más grande que puede representarse es:

1.70141173319 x 1038,y el número positivo inmediato menor a éste, que se puede representar es:

23

( 2-j ) x 2127 = (1 - 2-23) x 2127 1.70141163178 x 1038 ;j=1

Entre estos dos últimos valores, tampoco se puede representar ningún número real con notación de punto flotante en este tipo de computadora; el tamaño de este intervalo es 1.0141 x 1031, que es 6.9 x 1069 veces más grande que el correspondiente a valores más pequeños: 1.47 x 10-39. Esto significa que la distribución de números reales que pueden ser representados en una computadora no es uniforme, sino que hay mucho mayor densidad en los valores más pequeños que en los más grandes.

Page 19: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

1.4.2 Los números reales en computadora

Pareciera que la imposibilidad de las computadoras para representar cualquier número real, con exactitud y precisión, se torna en un asunto grave. No es así, ya que los "huecos" son extraordinariamente pequeños, aún en el caso más desfavorable, correspondiente a los números más grandes. Si comparamos éstos: 1.70141163178 x 1038 y 1.70141173319 x 1038, vemos que son realmente muy cercanos: la primera diferencia entre ellos se presenta hasta el octavo dígito; esto significa, que los primeros siete dígitos significativos nos ofrecen una confiabilidad total, más que sobrada para fines de ingeniería.

Para casos muy eventuales se usa el recurso de doble precisión que ofrecen las propias computadoras y que consiste en utilizar un doble tamaño de palabra (8 bytes o 64 bits) para representar y almacenar números reales en formato de punto flotante. La desventaja de utilizar tal recurso es el mayor consumo de memoria y el mayor tiempo de ejecución de los programas, los cuales, al menos, se duplican.

Page 20: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

Aritmética de la computadora

Cuando se usa una calculadora o computadora para hacer

cálculos numéricos, debe considerarse un error inevitable que

es el llamado error de redondeo. Este error se origina porque

la aritmética realizada en una máquina involucra números con

solo un número finito de dígitos, con el resultado de que

muchos cálculos se realizan con representaciones

aproximadas de los números verdaderos. En una

computadora típica, solo un subconjunto relativamente

pequeño del sistema de los números reales se usa para

representar a todos los números reales. Este subconjunto

contiene solo números racionales, positivos y negativos, y

almacenan una parte fraccionaria, llamada la mantisa, junto

con una parte exponencial , llamada la característica.

Page 21: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

Aritmética de la computadora

Por ejemplo, un número de punto flotante en precisión simple usado en la IBM 370 Ó 3000 consiste en:

1 dígito binario (bit) indicador del signo,

un exponente de 7 bits en base 16, y

una mantisa de 24 bits.

Como 24 bits corresponde a entre 6 y 7 dígitos decimales, podemos suponer que este número tiene, por lo menos, seis cifras decimales de precisión para el sistema de numeración de punto flotante. El exponente de siete bits da un rango de 0 a 127, pero debido a los exponentes usados el rango es, realmente, entre – 64 y +63, o sea que, se resta automáticamente 64 del exponente listado.

Page 22: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

Considere por ejemplo el número de máquina:

0 1000010 101100110000010000000000

El bit más a la izquierda es cero, lo cual indica que el número es positivo. Los siguientes siete bits, 1000010, son equivalentes al número decimal:

1x26 + 0x25 + 0x24 + 0x23 + 0x22 + 1x21 + 0x20 = 66

y se usan para describir la característica.

Los veinticuatro bits finales indican que la mantisa es:

1.(1/2)1 + 1.(1/2)3 + 1.(1/2)4 + 1.(1/2)7 + 1.(1/2)8 +1.(1/2)14

en consecuencia, este número de máquina representa precisamente al número decimal:

+ (1/2)1 + (1/2)3 + (1/2)4 + (1/2)7 + (1/2)8 + (1/2)14 1666-64 = 179.015625.

Aritmética de la computadora

Page 23: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

Sin embargo, el siguiente número más pequeño de la computadora es:

0 1000010 101100110000001111111111 = 179.0156097412109375Y el siguiente número más grande es:

0 1000010 101100110000010000000001 = 179.0156402587890625

Esto significa que nuestro número de máquina original debe representar no

solamente a 179.015625, sino a un número infinito de números reales que están

entre este número y sus números de máquina más cercanos. para ser más

precisos, el número de máquina original se usa para representar cualquier

número real en el intervalo:

179.01561737060546875 – 179.01563262939453125

Aritmética de la computadora

Page 24: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

Aritmética de la computadora

Para asegurar la unicidad de la representación y obtener toda la precisión disponible

se requiere se requiere que uno de los 4 bits más a la izquierda de la mantisa de un

número de máquina sea uno. Consecuentemente el sistema usa 15 x 228 números

de la forma:

±0.d1 d2 d3 … d24 x 16 e1e2e3…e7

Para representar a todos los números reales. Este requisito implica también que numero de máquina más pequeño es:

0 0000000 000100000000000000000000 = 16-65 ≈ 10-78

Mientras que el más grande es:

0 1111111 111111111111111111111111 = 1663 ≈ 1076

Los números que tienen una magnitud menor que 16-65 , que aparecen en los

cálculos resulta en lo que se llama underflow y generalmente se les da el valor

cero, mientras que los números mayores que 1663 resulta en lo que se llama

overflow y causa que los cálculos se detengan.

Page 25: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

Épsilon de una computadora

Se define como épsilon de una máquina al valor absoluto de la diferencia entre 1 y el menor número mayor que 1, pero distinguible de 1, que puede ser representado en la computadora. Para la máquina que hemos analizado anteriormente, el número más pequeño mayor que uno es:

0.100000000000000000000001 x 21 = (2-1 + 2-24) x 21 = = 1.0000001192110

por lo que el épsilon de esta máquina es:

1.00000011921 - 1 = 0.00000011921 1.19 x 10-7

Evidentemente, mientras menor sea el épsilon de una máquina, mayor es el conjunto de números que puede representar en formato de punto flotante.

Page 26: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

Épsilon de una computadora

Ejemplo: Considere una computadora que utiliza palabras de memoria de

16 bits para almacenar números reales en formato de punto flotante,

guarda hasta 8 cifras de la mantisa, excluido el primer 1, y aplica el

complemento a dos a los exponentes negativos. Si los 16 bits están

distribuidos como sigue:

1 bit para el signo de la mantisa,

1 bit para el signo del exponente,

6 bits para el exponente entero, expresado en binario

8 bits para la mantisa, expresada en binario

a) determinar el rango de valores que podría representar y almacenar

esta computadora hipotética.

b) calcular el épsilon correspondiente a esta máquina.

Page 27: MÉTODOS NUMÉRICOS Representación de números y Aritmética de la computadora M. en C. José Andrés Vázquez Flores.

Épsilon de una computadoraa) Los 6 bits destinados al exponente se usan para registrar números enteros binarios en el rango de 000000 a 111111. Su signo se controla por separado. El mayor exponente positivo posible sería: 26 - 1 = 63 y el menor exponente negativo posible sería el -64, por la aplicación del complemento a dos.

Los 8 bits reservados para la mantisa se usan para registrar números fraccionarios en el rango de 0.100000000 a 0.111111111. El valor fraccionario más pequeño equivale a 0.5 en decimal y el valor fraccionario más grande equivale a 0.998134375 en decimal:

9

2-j = 1 - 2-9 = 0.998046875j=1

Entonces, el número real más pequeño que puede representarse es:

0.5 x 2-64 2.71 x 10-20

y el número real más grande, que puede representarse es:

0.998046875 x 263 9.21 x 1018

b) El número más pequeño mayor que uno, que podría almacenarse es:

0.100000001 x 21 = (2-1 + 2-9) x 21 = 1.0039312510

por lo que el épsilon de esta máquina sería:

1.00393125 - 1 = 0.00393125 = 3.93 x 10-3