Padrão IEEE 754: Dado um sistema hipotético de ponto flutuante
(Base 10, mantissa de 3 dígitos, expoentes entre -2 e 3):
Como o número 0.005555 é representado usando arredondamento?
Como o número 0.005555 é representado usando arredondamento?
Passo 1
O enunciado dá um sistema de ponto-flutuante
e pede como representar o número
usando arredondamento. As informações relevantes são:
- Base:
. - Precisão (número de dígitos significativos):
(mantissa com 3 dígitos significativos). - Intervalo de expoentes (conforme o
): e . - O número a representar é
. - Deve-se usar arredondamento (assumiremos o modo padrão IEEE: arredondamento para o mais próximo, em caso de empate “round-to-even” — arredonda para tornar o dígito final par).
Passo 2
Vou explicar como é o formato e como decidir se o número é normalizado ou denormalizado (subnormal), sem ainda calcular.
- Forma normalizada (base
, ): valores não nulos têm a forma
onde
e há exatamente
dígitos significativos
; o expoente
deve satisfazer
.
- Se o expoente necessário para a forma normalizada cair abaixo de
, o número não pode ser representado como normalizado. Então usamos a forma denormalizada (subnormal, “gradual underflow”):
onde agora os dígitos
(aqui
dígitos) podem começar por zero. Essa forma permite representar valores menores que o menor normalizado.
- Arredondamento (IEEE round-to-nearest, ties-to-even): para reduzir mais dígitos do que o disponível, escolhe-se o valor representável mais próximo; se o valor está exatamente no meio entre dois candidatos, escolhe-se aquele cujo último dígito retido é par.
Passo 3
Bootstrap: escrever o número em notação científica normalizada (antes de checar limites de expoente).
Aqui a mantissa normalizada teria
,
,
e o expoente seria
. Mas
é menor do que
. Logo não pode ser representado como número normalizado no sistema dado. Precisamos recorrer à representação denormalizada (expoente fixo em
).
Passo 4
Construção da denormalizada: escrevemos o número como
onde
deve ser um número da forma
(exatamente
dígitos após o ponto) em base 10. Calculamos
:
Agora precisamos arredondar
para três dígitos após o ponto, isto é, para um número da forma
.
Passo 5
Arredondamento de
para três dígitos após o ponto:
- Os três primeiros dígitos são
. - O quarto dígito (o que decide o arredondamento) é
. Não há dígitos não nulos além desse , então estamos exatamente no caso empate “meio”. - Pelo critério “ties-to-even”, olhamos o terceiro dígito retido: ele é
(ímpar). Em empate, arredondamos para cima para tornar esse dígito par. Assim arredonda para .
Portanto a mantissa denormalizada arredondada é.
Passo 6
Voltando da mantissa arredondada para o número representável:
Calculando em decimal:
Observação: esse resultado coincide com o que obteríamos se tivéssemos tentado arredondar a forma normalizada
para três dígitos significativos (resultando em
), mas a forma legal no formato do sistema é a denormalizada
devido ao limite de expoente.