Punto Flotante 1.pdf - Erika Vilches
Punto Flotante 1.pdf - Erika Vilches
Punto Flotante 1.pdf - Erika Vilches
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Números de punto<br />
flotante<br />
M. en C. <strong>Erika</strong> <strong>Vilches</strong><br />
Parte 1
Sistema de números de<br />
•<br />
•<br />
•<br />
•<br />
punto flotante<br />
Basado en la notación científica<br />
Capaz de representar números muy grandes<br />
y muy pequeños sin incrementar el número<br />
de bits<br />
Capaz de representar números con<br />
componentes enteros y fraccionarios.<br />
Número de punto flotante = número real
•<br />
Número de punto<br />
flotante<br />
Consta de dos partes y un signo<br />
1. Mantisa: La magnitud del número<br />
2. Exponente: El número de lugares que se va<br />
a mover el punto<br />
3. Signo: Positivo o negativo
•<br />
•<br />
•<br />
Ejemplo decimal<br />
Número decimal 241,506,800<br />
Mantisa = .2415068<br />
Exponente = 9<br />
0.2415068 x 10 ^ 9
•<br />
•<br />
Para los números de punto flotante binarios<br />
el formato se define por el standard ANSI/<br />
IEEE 754-1985 de tres formas:<br />
•<br />
•<br />
•<br />
Precisión sencilla - 32 bits<br />
Precisión doble - 64 bits<br />
Precisión extendida - 80 bits<br />
Se trabaja con números normalizados.<br />
Decimos que un número binario está<br />
normalizado si el dígito a la izquierda del<br />
punto es igual a 1
Precisión Sencilla<br />
• En la mantisa se entiende que el punto binario está a la izquierda<br />
de los 23 bits. De hecho hay 24 bits porque en cualquier<br />
número binario el bit mas significativo siempre es 1. Por lo tanto<br />
se entiende que esta ahí aunque no ocupe una posición.<br />
• Los 8 bits de exponente representan un exponente en exceso,<br />
que se obtiene añadiendo 127 al exponente real. El propósito es<br />
permitir números muy grandes o muy pequeños sin requerir un<br />
bit de signo aparte para el exponente. Esto permite un rango de<br />
exponentes de -126 a +128
Ejemplo<br />
Representar 1011010010001<br />
1011010010001 = 1.011010010001 x 2^12<br />
Asumiendo que es un número positivo:<br />
Bit de signo = 0<br />
Exponente: 12 + 127 = 139 = 10001011<br />
Mantisa: Parte fraccionaria .011010010001 a<br />
23 bits (el 1 a la izq. del punto se omite<br />
porque siempre está presente)
<strong>Punto</strong> flotante a decimal<br />
Utilizar la fórmula →<br />
para obtener el valor en binario verdadero<br />
Ejemplo:<br />
El bit de signo es 1. El exponente en exceso es<br />
10010001 = 145. Aplicando la fórmula obtenemos:<br />
→ - 407,680
•<br />
Un número de punto flotante de 32 bits<br />
puede reemplazar a un entero binario de<br />
129 bits<br />
• Excepciones:<br />
1. El número 0.0 se representa con todos 0’s<br />
2. El infinito se representa con todos 1’s en<br />
el exponente y todos 0’s en la mantisa.
Ejemplo<br />
Convertir el número decimal 3.248 x 10 ^ 4 a un<br />
número binario de punto flotante precisión sencilla.<br />
Convertir de decimal a binario<br />
3.248 x 10 ^ 4 = 32480 = 111111011100000 =<br />
1.11111011100000 x 2 ^ 14<br />
Mantisa (23 bits) = 11111011100000000000000<br />
Exponente en exceso = 14 + 127 = 141 =<br />
10001101<br />
Resultado →
•<br />
•<br />
•<br />
Ejercicio<br />
Determine el valor binario y decimal del<br />
siguiente número binario en punto flotante:<br />
0 10011000 10000100010100110000000<br />
Mencione las partes de un número binario<br />
en punto flotante<br />
¿Cuántos bits tiene en total un número<br />
binario en punto flotante de precisión<br />
sencilla, doble y extendida?