Represente os seguintes números decimais numa máquina de calcular de 16 bits que utiliza o sistema de aritmética de ponto flutuante
. 312,0225
Passo 1
Beleza, vamos resolver esse exercício juntos! A gente precisa representar o número decimal 312,0225 em uma máquina de calcular que usa aritmética de ponto flutuante com 16 bits, seguindo o sistema
. Isso significa que vamos trabalhar com 2 bits para o sinal, 10 bits para o expoente, e os expoentes podem variar de -15 até 15. Vamos precisar entender como funciona a representação de ponto flutuante para transformar esse número decimal em binário dentro dessas especificações.
Passo 2
Primeiro, vamos determinar o sinal do número. Como 312,0225 é positivo, o bit de sinal será 0.
Passo 3
Agora, vamos converter a parte inteira do número (312) para binário. Dividindo sucessivamente por 2:
312 ÷ 2 = 156 resto 0
156 ÷ 2 = 78 resto 0
78 ÷ 2 = 39 resto 0
39 ÷ 2 = 19 resto 1
19 ÷ 2 = 9 resto 1
9 ÷ 2 = 4 resto 1
4 ÷ 2 = 2 resto 0
2 ÷ 2 = 1 resto 0
1 ÷ 2 = 0 resto 1
156 ÷ 2 = 78 resto 0
78 ÷ 2 = 39 resto 0
39 ÷ 2 = 19 resto 1
19 ÷ 2 = 9 resto 1
9 ÷ 2 = 4 resto 1
4 ÷ 2 = 2 resto 0
2 ÷ 2 = 1 resto 0
1 ÷ 2 = 0 resto 1
Lendo os restos de baixo para cima, temos 312 em binário: 100111000.
Passo 4
Em seguida, vamos converter a parte fracionária (0,0225) para binário. Multiplicamos a parte fracionária por 2 e anotamos a parte inteira de cada resultado:
0,0225 × 2 = 0,045 → 0
0,045 × 2 = 0,09 → 0
0,09 × 2 = 0,18 → 0
0,18 × 2 = 0,36 → 0
0,36 × 2 = 0,72 → 0
0,72 × 2 = 1,44 → 1
0,44 × 2 = 0,88 → 0
0,88 × 2 = 1,76 → 1
0,76 × 2 = 1,52 → 1
0,52 × 2 = 1,04 → 1
0,045 × 2 = 0,09 → 0
0,09 × 2 = 0,18 → 0
0,18 × 2 = 0,36 → 0
0,36 × 2 = 0,72 → 0
0,72 × 2 = 1,44 → 1
0,44 × 2 = 0,88 → 0
0,88 × 2 = 1,76 → 1
0,76 × 2 = 1,52 → 1
0,52 × 2 = 1,04 → 1
Parando por aqui, a parte fracionária em binário é aproximadamente 0.00001101.
Passo 5
Juntando a parte inteira e a fracionária, o número 312,0225 em binário fica aproximadamente: 100111000.00001101
Passo 6
Agora, vamos normalizar esse número para a forma científica binária: movemos a vírgula para que haja apenas um dígito à esquerda. Assim temos:
1,00111000000001101 ×
Passo 7
Determinar o expoente a ser armazenado. Como nosso sistema permite expoentes de -15 a 15, e o expoente é 8, vamos usar a representação em excesso (bias). O bias é calculado como
, onde n é o número de bits do expoente. Aqui, n=10, então bias=
.
Então, o expoente armazenado será: 8 + 511 = 519
Convertendo 519 para binário: 10 0000 0111
Passo 8
Determinar a mantissa. Depois de normalizar, a mantissa é a parte após a vírgula: 00111000000001101. Como temos 10 bits para a mantissa, vamos truncar ou arredondar após 10 bits:
0011100000
Passo 9
Finalmente, juntar todos os componentes:
- Sinal: 0
- Expoente: 1000000111
- Mantissa: 0011100000
Resposta
A representação de 312,0225 na máquina de 16 bits é:
0 1000000111 0011100000