Aula De Mantissa
Exames: Aula De Mantissa. Pesquise 861.000+ trabalhos acadêmicosPor: Allan_desa • 6/9/2014 • 777 Palavras (4 Páginas) • 780 Visualizações
Representação dos números, aritmética de ponto flutuante e erros em máquinas digitais.
Representação dos números no formato “ponto flutuante” e sua aritmética.
A representação de números reais mais utilizada em máquinas é a do ponto flutuante . Esse número tem três partes: o sinal, a parte fracionária (mantissa) e o expoente,
m = ± ,d1d2d3... dt × βe
sendo
di´s : dígitos da parte fracionária, d1 ≠ 0, 0 ≤ di ≤ β-1
β: base (em geral 2, 10 ou 16),
t: nº de dígitos na mantissa.
e: expoente inteiro.
Para o exemplo anterior temos que o número de elementos é 17. (8 positivos, 8 negativos e o zero).
O conjunto dos números de ponto flutuante é discreto, e não contínuo como os números reais. Não temos mais o conceito que entre dois números sempre existe um outro. Esse fato pode ter conseqüência desastrosa!
5.2 - Erros na representação dos números
O conjunto de números de números reais é infinito, entretanto, a sua representação em um sistema de ponto flutuante é limitada, pois é um sistema finito. Essa limitação tem duas origens:
A) a faixa dos expoentes é limitada ( min max e ≤ e ≤ e );
B) a mantissa representa um número finito de números (β t−1 ≤ m ≤ β t−1 )
Faixa dos expoentes é limitada ( min max e ≤ e ≤ e );
Sempre que uma operação aritmética produz um número com expoente superior ao expoente máximo, tem-se o fenômeno de “overflow”. De forma similar, operações que resultem em expoente inferior ao expoente mínimo tem-se o fenômeno de “underflow”.
No caso do exemplo dado, pode-se observar qual as regiões que ocorrem o overflow e o underflow.
Neste caso, considera-se a parte positiva e negativa da aritmética do exemplo.
Ex1: Considere uma aritmética de ponto flutuante F(10,2,-5,5)
-overflow: Sejam x =875 e y=3172 . Calcular x × y.
Primeiro, deve-se arredondar os números e armazená-los no formato indicado. A operação de multiplicação é efetuada usando 2t dígitos.
x = 0.88x 10 3 e y =0 .32 x 104, x×y = 0.2816 x 107
Como o expoente é maior que 5, resulta em overflow
-underflow: Sejam x =0,0064 e y=7312 Calcular x ÷ y.
Primeiro, deve-se arredondar os números e armazená-los no formato indicado. A operação de divisão é efetuada usando 2t dígitos.
x = 0.64x 10-2 e y = 0.73 x 104, x÷y = 0.8767 x 10-6
O resultado dessa operação resultou em um valor menor que o computador pode armazenar, ou seja, resulta em underflow
Mantissa representando um número finito de números (βt−1 ≤ m ≤ βt−1 )
Ex1. Seja uma máquina que opere com apenas 6 dígitos na mantissa, ou seja, que seja capaz de armazenar números no formato m = ± 0,d1d2d3d4d5d6 x 10e. Como armazenaríamos número
(0,11)10 = (0,000111000010100011110101110000101000111101............)2
nesta maquina?
Como o número (0,11)10 que não tem representação binária finita, teremos neste caso:
(0,11)10 → (0,000111)2 → (0,109375)10
Ex2.
...