No sistema de ponto flutuante normalizado
, represente em cada caso, o valor arredondado das seguintes operações:
c)
.
c)
Passo 1
O enunciado pede que eu calcule o valor arredondado da operação
no sistema de ponto flutuante normalizado
.
Informações relevantes do sistema (peguei estes parâmetros do enunciado):
- base
; - precisão
dígitos binários na mantissa; - expoentes permitidos
com e (ou seja, ); - números normalizados têm a forma
, com (porque significa um bit inteiro 1seguido de dois bits fracionários); - o zero é representável (como caso especial), mas não existem números subnormal/denormalizados (o sistema foi dito “normalizado”).
O que vou fazer: calcular o produto exato em binário, colocar na forma normalizada, verificar o expoente; se o expoente for menor que
(underflow relativo), devo arredondar para o número representável mais próximo dentre os números do sistema (incluindo zero). Vou usar arredondamento para o mais próximo (round-to-nearest).
Passo 2
Calcular os fatores em forma binária e decimal (para facilitar a multiplicação):
Primeiro fator:
Em decimal,
.
Segundo fator:
Em decimal,
.
Passo 3
Calcular o produto exato (decimal e binário):
Produto decimal:
Converter
para binário (multiplicando sucessivamente por
):
e para aí (resto zero). Assim a expansão binária é
Passo 4
Colocar o resultado na forma normalizada: mover o ponto até que haja um
1 à esquerda da vírgula.Aqui o expoente exato é
. Mas o sistema só aceita expoentes
. Portanto o resultado exato tem expoente menor que o mínimo normalizável: isto é underflow relativo (o número é menor que o menor número normalizado positivo).
Os candidatos representáveis mais próximos (positivos) no sistema são:
- o zero (
); - os números normalizados com
, que têm mantissa com . São:
Comparar distâncias ao número exato
:
Como
é mais próximo de
do que
(e também mais próximo que quaisquer outros normalizados com
), o arredondamento para o mais próximo escolhe
.
Passo 5
Expressar a resposta na forma do sistema:
em binário normalizado com
é
Portanto o valor arredondado do produto no sistema
, usando arredondamento para o mais próximo entre os números representáveis (incluindo zero), é
.