Representação de números reais no computador
Representação de números Reais no computador
Os computadores em sua maioria é feito com a maior parte fracionária utilizando a expoência. A vantagem de utilizar a notação exponencial para representar números reais reside no fato de podermos trocar, com facilidade, a precisão pela magnitude do número de uma forma que nos é bastante útil. Uma vez que existe uma infinidade de números reais é impossível representá-los a todos.
Números de ponto flutuante são aproximações dos números reais:
Eles têm um alcance limitado, tipicamente de 1.0 e -37 a 1.0 e 37 para "precisão simples" e de 1.0 e -200 a 1.0 e 200 para "precisão dupla. ; - Eles podem aproximados números reais com um número finito de casas decimais apenas. Por "precisão dupla", é tipicamente 12 a 13 casas decimais. Suficiente em muitas aplicações práticas, mas você pode entrar em sérios problemas; - Considerando que estamos habituados a casas decimais (1,1 e 0,002 por exemplo), a maioria dos atuais computadores de hoje usam um sistema binário, por isso não pode representar exatamente 1,1. Estranho? Sim, talvez, mas não se você comparar isso com 1/3 em nosso sistema decimal:
Imagine que decidíamos utilizar para cada número a quantidade de memória suficiente para armazenar seis dígitos. Se utilizarmos três dígitos para cada um dos lados da virgula decimal, podemos representar valores de -999,999 a 999,999 com uma resolução de 0,001 porém, se utilizarmos a notação exponencial com quatro dígitos para a base e dois dígitos para o expoente, podemos representar números entre -9,999x1099 a 9,999x1099 com uma resolução de 0,001 x 10-99. Repare que, utilizando o mesmo espaço em memória é assim possível representar números muito maiores e muito menores. O preço a pagar é que a resolução deixa de ser constante e torna-se maior à medida que os números se tornam maiores. Uma vez que a escrita de potências (por exemplo 102) é difícil, as linguagens de programação