Considere um equipamento cujo sistema de ponto flutuante normalizado é
. Para este sistema:
(a) Qual o menor positivo exatamente representável?
(b) Qual é o próximo positivo, depois do menor positivo representável?
(c) Transforme o menor positivo e o próximo para a base decimal
(d) Verifique se existem reais entre o menor e o próximo positivo. Comente.
(e) Qual o maior positivo exatamente representável?
(f) Quantos são os exatamente representáveis positivos?
(a) Qual o menor positivo exatamente representável?
(b) Qual é o próximo positivo, depois do menor positivo representável?
(c) Transforme o menor positivo e o próximo para a base decimal
(d) Verifique se existem reais entre o menor e o próximo positivo. Comente.
(e) Qual o maior positivo exatamente representável?
(f) Quantos são os exatamente representáveis positivos?
Passo 1
Vou listar claramente o que o enunciado dá e o que pede.
- O sistema de ponto flutuante é
. Ou seja: - base
, - precisão
dígitos em base (isso inclui o dígito líder), - expoentes variam de
até .
- base
- Perguntas:
(a) Qual o menor positivo exatamente representável?
(b) Qual é o próximo positivo, depois do menor positivo representável?
(c) Transforme o menor positivo e o próximo para a base decimal.
(d) Existem reais entre o menor e o próximo positivo? Comente.
(e) Qual o maior positivo exatamente representável?
(f) Quantos são os exatamente representáveis positivos?
Passo 2
Entendendo a forma normalizada de um número neste SPF (aulas rápidas e mastigadas).
- Um número normalizado em base
tem a forma
onde cada
e o dígito líder é
(isso é o que “normalizado” significa: não pode começar com
).
- Aqui
, então há bits fracionários . Assim o mantissa varia discretamente entre
- Os expoentes permitidos são os inteiros
(no total valores).
Passo 3
(a) Encontrar o menor positivo exatamente representável.
- O menor (positivo) normalizado ocorre com o menor expoente
e a mantissa mínima normalizada . - Logo o menor positivo é
- Isso já é a resposta em forma exata binária/potência de dois. A seguir converto para decimal.
Passo 4
(b) Encontrar o próximo positivo depois do menor (ou seja, o sucessor imediato na malha de números representáveis).
- Com o mesmo expoente
, o menor incremento possível no mantissa é alterar o último bit fracionário: trocar por . - O incremento relativo no mantissa vale
. Assim o próximo valor é
- Essa é a expressão exata do sucessor imediato (não há nenhum outro normalizado entre esses dois, motivo será explicado no Passo 6).
Passo 5
(c) Converter esses dois números para base decimal (cálculos numéricos passo a passo).
- Calcule
e : - Portanto
- E
- Somando para obter o “próximo”:
- Resumo decimal:
- menor
, - próximo
.
- menor
Passo 6
(d) Verificar se existem reais entre o menor e o próximo positivo e comentar.
- A malha de números normalizados com expoente fixo é obtida variando os
bits fracionários. A diferença entre dois sucessivos com o mesmo expoente é exatamente . Aqui essa diferença é
- Entre dois números reais distintos existe sempre infinitos números reais (a reta é densa). Portanto existem infinitos números reais entre
e . - Entretanto, nenhum desses números intermediários é exatamente representável pelo SPF (não há nenhum outro normalizado com expoente
entre eles, e trocar o expoente para dá saltos de tamanho maior). Assim: há infinitos reais entre eles, mas nenhum é exatamente representável no sistema . - Intuição prática: a aritmética de ponto flutuante “faz um grid” discreto; entre duas casas adjacentes do grid existem muitos reais, mas nenhuma outra casa do grid.
Passo 7
(e) Qual o maior positivo exatamente representável.
- A mantissa máxima é
(com uns fracionários). O valor dessa mantissa é
- Com o maior expoente
, o maior número é
- Calculando:
- Assim o maior positivo exatamente representável é
.
Passo 8
(f) Quantos são os exatamente representáveis positivos?
- Para cada expoente
temos exatamente mantissas normalizadas possíveis (porque há bits fracionários livres). - O número de expoentes disponíveis é
. - Logo o número de números positivos representáveis (não contando o zero) é
- Substituindo os valores:
- Observação: isto conta somente os positivos normalizados; o zero, se considerado, é um elemento extra, e subnormais (denormals) não foram incluídos porque o enunciado indicou SPF normalizado.
Resposta
(a)
(b)
(c) menor
; próximo
(d) Sim — existem infinitos reais entre eles, mas nenhum número exatamente representável no sistema
fica entre esses dois (o espaçamento é
)
(e)
(f)