Considere o sistema de aritmética de ponto flutuante
. Represente, nesse sistema, os seguintes números decimais:
;
Passo 1
O enunciado pede: representar o número
no sistema de ponto flutuante
. Informação dada que vou usar explicitamente:
significa que a base é
, a precisão (número de dígitos significativos) é
, o menor expoente é
e o maior é
. O número a ser representado é
.
Passo 2
O que significa representar um número nesse sistema (explicando a forma que usaremos): em
um número normalizado tem a forma
onde
(o primeiro dígito não pode ser zero) e cada
. Aqui
é a base (aqui
),
é a quantidade de dígitos significativos (aqui
) e
é o expoente que deve satisfazer
. Vou usar essa forma para encontrar a representação de
.
Passo 3
Primeiro passo prático: escrever
em notação científica normalizada (movendo a vírgula até o primeiro dígito não nulo). Começo de forma explícita:
Para obter a mantissa com primeiro dígito não nulo conto quantas posições a vírgula precisa andar: multiplicando por
obtemos
Logo a notação científica é
Aqui
tem
, então está normalizado e o expoente é
.
Passo 4
Agora preciso ajustar a mantissa para ter exatamente
dígitos significativos. A mantissa atual
tem apenas três algarismos significativos (
). Para ter
dígitos, preencho com zeros à direita (isso não muda o valor):
Portanto a mantissa com
é
.
Passo 5
Verifico se o expoente obtido está no intervalo permitido: temos
e o intervalo é
. Como
está dentro do intervalo, o número é representável como número normalizado sem underflow de expoente.
Passo 6
Conferindo se houve necessidade de arredondamento: o número original tem menos dígitos significativos do que
, então não houve perda de informação nem necessidade de arredondamento — a representação é exata no formato com
.
Passo 7
Escrevo a representação final no formato usual e também como tupla de componentes (sinal, dígitos da mantissa, expoente) para ficar claro como ficaria na máquina:
Forma normalizada com :
Forma normalizada com
Tupla (sinal, mantissa decimal com
dígitos, expoente):