Considere o sistema de números de ponto flutuante
e a função de arredondamento
por falta.
Qual é o menor número positivo e o maior número positivo de
?
Qual é o menor número positivo e o maior número positivo de
Passo 1
Então, galera, o problema é assim: a gente tem um sistema de ponto flutuante
(base 2, precisão 8 dígitos, expoentes de
a
) e quer saber qual é o menor número positivo e o maior número positivo que pertencem a esse sistema. Para resolver, vamos lembrar como números em ponto flutuante são formados e usar as regras de normalização (sem subnormais) e truncamento (arredondamento por “falta”).
Passo 2
Primeiro, a teoria básica:
- Qualquer número normalizado em
tem a forma onde cada é 0 ou 1, o dígito antes do ponto (o “1.”) não pode ser zero, e o expoente varia de até . - Como a precisão é 8, temos 1 dígito “inteiro” fixo (o “1.”) e 7 dígitos de fração.
- O truncamento (ou “chop”) significa que, se tivéssemos mais bits, a gente simplesmente corta sem arredondar.
Passo 3
Menor número positivo:
- Para achar o menor, a gente coloca a mantissa mínima possível (que é exatamente
, sem nenhum bit fracionário “1”) e o menor expoente permitido, que é . - Logo
Isso faz sentido porque, se a gente tentasse usar expoente menor que
, não estaria mais no intervalo permitido.
Passo 4
Maior número positivo:
- Agora a mantissa tem que ser a maior possível, ou seja
(todos os 7 bits da fração valendo 1) e o maior expoente, . - Então
- Em forma fechada, a mantissa
. - Portanto
Resposta
Menor número positivo:
Maior número positivo:
Maior número positivo: