Qual número é armazenado como 0 x49179EA0 conforme a norma IEEE 754 ?
(a) 84.0011 E 2
(b) 62.1034 E 4
(c) 37.1011 E 3

Passo 1

O enunciado dá o valor em hexadecimal \text{0x49179EA0} e pergunta qual número esse padrão armazena segundo a norma IEEE 754 (com as três alternativas abaixo):
(a) \,84{,}0011\times 10^{2}
(b) \,62{,}1034\times 10^{4}
(c) \,37{,}1011\times 10^{3}
Informações relevantes dadas: o número em memória em formato hexadecimal \text{0x49179EA0} e três opções em notação científica para comparar. A tarefa é converter \text{0x49179EA0} para o número real que ela representa em IEEE 754 (presumindo precisão simples, 32 bits).

Passo 2

Breve explicação do formato IEEE 754 (precisão simples, 32 bits) — importante para a prova:
  • Um número IEEE 754 de 32 bits tem três partes:
    • sinal s: 1 bit (0 para positivo, 1 para negativo);
    • expoente armazenado E_{\text{campo}}: 8 bits, com bias 127;
    • fração (mantissa) F: 23 bits.
  • Para números normalizados o valor é dado por
\text{valor} = (-1)^{s}\,(1 + f)\,2^{E},
onde f é a fração (valor entre 0 e 1-2^{-23}) e
E = E_{\text{campo}} - 127.
  • Aqui f = \dfrac{F}{2^{23}}, com F sendo o inteiro correspondente aos 23 bits da fração.

Passo 3

Convertemos o hexadecimal em binário (cada byte em 8 bits). Peguei o dado da hex \text{0x49179EA0} e converti byte a byte:
\text{0x49} = 01001001,\quad \text{0x17} = 00010111,\quad \text{0x9E} = 10011110,\quad \text{0xA0} = 10100000.
Concatenando temos os 32 bits:
01001001\;00010111\;10011110\;10100000.

Passo 4

Extraímos as três partes do campo:
  • bit de sinal s = primeiro bit = 0 (logo número positivo).
  • expoente (próximos 8 bits) = \,10010010.
    Calculamos o valor decimal do campo do expoente: E_{\text{campo}} = 1\cdot 2^{7}+0\cdot2^{6}+0\cdot2^{5}+1\cdot2^{4}+0\cdot2^{3}+0\cdot2^{2}+1\cdot2^{1}+0\cdot2^{0}=128+16+2=146.Então o expoente real é E = E_{\text{campo}} - 127 = 146 - 127 = 19.
  • fração (23 bits restantes) são os 23 bits seguintes (peguei esses bits da sequência binária acima):
\text{mantissa bits} = 00101111\,00111101\,0100000.
(mais explicitamente os 23 bits: 0\,0\,1\,0\,1\,1\,1\,1\,0\,0\,1\,1\,1\,1\,0\,1\,0\,1\,0\,0\,0\,0\,0).

Passo 5

Vamos calcular o inteiro F correspondente à fração (soma de potências de 2). Cada bit b_i da fração contribui com b_i\cdot 2^{23-i}. Somando as contribuições (mostrando os termos não-nulos):
F = 2^{20}+2^{18}+2^{17}+2^{16}+2^{15}+2^{12}+2^{11}+2^{10}+2^{9}+2^{7}+2^{5}.
Calculando:
\begin{aligned} 2^{20}&=1\,048\,576,\\\\ 2^{18}&=262\,144,\\\\ 2^{17}&=131\,072,\\\\ 2^{16}&=65\,536,\\\\ 2^{15}&=32\,768,\\\\ 2^{12}&=4\,096,\\\\ 2^{11}&=2\,048,\\\\ 2^{10}&=1\,024,\\\\ 2^{9} &=512,\\\\ 2^{7} &=128,\\\\ 2^{5} &=32. \end{aligned}
Somando tudo:
F = 1\,048\,576 + 262\,144 + 131\,072 + 65\,536 + 32\,768 + 4\,096 + 2\,048 + 1\,024 + 512 + 128 + 32 = 1\,547\,936.
A mantissa (significand) é
1 + f = 1 + \frac{F}{2^{23}} = 1 + \frac{1\,547\,936}{8\,388\,608} = \frac{8\,388\,608 + 1\,547\,936}{8\,388\,608} = \frac{9\,936\,544}{8\,388\,608}.

Passo 6

Agora aplicamos a fórmula do valor com E=19:
\text{valor} = (+1)\cdot\frac{9\,936\,544}{8\,388\,608}\cdot 2^{19}.
Simplificamos: 2^{19}/2^{23} = 1/2^{4} = 1/16. Então
\text{valor} = \frac{9\,936\,544}{16} = 621\,034.
Portanto o número representado por \text{0x49179EA0} é exatamente \,621\,034.

Passo 7

Comparamos com as alternativas:
  • (a) \,84{,}0011\times 10^{2} = 8\,400{,}11 (não é 621\,034);
  • (b) \,62{,}1034\times 10^{4} = 62{,}1034\cdot 10^{4} = 621\,034 (combina perfeitamente);
  • (c) \,37{,}1011\times 10^{3} = 37\,101{,}1 (não é 621\,034).
Logo a alternativa correta é a (b).

Resposta

(b)

Exercícios relacionados