Академический Документы
Профессиональный Документы
Культура Документы
Agenda
Aritmetica del Computador
Introduccin
46
Sistema de Numeracin
Aritmetica del Computador
Representacin de enteros Base Binaria (2) 2 bits [0,1] 1011 en base 2 = 1 23 + 0 22 + 1 21 + 1 20 = 8 + 0 + 2 + 1 = 11 en base decimal Sea N un nmero entero en base tal que:
n
ak k
46
Sistema de Numeracin
Aritmetica del Computador
Representacin de nmeros fraccionarios 7 x = 0.7 = = 7 101 10 x = 0.75 = 0.70 + 0.05 = 7 101 + 5 102 Sea x un nmero fraccionario en base tal que: x = (0.b1 b2 b3 . . . bn ) = b1 1 +b2 2 +. . .+bn n Base decimal (10) Potencia negativa de 10 para parte fraccionaria. 54.32 = 5 101 + 4 100 + 3 101 + 2 102
46
Mayor interes en decimal (10) y binario (2) Uso en computadores Otros sistemas octal (8), {0, 1, 2, ..., 7} hexadecimal (16), {0, 1, 2, ..., 9, A, B, C , D, E , F }
46
46
46
46
Ejemplo
Tomando (, t, L, U) = (10, 2, 1, 2), tenemos 90 posibles mantisas, y 4 exponentes, i.e., 1, 0, 1, 2. Como hay dos posibles signos, tenemos un total de 2(90)(4) + 1 = 721 nmeros en el sistema. Ntese que el sistema de punto otante es nito. El Sistema de los nmeros reales tiene a R como un conjunto inconmensurable porque no es posible representarlos a todos. El Sistema de Punto Flotante es un subconjunto F R de nmeros reales.
10
46
Denicin (Cardinalidad)
Cardinalidad de F (, t, L, U): 2( 1) t1 (U L + 1) + 1
11
Ejemplo
Cantos nmeros tendr el sistema F(2,3,-1,2)?
46
Ejercicio
Dado el sistema de punto otante F (2, 2, 1, 2) 1. 0.5 F ? 2. 3/4 F ? 3. 0.5 + 3/4 F ?
Introduccin
12
46
Introduccin
Puesto que la cantidad de nmeros a almacenar es una cantidad nita, la mayora de nmeros reales tendrn que ser aproximados a aquellos que tienen una representacin exacta en el sistema de punto otante empleado. Esto origina las perdidas de precisin por redondeo.
13
46
Errores en el Computador
Los cientcos que desarrollaron el cohete Ariane 5 vuelo 501 reutilizaron parte del cdigo de su predecesor, el Ariane 4, pero los motores del cohete ms nuevo incorporaron tambin, sin que nadie se diera cuenta, un bug en una rutina aritmtica en la computadora de vuelo. Esto provoc, el 4 de junio de 1996, que la computadora fallara segundos despus del despegue del cohete; 0,5 segundos ms tarde fall el ordenador principal de la misin. El Ariane 5 se desintegr 40 segundos despus del lanzamiento.
Aritmetica del Computador
Introduccin
14
46
Introduccin
Las operaciones de suma, resta, multiplicacin y divisin en el sistema de punto otante (F), se denota por , , , respectivamente. Estas operaciones estn denidas por: x y = ((x ) + (y )) x y = ((x ) (y )) x y = ((x ) (y )) x y = ((x ) (y )), (y ) = 0, y = 0 Estas operaciones no son cerradas sobre F, pues en algunos casos se genera underow u overow;
15
46
Ejemplo
Dado el sistema hipottico F (10, 3, 3, 3) y los nmeros: X = 2/30 = 0.066666 . . . Y = 5/9 = 0.55555 . . . hallar X Y Solucin: Valor Exacto de X Y = 10/270 = 0.037037037 . . . (X ) = 0.667 101 (Y ) = 0.556 100 (X ) (Y ) = 0.667 101 0.556 100 = 0.370852 101 x y = ((X ) (Y )) = 0.371 101 Error=104
Introduccin
16
46
Desbordamiento
Aritmetica del Computador
Introduccin
Se puede producir cuando se operan dos datos y el resultado excede la capacidad de almacenamiento seleccionada.
17
Denicin (Overow)
Se produce cuando el nmero es muy grande y se excede el lmite mximo de almacenamiento.
Denicin (Underow)
Se produce cuando el nmero es muy prqueo y se execede el lmite mnimo de almacenamiento.
46
El psilon ( ) de la Mquina
Aritmetica del Computador
Introduccin
18
Denicin
El psilon de la mquina es la distancia entre 1 y el siguiente nmero mquina, se denota por eps.
46
Ejercicio
Sea F el sistema de punto otante caracterizado por = 2,(base), n = 4(precisin), m = 1, M = 2, cada nmero en el conjunto F est representado por (.d1 d2 . . . , dn ) e donde m e M 1. Cul es el nmero ms pequeo en valor absoluto del sistema F? 2. Demuestre que 3/4 y 5/6 pertenecen al sistema F, pero la suma "verdadera" de estos no pertenece a F. 3. Suponga que el tipo de error introducido en la representacin de un nmero real en el sistema F es por redondeo. Como queda representado el numero 3/4 + 5/16 en F. esto es: 5 3 5 3 = ( + ) =??? 4 16 4 16 4. Encuentre el epsilon de la maquina.
Aritmetica del Computador
Introduccin
19
46
Ejercicio
Aritmetica del Computador
Recordar que (expresion) signica que todos los operandos son convertidos a nmeros en punto otante y todas las operaciones son desarolladas con la aritmtica del punto otante. Asuma = 10, t = 3, L = 3, U = 4, y la aritmtica es truncada. Obtener los valores de: 1. (0.00009) 2. (3.146) 3. (9996) 4. ((100.0 + 0.61) + 0.61) y (100.0 + (0.61 + 0.61)) 5. (2.34 (5.67 + 8.90)) y ((2.34 5.67) + (2.34 8.90))
Introduccin
20
46
Es el conjunto de nmeros de punto otante normalizados, en el sistema de nmeros con base con t dgitos para la fraccin (equivalentemente t + 1 dgitos en la mantisa) F (, t, L, U) = {a = a0 .a1 a2 . . . at e } a < a0 < L e U 0 ai < i = 1, 2, . . . , t
Introduccin
21
0. 00 . . . 0
t veces
46
Introduccin
22
46
Notacin Normalizada
Aritmetica del Computador
Introduccin
23
46
Ejemplo
Aritmetica del Computador
Introduccin
24
46
Almacenamiento de oats
Aritmetica del Computador
Ejemplo
Introduccin
25
46
Almacenamiento de oats
Aritmetica del Computador
Introduccin
26
Mayor nmero positivo 0 110 1111 = +23 1.1111 = 23 (2 24 ) = 1111.1 = 15.5 decimal Menor nmero positivo 0 001 0000 = +22 1.0000 = 22 20 = 0.01 0.25 decimal
46
Almacenamiento de oats
Aritmetica del Computador
Introduccin
27
Combinaciones especiales de los exponentes: 000 Representacin No Normalizada Mansitisa pasa a ser: 0. Exponente(000)=-2 Menor nmero positivo pasa a ser 0 000 0001 = 22 0.0001 = 22 24 = 26 = 0.015625
46
01110000 = +Innito 11110000 = Innito 11111000 =Indeterminacin Otras combinaciones 11111 =Not A Number (NaN)
46
Introduccin
29
46
46
Estndar IEEE-754
Aritmetica del Computador
Introduccin
31
Este estndar se desarroll para facilitar la portabilidad de los programas de un procesadora otro y para alentar el desarrollo de programas numricos sosticados. Este estndar ha sido ampliamente adoptado y se utiliza prcticamente en todos los procesadores y coprocesadores aritmticos actuales.
46
Estndar IEEE-754
Aritmetica del Computador
Introduccin
32
El estndar del IEEE dene el formato para precisin simple de 32 bits y para precisin doble de 64 bits. Hasta la dcada de los 90 cada computador utilizaba su propio formato en punto otante, en 1985 se introduce el estndar IEEE-754 con la nalidad de uniformizarlos.
46
Estndar IEEE-754
Aritmetica del Computador
46
Estndar IEEE-754
Aritmetica del Computador
Introduccin
34
46
Ejemplos:
Aritmetica del Computador
Represente en formato IEEE 754 simple precisin el nmero 3.25 Solucin: Convertir a binario: 3.25 = 11.01 Normalizar el nmero (mover el punto decimal hasta que haya un solo 1 a la izquierda) 11.01 = 1.101 (21 ) mantisa: 101 exponente: Bias = 2(81) 1 = 127 exp = E + 127 exp = 1 + 127 = 128 = 10000000 El nmero es positivo: bit de signo 0 Resultado: 01000000010100000000000000000000
Introduccin
35
46
Ejemplos:
Aritmetica del Computador
Represente en formato IEEE 754 simple precisin el nmero 347.625 Solucin: Convertir a binario: 347.625 = 101011011.101 Normalizar el nmero (mover el punto decimal hasta que haya un solo 1 a la izquierda) 101011011.101 = 1.01011011101 (28 ) mantisa: 01011011101 exponente: Bias = 2(81) 1 = 127 exp = E + 127 exp = 8 + 127 = 135 = 10000111 El nmero es positivo: bit de signo 0 Resultado: 01000011101011011101000000000000
Introduccin
36
46
Ejemplos:
Aritmetica del Computador
Ejemplo
37
Cul es el valor de: 1 01111100 11000000000000000000000? Solucin: El bit de signo es 1:nmero negativo El exponente exp contiene 01111100 = 124 La mantisa es 0.11000 . . . = 0.75 El valor es: (1)(1+0.75)(2(124127) ) = 1.75(2(3) ) = 0.21875
46
Como cero no es directamente representable en estndar IEEE 754, entonces dependiendo del exponente y la mantisa del nmero codicado, algunas representaciones tienen signicados particulares, as como se resume en la siguiente tabla: exp M Nmero s (1 + M) 2E 127 0 < exp < Emax Cualquiera (1) 0 0 Cero, (1)s 0 0 =0 (1)s (0 + M) 2126 Emax 0 Innito, (1)s Emax =0 Not a Number, NaN
Introduccin
38
46
1.00000000000000000000000 21127 = (1.0) 2126 El mayor nmero positivo normalizado: exp = 254, M = 11 . . . 1 1.11111111111111111111111 2254127 Cualquier nmero mayor que este se dice overow(exp = 255, M > 0), el cual indica que el resultado es Not a Number, NaN
46
El mayor nmero positivo subnormalizado: exp = 0, M = 11 . . . 1 0.11111111111111111111111 2126 El menor nmero positivo subnormalizado: exp = 0, M = 00000000000000000000001 0.00000000000000000000001 2126 Cualquier nmero menor que este se dice underow (exp = 255, M > 0).
Introduccin
40
46
Estndar IEEE-754
Precisin Doble: 64 bits
41
46
Ejercicio: Vamos a considerar un hipottico computador que en nmeros de punto otantes estn representados en una palabra de 16-bit. Un ejemplo se muestra en la Figura 1:
Muestre la representacin en punto otante y los bits del: 1. El nmero eps (epsiln de la maquina) 2. Mayor valor positivo normalizado 3. Menor valor positivo normalizado 4. El nmero 1 y -10.375 5. El innito y NaN
Solucin
Aritmetica del Computador
Introduccin
43
46
Solucin
Aritmetica del Computador
Introduccin
44
46
Ejercicio
Aritmetica del Computador
Sea el sistema de punto otante hipottico adecuado a la norma IEEE-754 que usar 16 bits con la siguiente estructura:
Introduccin
45
Muestre como se almacena en binario: 1. El epsilon de la maquina 2. El mayor nmero positivo no normalizado 3. El menor nmero positivo no normalizado 4. El nmero -43.000001 5. El -0 6. El -Inf
46 Universidad Nacional Mayor de San Marcos Facultad de Ingenieria Industrial
Bibliografa
Aritmetica del Computador
Introduccin
46
Richard L. Burden and J. Douglas Faires Anlisis numrico, 7a ed. Steven C. Chapra and Raymond P. Canale Mtodos numricos para ingenieros, 5a ed.
46