Seja um computador binário, cujo sistema de ponto flutuante tenha para o sinal do número, para o expoente e para a mantissa num total de . Qual o menor número positivo e o maior número positivo nele representável.
Passo 1
Como temos para o expoente, o expoente máximo é dado por:
Portanto, o expoente mínimo será .
Também podemos pensar que a máquina vai do expoente até o , ou seja, do ao . Como queremos representar os números negativos também, subtraímos , de modo que os expoentes agora variam de até .
Passo 2
Para obter o maior número, devemos ter o maior expoente e a maior mantissa.
- O maior expoente: 15
- A maior mantissa: f= 0. (111111)
Colocando a mantissa na base decimal:
O valor máximo é dado por:
Sendo assim, o valor máximo que ela pode representar é:
Passo 3
O valor mínimo normalizado é dado por:
- O menor expoente: -14
- A menor mantissa: f= . (000000)
Observação: Só podemos ter essa mantissa toda 0 porque o valor normalizado já conta com um dígito 1 antes da vírgula.
Assim, o valor mínimo normalizado será:
Passo 4
O valor mínimo não normalizado é bem parecido, mas tem a seguinte diferença: não tem aquele 1 antes da vírgula. Então, para obter o valor mínimo, devemos considerar 0 antes da vírgula e o máximo de 0s possíveis na mantissa, colocando 1 apenas no dígito de menor valor. Assim:
- A menor mantissa: f= 0. (000001)
Passando a mantissa para a base decimal:
Assim, o menor valor não normalizado é dado por:
Resposta
Maior número positivo:
Menor número positivo normalizado:
Menor número positivo não normalizado: