Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Basado en el Capitulo 3 del texto: “Computer Organization and Design”, David Patterson y John Hennessy
Números de Punto Flotante
Por qué son necesarios los números de punto flotante?
Como los registros y la memoria de los computadores es limitada, no puedes
almacenar números con precisión infinita. No importa si usas fracciones binarias
o decimales: en algún momento tienes que cortar.
Pero ¿cuánta precisión se necesita? ¿Y dónde se necesita? ¿Cuántos dígitos
enteros y cuántos fraccionarios?
Para satisfacer al físico, debe ser posible hacer cálculos que involucren
números de órdenes muy dispares.
+0.002 × 10–4
sin normalizar
+987.02 × 109
En Binario, la notación científica Normalizada es:
±1.xxxxxxx2 × 2yyyy
En C y en MIPS, existen variables tipo float (32
bits) y double (64 bits)
Semestre Otoño 2014 ICEE1012 Sistemas Digitales II
Estándares en Punto Flotante
Definido por Estandar IEEE 754 de1985
Desarrollado para regular y normalizar las
divergencias de las representaciones de los
diferentes fabricantes de CPUs y Computadores
Al normalizar, se pueden escribir programas que
sean portables entre diferentes plataformas.
El Estandar IEEE 754 ya está universalmente
adoptado
Las 2 representaciones más utilizadas son:
Precisión simple (32-bits)
Doble precisión (64-bits)
(También existe 128 y 256 bits, pero se usa muy poco)
Semestre Otoño 2014 ICEE1012 Sistemas Digitales II
Aclaraciones y Conceptos de Punto Flotante
Punto Flotante = Coma Flotante. Se llama asi, porque en
este formato, al igual que en la Notación Científica, la
coma se desplaza para dejar solamente un digito entero,
luego los decimales y luego la base exponente
Bit de Signo = 0
15210 = 100110002
0,53410 = 0,10001000101101
=> 152,53410 = 10011000,100010001011012
Normalizando = 1,001100010001000101101 x 27
Exponente Real = 7 => Campo Exponente PF = 7 + 127 = 134
13410 = 1000 01102
Mantisa = 1,0011000100010001011012 = 1 + Fracción
Fracción = 0,0011000100010001011012 = 0,191671848297119110
Por lo tanto, la Representación de 152,53410 en PF 32 bits es :
0 10000110 001 1000 1000 1000 1011 0100 = 0x431888B4 Hexa
Comprobación = + 1.1916718482971191 x 27 = 152,534 OK!