Arquitectura de las Computadoras. Tercera plancha

Anuncio
Arquitectura de las Computadoras.
Tercera plancha.
Práctica de punto flotante.
1) Haga dos macros para extraer la fracción y el exponente de un float sin
usar variables auxiliares.
Sugerencia: use ieee754.h.
2) Convierta a double y float norma IEEE 754
Sı́mbolo
Nombre
N
Número de Avogadro
c
Velocidad de la luz en el vacı́o
e
Carga del electrón
me
Masa del electrón
h
Constante de Planck
h̄
Constante de Planck/2π
k
Constante de Boltzmann
e2
α(= h̄c )
Constante de estructura fina
eh̄
β0 (= 2m
)
Magnetón de Bohr
ec
las siguientes constantes1 :
valor
6, 02252 × 1023
2, 9979 × 108 m/s
1, 6022 × 10−19 C
9, 1094 × 10−31 kg
6, 6261 × 10−34 J.s
1, 0546 × 10−34 J.s
1, 3807 × 10−23 J/K
7, 2974 × 10−3
9, 2740 × 10−24 J/T
3) Método de W. Kahan. Considere el siguiente procedimiento para sumar,
usando punto flotante, los números x1 , . . . , xn :
s0 = c0 = 0
yk = xk ck−1 , sk = sk−1 ⊕ yk , ck = (sk sk−1 ) yk , para 1 ≤ k ≤ n.
Escriba una función en C que lo implemente.
4) Implemente el cálculo de la función double cos(double), para valores
comprendidos entre −π/2 y π/2, usando polinomios de McLaurin. Haga dos
versiones, una sin usar el método de Kahan y otra usándolo. Compare los
resultados.
5) Sabiendo que un número en punto flotante puede representarse usando base
1 Tomadas
de Eugen Merzbacher, Quantum Mechanics (3rd ed.), Wiley, 1.998.
1
b y exceso q como
(signo, f, e) = signo × f × be−q |f | < 1,
implemente la suma y producto de números base 2 y exceso 30000. Use 18
bits para f y 16 para e. ¿Cuáles números son el mayor y el menor en esta
representación?
Sugerencia: use campos de bits.
6) Idem que el ejercicio anterior, pero cuidando de normalizar los resultados:
f debe cumplir 1/b ≤ |f | < 1, y si es cero, e debe tener el menor valor posible.
2
Descargar