Está en la página 1de 6

TCNICAS DIGITALES 1

REPRESENTACIN DE
NMEROS EN PUNTO FLOTANTE

AUTOR:
ING. GUILLERMO A. FERNNDEZ

- DEPARTAMENTO DE INGENIERA ELECTRNICA -

UNIVERSIDAD NACIONAL DE MISIONES FACULTAD DE INGENIERA


OBER MISIONES ARGENTINA
INTRODUCCIN
Comercialmente existen, dispositivos digitales (como ser procesadores digitales de seal, etc.) que
trabajan con operaciones aritmticas utilizando nmeros binarios representados en coma o punto
flotante. En esta representacin, el punto o coma decimal no se halla en una posicin fija dentro de
una secuencia de N bits, sino que se indica como una potencia de la base. El beneficio que esto trae
es un aumento en el rango de nmeros que podrn expresarse mediante una palabra con una
cantidad determinada de bits. La representacin en punto flotante est basada en la denominada
notacin cientfica.

Ejemplo 1: Representacin numrica a travs de notacin cientfica.

4520000000000 = 4,52. 1012 = 452. 10 10


0,00000000000452 = 4,52. 10 12

En la representacin a travs de notacin cientfica existen cuatro campos o componentes: Signo


(S), Mantisa (M), Base (b) y Exponente (E). Por lo tanto, cualquier nmero puede representarse
como:
N = S M (b)E

Donde: N = Nmero representado, S = Signo del nmero, M = Mantisa (valor absoluto); b = Base
del sistema de numeracin utilizado (10 = Sist. Decimal; 2 = Sist. Binario) y E = Exponente.

Los dispositivos digitales almacenan un nmero en formato de punto flotante en dos partes, una
corresponde al signo con la mantisa y la otra al exponente. La base no necesita representarse ya que
est implcita (al trabajar con el sistema binario, se supone que la base es 2). La mantisa y el
exponente son nmeros sin signo.
Como se ha visto en el ejemplo anterior, la coma o punto decimal puede ocupar cualquier lugar,
pudindose representar un mismo nmero de distintas formas.

Ejemplo 2: El nmero 6,25 expresado en el sistema binario en formato de punto flotante, se podr
representar como:
110,01. 2000
11,001. 2001
1,1001. 2010
0,11001. 2011

Para evitar una representacin arbitraria se recurre a la normalizacin de la mantisa. La


normalizacin consiste en colocar la coma o punto decimal en un lugar fijo, delante del UNO ms
significativo, de forma tal que la misma quede de la forma 0,1 (en binario). Con la normalizacin,
la mantisa ser un nmero comprendido entre 0,1 M1 (estando estos lmites expresados en
binario). A todo esto, es evidente que la normalizacin de la mantisa implica un ajuste del
exponente.

Ejemplo 3: Corrimiento de la coma o punto para normalizar la mantisa.

Nmeros Nmeros con mantisa normalizada


110,01. 2000 0,11001. 2011
0,00110011. 2011 0,110011. 2001

TCNICAS DIGITALES 1 REPRESENTACIN DE NMEROS EN PUNTO FLOTANTE -2/6-


REPRESENTACIN EN PUNTO FLOTANTE ESTNDAR
Un formato de punto flotante muy utilizado es el propuesto por la IEEE (Institute of Electrical and
Electronics Engineers) en el estndar IEEE-754. Este estndar consiste en representar al nmero
binario en punto flotante, de la siguiente forma:

Como vemos el formato posee los siguientes campos:

- Un bit para el signo del nmero (S). Si es 0, el signo del nmero es +. Si es 1, el nmero ser
negativo.
- Ocho bits para el exponente (E).
- Veintitrs bits para la mantisa normalizada.

Mantisa: Es un nmero binario sin signo que se encuentra normalizado de la forma M=1,m. Es
decir la coma o punto decimal se coloca siempre detrs del UNO mas significativo del nmero, pero
se almacena (es decir se representa) slo la parte decimal m del mismo ya que la parte entera
siempre ser 1. A la hora de saber el verdadero valor de la mantisa M, habr que agregar 1,m.

M = 1,bbbbb.. m = bbbbb. (23 bits)

Exponente: Es un nmero binario natural, que al restarle 127 permite obtener el verdadero valor
del exponente n. Al exponente E se lo denomina exponente desplazado o sesgado, y permite
realizar en forma sencilla algunas operaciones. El exponente E ya tiene implcito el signo, siempre
es un nmero positivo. El valor verdadero n del exponente podr variar entre +127 y 126, como
se indica a continuacin.

E = 1 254 n = E 127 = 126 +127


(Sin considerar los casos particulares E=0 y E=255)

El formato anterior, constituido por una palabra de 32 bits, corresponde a un nmero de simple
precisin y segn el estndar IEEE-754 cumple con la siguiente expresin:

N= (-1)S . (1,m) . 2E 127 [1]

Tambin hay un formato de doble precisin que utiliza palabras de 64 bits, en el mismo se utiliza 1
bit para el signo S, 11 bits para el exponente E y 52 bits para la mantisa normalizada m. Este
formato cumple con la siguiente expresin:

N= (-1)S . (1,m) . 2E 1023 [2]

En la expresin [2], el exponente verdadero podr variar entre +1023 y 1022, como se indica a
continuacin.

TCNICAS DIGITALES 1 REPRESENTACIN DE NMEROS EN PUNTO FLOTANTE -3/6-


E = 1 2046 n = E 1023 = 1022 +1023
(Sin considerar los casos particulares E=0 y E=2047)

En los formatos anteriores existen los siguientes casos particulares de representacin:

Exponente Mantisa Observacin


Corresponde a un resultado no vlido.
E = 255 E = 2047 m0
Por ejemplo: caso 0/0
- Si S = 0 N = + .
E = 255 E = 2047 m=0
- Si S = 1 N = .
E=0 m0 Representacin para N prximo a 0.
E=0 m=0 Representacin para N = 0.

Para el caso de un nmero prximo a cero, la mantisa se normaliza segn (0,m) y los nmeros en
simple y doble precisin sern expresados de la siguiente forma:

Simple precisin N= (-1)S. (0,m) . 2 126 [3]

Doble precisin N= (-1)S. (0,m) . 2 1022 [4]

Teniendo en cuenta la representacin en simple precisin, a partir de la expresin [1] y los casos
especiales, puede observarse que la mantisa M podr variar de la siguiente forma:

Menor valor (1,m)2 = (1,0001)2 = (1 + 2 23)10 (con m de 23 bits)


Mayor valor (1,m)2 = (1,1111)2 = (2 2 23)10 (con m de 23 bits)

Como el exponente real n puede variar entre +127 y 126, el rango de representacin en el
formato estndar de simple precisin quedar limitado de la siguiente forma:

Mayor nmero positivo = + (2 2 23) 2+127 = + 3,402810 38


Menor nmero positivo = + (1 + 2 23) 2 126 = + 1,175410 38
Mayor nmero negativo = (1 + 2 23) 2 126 = 1,175410 38
Menor nmero negativo = (2 2 23) 2+127 = 3,402810 38

A partir de los valores lmites obtenidos, la recta numrica podr representarse de la siguiente
forma:

TCNICAS DIGITALES 1 REPRESENTACIN DE NMEROS EN PUNTO FLOTANTE -4/6-


Queda para el alumno obtener el rango de representacin para el formato estndar de doble
precisin.

En el formato de punto flotante pueden representarse 2N nmeros distintos (simple precisin N=32
bits; doble precisin N=64 bits) como en punto fijo, pero como puede apreciarse en la figura
anterior, en ste formato se ampla el rango de nmeros representables.

A continuacin se presentan algunos ejemplos donde se trata la conversin numrica del sistema
decimal al binario en formato de punto flotante y viceversa.

Ejemplo 4: Dado el nmero decimal -115.25 expresarlo en punto flotante de simple precisin
segn norma IEEE-754.

Paso 1: Primeramente pasamos el nmero a binario punto fijo.

La parte entera es igual a: 115 = 1110011.


La parte decimal es igual a: 0,25 = 0,010..............0.

El nmero 115,25 en base 10, es igual al nmero binario 1110011,01. 2000 en punto fijo.

Es importante aclarar que si bien el signo del nmero es negativo, ste se identifica poniendo en
"1" el campo de signo. Siempre se trabaja en la conversin de decimal a binario con nmeros
naturales.

Paso 2: Ahora, para obtener m, normalizamos la mantisa del nmero binario obtenido. Para logra
esto, se corre la coma hasta obtener un nmero binario de la forma 1,xxxxx 2n donde xxxxx son
los 23 bits de la parte decimal y n el exponente que luego hay que desplazar. Teniendo en cuenta
esto, para el nmero 1110011,01.2000 deber correrse la coma hacia la izquierda 6 lugares, por lo
tanto obtendremos:

1,11001101. 2+6 (n=+6)

La parte decimal completada con ceros (hasta obtener los 23 bits) 11001101000000000000000 es
m . El signo del nmero es negativo, por lo tanto el bit de signo se pone a "1". De esta forma la
mantisa normalizada con el bit de signo queda:

111001101000000000000000

Paso 3: Ahora debe obtenerse el exponente desplazado E a partir del exponente n=+6. Para
realizar dicho desplazamiento se suma 127 al valor de n, recordando que la suma debe efectuarse
con nmeros de 8 bits. Entonces tenemos

E = 6 + 127 = 133 E= 10000101

Por lo tanto, el nmero completo en punto flotante normalizado simple precisin que representa al
-115.25 es:

1 10000101 11001101000000000000000

TCNICAS DIGITALES 1 REPRESENTACIN DE NMEROS EN PUNTO FLOTANTE -5/6-


Ejemplo 5: Representar el nmero N = - 6,125 en el estndar IEEE-754 de simple precisin.

Paso 1: Primeramente pasamos el valor absoluto de N a su equivalente binario:

6,125 110,001. 2000

Paso 2: Luego normalizamos la mantisa para obtener m : 110,001. 2000 1,10001. 2010

Donde : m = 100 0100 0000 0000 0000 0000


Exp. Real (n) = 00000010

Paso 3: Ahora, desplazamos el exponente real para obtener E : E = 2+127


E =129 = 10000001

De esta forma: - 6,125 = 1100 0000 1100 0100 0000 0000 0000 0000

Ejemplo 6: Expresar en decimal el siguiente nmero binario, el cual se encuentra en el formato


estndar IEEE-754 de simple precisin:

0000 0000 0001 1101 0100 0000 0000 0000

Como E = 0 y m 0 tenemos un n prximo a cero, el cual se expresa como N= (-1)S. 2 -126. (0,m)
donde la mantisa ser 0,001110101 = 2-3 + 2-4 + 2-5 + 2-7 + 2-9 = 0,228515625 , por lo tanto ser:

N = (-1)0. 2 126. 0,228515625 N = 2,686188 .10-39

BIBLIOGRAFA
- Santiago Acha, Manuel Castro; Electrnica Digital: Introduccin a la Lgica Digital. Teora,
problemas y simulacin; ao 2003.

- J. Manuel Mendas Cuadros; Estructura del Procesador: Aritmtica; Universidad Complutense


de Madrid.
http://www.ie.itcr.ac.cr/mhernandez/Lab.%20Diseno-Logico%202006/mult-div.pdf

- Fundamentos de Computadores, Representacin Binaria; Universidad de Sevilla, ao 2004


http://www.scribd.com/doc/4390147/Fundamentos-de-Computadores-Representacion-
Binaria

TCNICAS DIGITALES 1 REPRESENTACIN DE NMEROS EN PUNTO FLOTANTE -6/6-

También podría gustarte