(0,2 pontos para a prova
Um computador armazena números reais utilizando 1 bit para o sinal do número, 8 bits para o expoente e 23 bits para a mantissa. Admitindo que haja truncamento, como ficaria armazenado o número -0,005479.
Passo 1
Beleza, vamos resolver essa questão juntos! O enunciado fala sobre como um computador armazena números reais usando um formato específico: 1 bit para o sinal, 8 bits para o expoente e 23 bits para a mantissa. O objetivo é descobrir como o número -0,005479 seria armazenado nesse formato, considerando que há truncamento (ou seja, cortamos os dígitos que não cabem sem arredondar).
Passo 2
Primeiro, vamos entender o formato de armazenamento:
- 1 bit para o sinal: Indica se o número é positivo (0) ou negativo (1).
- 8 bits para o expoente: Representa a magnitude do número.
- 23 bits para a mantissa: Contém os dígitos significativos do número.
Esse formato é semelhante ao padrão IEEE 754 de precisão simples.
Passo 3
Como o número é -0,005479, o sinal será 1 (já que é negativo).
Passo 4
Agora, vamos converter o valor absoluto do número para binário. Começamos com 0,005479.
Para converter um número decimal fracionário para binário, multiplicamos a parte fracionária por 2 e anotamos a parte inteira resultante a cada passo:
- 0,005479 × 2 = 0,010958 → Parte inteira: 0
- 0,010958 × 2 = 0,021916 → Parte inteira: 0
- 0,021916 × 2 = 0,043832 → Parte inteira: 0
- 0,043832 × 2 = 0,087664 → Parte inteira: 0
- 0,087664 × 2 = 0,175328 → Parte inteira: 0
- 0,175328 × 2 = 0,350656 → Parte inteira: 0
- 0,350656 × 2 = 0,701312 → Parte inteira: 0
- 0,701312 × 2 = 1,402624 → Parte inteira: 1
- 0,402624 × 2 = 0,805248 → Parte inteira: 0
- 0,805248 × 2 = 1,610496 → Parte inteira: 1
- 0,610496 × 2 = 1,220992 → Parte inteira: 1
- 0,220992 × 2 = 0,441984 → Parte inteira: 0
- 0,441984 × 2 = 0,883968 → Parte inteira: 0
- 0,883968 × 2 = 1,767936 → Parte inteira: 1
- 0,767936 × 2 = 1,535872 → Parte inteira: 1
- 0,535872 × 2 = 1,071744 → Parte inteira: 1
- 0,071744 × 2 = 0,143488 → Parte inteira: 0
- 0,143488 × 2 = 0,286976 → Parte inteira: 0
- 0,286976 × 2 = 0,573952 → Parte inteira: 0
- 0,573952 × 2 = 1,147904 → Parte inteira: 1
Continuaríamos esse processo, mas já temos o suficiente para nossos 23 bits de mantissa.
Passo 5
Após a conversão, temos a representação binária aproximada de 0,005479:
0,00000010110100001111…
Passo 6
Agora, precisamos normalizar esse número em notação científica binária, ou seja, escrever na forma
.
Para isso, movemos a vírgula para a direita até termos apenas um dígito à esquerda:
0,00000010110100001111… = 1,0110100001111… × 2^{-8}
Aqui, o expoente é -8.
Passo 7
O próximo passo é calcular o valor do expoente no formato armazenado. Usamos um expoente com excesso. No caso de 8 bits, o excesso é
.
Então, o expoente armazenado será:
Convertendo 119 para binário:
119 = 01110111
Passo 8
Agora, pegamos a mantissa. Já normalizamos o número para
. A mantissa é a parte após a vírgula:
0110100001111…
Como temos apenas 23 bits para a mantissa, truncamos após 23 bits:
01101000011110011001100
Passo 9
Finalmente, juntamos todos os componentes:
- Sinal: 1
- Expoente: 01110111
- Mantissa: 01101000011110011001100
Então, a representação binária completa é:
1 01110111 01101000011110011001100
Resposta
O número -0,005479 é armazenado no computador como:
1 01110111 01101000011110011001100