Ponto Flutuante
João Carlos Haag
Centro Universitário Leonardo da Vinci - UNIASSELVI
Sistemas de Informação (Inf 25) – Estrutura de Dados
23/02/12
1. Como ele é representado.
Os números reais são denominados números de ponto flutuante, e como o computador trabalha somente com números binários, para representar os números reais os mesmos precisam ser convertidos para binário também.
O número 45,31 é um número de ponto flutuante, pois esse mesmo número poderia ser escrito como 4,531 x 101 ou 0,4531x102 ou 453,1x10-1 .Chama-se isso de ponto flutuante pois a virgula pode trocar de lugar alterando o valor com a potência da base.
Em binário pode-se fazer exatamente a mesma coisa, escrevendo-se o mesmo número 110101 como sendo 110,101x23 ou 1,10101x25 ou 0,0110101x27. Claro que esses expoentes também deverão ser escritos na base dois, (3)10 = (11)2 e (7)=(111)2, e assim por diante, ficando: 110,101 x (10)11 ou 1,10101x(10)101 ou 0,0110101x(10)111.
2. Quais os problemas com precisão neste tipo.
Para se definir a maneira como o computador armazenará o número real em ponto flutuante, é preciso definir o número de bits que ele usará para representar a mantissa(parte do ponto flutuante que contém os dígitos significantes) e o número de bits para o expoente.
Digamos que um determinado computador reserve 8 bits para representar os números reais. Admita-se que usa o primeiro bit para sinal do número, três bits seguintes para o expoente e os últimos quatro bits para o restante da mantissa.
Com o computador que reserva 8 bits pode-se ver que o maior número positivo que pode nele ser representado é: 01101111 , que corresponde a 1,1111 x 23 , isto é: 1111,1, ou 15,5, e o menor número positivo seria: 00010000 , que corresponde a 1,0000 x 2-2 , isto é: 0,25.
Quando o número possui uma mantissa que não cabe nos 4 bits o computador irá arredondar a mantissa para que ela caiba nos 4 bits. Vamos, assim, perder precisão no número e ele não mais representará,