Como é armazenado -Inf (sequência de bits) em um computador, usando precisão dupla?
Passo 1
O enunciado pede: “Como é armazenado -Inf (sequência de bits) em um computador, usando precisão dupla?”
Informações relevantes (padrão esperado para resolver):
A representação em precisão dupla usa 64 bits no total.
Esses 64 bits são organizados em três campos: 1 bit de sinal, 11 bits de expoente e 52 bits de fração (mantissa).
Passo 2
Entendendo o significado dos campos (mini-aula necessária para a prova).
O bit de sinal s determina o sinal do número: s=0 para positivo e s=1 para negativo.
O campo de expoente armazena um valor codificado e em complemento com bias; para precisão dupla o bias é 1023. Ou seja, para expoentes “normais” o expoente real é E = e - 1023.
O campo de fração tem 52 bits que representam a parte fracionária f do significando; para números normalizados o valor é (-1)^s \cdot 2^{E} \cdot (1.f), onde 1.f significa o bit implícito 1 seguido da fração.
Porém: existem codificações especiais quando o campo de expoente é todo 1 (isto é, e = 2^{11}-1 = 2047). Nesses casos:
Se a fração for toda zero (f=0), o valor representa infinito (+\infty se s=0, -\infty se s=1).
Se a fração for diferente de zero (f\ne0), o valor representa NaN (Not a Number).
Passo 3
Aplicando ao caso pedido: queremos -\infty. Pelo que vimos:
Para representar infinito o expoente deve ser todo 1 (e=2047) e a fração deve ser toda zero (f=0).
Para que seja negativo, o bit de sinal deve ser s=1.
Passo 4
Escrevendo os campos em bits:
Bit de sinal: s=1.
Expoente (11 bits) todos 1: \underbrace{11111111111}_{11\\ \text{bits}}. Em decimal isso é 2047.
Fração (52 bits) todos 0: \underbrace{0000000000000000000000000000000000000000000000000000}_{52\\ \text{bits}}.
Passo 5
Montando a sequência completa de 64 bits (grupo: sinal | expoente | fração):
Essa é a representação binária completa de -\infty em precisão dupla.
Passo 6
Representação hexadecimal (útil na prática e em provas): agrupa-se a sequência de 64 bits em 16 dígitos hexadecimais. A sequência acima corresponde ao valor hexadecimal conhecido
\text{hex: }0xFFF0000000000000.
Passo 7
Resumo de verificação rápida (para fixar):
+\infty tem bits: 0\;11111111111\;0\ldots0 (\text{hex }0x7FF0000000000000).
-\infty troca apenas o bit de sinal para 1, ficando 1\;11111111111\;0\ldots0 (\text{hex }0xFFF0000000000000).