Considere o sistema de numeração de ponto flutuante normalizado F=F(16,3,19,45) A cardinalidade (tamanho) de F é
\(O valor de \)\varepsilon é
\(O menor número positivo em \)F é
\(O maior número positivo em \)F é
\(Qual destes números possui representação exata em \)F\( ? Para este efeito, desconsidere erros de conversão muito pequenos, que nesse processo acarretariam uma sequencia de zeros ou ( \)\beta-1 )'s consecutivos mais longa do que as posições remanecentes na mantissa.
4.9662422611784773 e-14
2.9206275939941406 \mathrm{e}-06
2.233602164987067 \mathrm{e}-15

Passo 1

O enunciado define o sistema de ponto flutuante normalizado
\,F=F(16,3,-19,45), isto é, base \beta=16, precisão p=3 dígitos hexadecimais, expoentes e variando de -19 a 45.
Vamos calcular:
  1. A cardinalidade de F.
  2. O valor de \varepsilon (a diferença entre 1 e o próximo número acima de 1).
  3. O menor número positivo em F.
  4. O maior número positivo em F.
  5. Qual dos três números dados possui representação exata em F.

Passo 2

Para sistemas normalizados em base \beta e precisão p, com expoente mínimo L e máximo U, a cardinalidade é
\bigl\lvert F\bigr\rvert = 2\,(U - L + 1)\,(\beta-1)\,\beta^{\,p-1} \;+\;1,
onde o “ +1” conta o zero. Aqui \beta=16, p=3, L=-19, U=45, então
U - L + 1 = 45 -(-19)+1 = 65,
\bigl\lvert F\bigr\rvert = 2\cdot65\cdot(16-1)\cdot16^{2}+1 =2\cdot65\cdot15\cdot256+1 =499200+1 =499201.

Passo 3

A máquina de ponto flutuante tem \varepsilon definido como a diferença entre 1 e o próximo número maior que 1. Em geral
\varepsilon = \beta^{\,1-p}.
Aqui \beta^{\,1-p}=16^{\,1-3}=16^{-2}= \tfrac1{256}=0{,}00390625.

Passo 4

O menor número positivo normalizado é
x_{\min} = \beta^{\,L-1} =16^{(-19)-1} =16^{-20}.
O maior número positivo é
x_{\max} = \bigl(1-\beta^{-p}\bigr)\,\beta^{\,U} =\bigl(1-16^{-3}\bigr)\,16^{45}.

Passo 5

Para saber qual dos três números tem representação exata em F, basta ver se ele pode ser escrito como
\pm d_0.d_1d_2_{16}\times 16^{e},
com 1\le d_0\le15, 0\le d_1,d_2\le15, inteiro e.
Entre os três,
2{,}9206275939941406\times10^{-6}
é exatamente
3.1_{16}\times16^{-5} = \bigl(3 + \tfrac1{16}\bigr)\,16^{-5} = \frac{49}{16^6} =2{,}920627593994140625\times10^{-6},
logo usa mantissa d_0=3, d_1=1, d_2=0 e expoente -5, cabendo em p=3. Os outros dois têm fator 10^{-n} com 5 no denominador e não se encaixam numa fração cujo denominador seja potência de 2 apenas.

Resposta

Cardinalidade: 499201
\varepsilon =16^{-2}=0{,}00390625
Menor positivo: 16^{-20}
Maior positivo: \bigl(1-16^{-3}\bigr)\,16^{45}
Número com representação exata em F:
2{,}9206275939941406\times10^{-6}

Exercícios relacionados