python 05 - ponto flutuante

31
Ponto flutuante LNCC UFRJ

Upload: paulo-roberto-godoy-bordoni

Post on 19-Jun-2015

2.478 views

Category:

Technology


4 download

TRANSCRIPT

  • 1. Ponto flutuanteLNCC UFRJ

2. Explicando o nome: ponto flutuante1Em lnguas de origem anglo-saxnicao separador decimal o ponto (e no avrgula como nas de origem latina). 2... 0002374.0 x 10-2 000237.40 x 10-1 00023.740 x 10-0 23.74 = 0002.3740 x 10+1 00.237400 x 10+2 0.0237400 x 10+3 ... 3. Representao de ponto flutuante normalizada Dada a representao decimal de um nmero realy = GyN yN-1 ... y2 y1 y0 . y-1 y-2 ... yk ... na qual o dgito mais significativo yN no-nulo,existe um, e apenas um, expoente exp para o qual y =G yN . yN-1 ... yk ... x 10exp. Tal representao dita normalizada.... 0002374.0 x 10-2 000237.40 x 10-1 00023.740 x 10-0 23.74 = 0002.3740 x 10+1 00.237400 x 10+2 0.0237400 x 10+3 ... 4. Campos para a representao decimalde ponto flutuante normalizadaPara estabelecer de forma nica a representao decimal de ponto flutuante normalizada de um nmero realy = Gy0 . y1 ... yk ... x 10expbasta definir: o sinal (+ ou -) de y; a frao (y0 . y1 ... yk ...) de y; o expoente (exp) de y.Note bem que, na base 10, a normalizaoexige:0 < y0 < 10. 5. Representao binria de ponto flutuante normalizada A representao binria de ponto flutuantenormalizada de um nmero real y dada pory = Gy0 . y1 ... yk ... x 2exp,onde yk 2 {0,1} para k 2 ;Lembre-se: bit abreviao para binary digit:0 ou 1. Note bem que, na base 2, a normalizao exige: 0 < y0 < 2, isto , y0 = 1.Portanto, qualquer que seja y, y0 = 1. O hiden bitAssim, no h necessidade de representarexplicitamente o bit mais significativo.Ento ele passa a ser um bit escondido. 6. Nmeros reaisA distino fundamental entre o conjunto dos nmeros reais e o conjunto dos nmerosracionais o Axioma do supremo:Todo conjunto limitado superiormente denmeros reais possui um supremo. A partir desse axioma, constri-se arepresentao decimal com infinitos dgitos de nmeros irracionais, como e, , d2, etc. Em ltima anlise, dado o fatorexponencial de ajuste, tais representaes sosries convergentes de fraes decimais. 7. A finitude do computador digitalA finitude de memria do computador digital obriga, de fato, utilizao de representaesfinitas de cadeias de 0s e 1s os bits.Tanto na frao como no expoente! Nos computadores digitais: Sries Somas convergentesfinitas Expoentes restritos a uma faixa 8. O padro IEEE 754/2008 o padro adotado atualmente para a representao de ponto flutuante nas implementaes tanto de softwarecomo de hardware. Formatos aritmticos; Formatos para intercmbio Algoritmos para arredondamento; Operaes algbricas Manipulao de excees 9. O IEEE 754 / 2008Os formatos binrios adotados no padro IEEE 754/2008 so definidos por uma terna ( s, e, f ) cujos valores definem a quantidade de bits para cada campo da representao binria de ponto flutuante normalizada do nmero: s campo do sinal; e campo do expoente; f campo da frao (ou mantissa). Single: (1,8,23)Double: (1,11,52)Acrescente o bit Quad: (1,15,112) escondido na frao! 10. Representao binria A representao binria de um nmero X armazenada em trs campos: Sinal deFrao deX Expoente deX X 11. Padro IEEE 754/2008 - Single4 bytes 1 bit para o 8 bits para o 23 bits para a sinal expoentefrao 12. Padro IEEE 754/2008 - Singlese f (-1)s#2e-127#(1.f) se 0