2 - Punto Flotante - Rodrigo Russo

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 2

Métodos Numéricos

Apuntes y Ejemplos Unidad No. 1

Conversión de decimal a coma flotante

(Autor: Rodrigo Russo)

Ejercicio: Convertir 5,0205 a coma flotante IEEE con 32 bits (1 bit de signo, 11 bits de mantisa,
4 bits de exponente con exceso 24−1 − 1 = 7).

1. Convierto la parte entera (5) de decimal a binario. El procedimiento consiste en realizar la


división por 2 utilizando el número y cada uno de los cocientes y tomar el resto de abajo hacia
arriba:

5 2
1 2 2
0 1 2
1 0

510 = 1012 .

2. Convierto la parte decimal a binario. Para esto, se multiplica sucesivamente por dos hasta caer
en 1 o truncando la operación cuando sea conveniente y se toma, desde arriba hacia abajo, la
parte entera de la multiplicación. Al llegar a un valor mayor que uno, se descarta la parte entera:

0, 0205 × 2 = 0, 0410
0, 0410 × 2 = 0, 0820
0, 0820 × 2 = 0, 1640
0, 1640 × 2 = 0, 3280
0, 3280 × 2 = 0, 6360
0, 6360 × 2 = 1, 2720
0, 2720 × 2 = 0, 5440
0, 5440 × 2 = 1, 0880
0, 0880 × 2 = 0, 1760
0, 1760 × 2 = 0, 3520
0, 3520 × 2 = 0, 7040
0, 7040 × 2 = 1, 4080
0, 4080 × 2 = 0, 8160
0, 8160 × 2 = 1, 6320
0, 6320 × 2 = 1, 2640
0, 2640 × 2 = 0, 5280
0, 5280 × 2 = 1, 0560
0, 0560 × 2 = 0, 1120

0, 020510 = 0, 000001010001011010 . . .2

3. Junto parte entera y parte decimal:

5, 020510 ≈ 101, 000001010002

Cátedra de Métodos Numéricos - Dpto. de Matemática - Facultad de Ingenierı́a - U.N.M.d.P. 1


Métodos Numéricos
Apuntes y Ejemplos Unidad No. 1

4. Utilizando la expresión de la convención de IEEE x = (−1)s · 1, m · 2ϵ−z donde s corresponde


al signo (0 positivo, 1 negativo), m la mantisa, ϵ el exponente y z el exceso; se lleva el número
obtenido a esa fórmula.

101, 0000010100 · 2−2 = 1, 010000010100


101, 0000010100 = 1, 010000010100 · 22

2=ϵ−7⇒ϵ=2+7=9

101, 0000010100 = (−1)0 1, 010000010100 · 29−7

s=0
m = 010000010100
ϵ = 910 = 10012

0 01000001010
Número convertido: |{z} | {z } 1001
| {z }
s m ϵ
Procedimiento inverso: binario a decimal.

1. x = (−1)s · 1, m · 2ϵ−7 . Por el número a convertir se conoce que s = 0 y ϵ = 10012 = 910 .

x = (−1)0 · 1, 01000001010 · 29−7


= 1, 01000001010 · 22
= 101, 0000010102

2. Convertir a decimal:

101, 0000010102 = 22 + 20 + 2−6 + 2−8


1 1
=4+1+ +
64 256
= 5, 0195312510

3. Comparo el número original (5,0205) con el guardado en el formato de coma flotante (5,01953125):

ϵA = |5,0205 − 5,01953125| = 0, 00096875

El número original y el guardado resultan ser levemente distintos, ¿por qué?

Cátedra de Métodos Numéricos - Dpto. de Matemática - Facultad de Ingenierı́a - U.N.M.d.P. 2

También podría gustarte