Questão 6 Converta o número para a base 2 e escreva o número binária na forma de ponto flutuante com precisão dupla: Máquina de 64 bits: exp
=11
bits; frac
=52
bits;
(s=1
bit, onde
x=(-1)^{s} M \times 2^{c-B I A S}
, com BIAS
=1023
e
M=\left(1 . m_{1} m_{2} \cdots m_{51} m_{52}\right)_{2}
).
s|c11 c10 cdots c3 c2 c1| m1 m2 cdots m51 m52
x=(128.1)_{10}

Passo 1

O enunciado pede para escrever x=(128.1)10 em ponto flutuante IEEE- 754 de dupla precisão ( 64 bits), com 1 bit de sinal s, 11 bits de expoente c (com BIAS=1023) e 52 bits de fração m1cdots m52. Para isso vamos:
1. Converter 128.1 para binário;
2. Normalizar como x = (-1)^s,(1m1m2cdots)2 times 2^e;
3. Calcular o expoente armazenado c = e + 1023 e sua forma binária de 11 bits;
4. Extrair os 52 bits de mantissa e aplicar o arredondamento round-to-nearest-even.

Passo 2

Converter as partes de 128.1:
— Parte inteira:
128 = 2^7 implies (128)10 = (10000000)2
— Parte fracionária 0.1: multiplicamos por 2 sucessivamente:
0.1times2=0.2;(0),;0.2times2=0.4;(0),;0.4times2=0.8;(0),;0.8times2=1.6;(1),;ldots
Isso gera
0.110=(0.0001100110011ldots)2,
com padrão periódico “ 0011”.
Portanto
128.110 = (10000000.0001100110011ldots)2

Passo 3

Normalizando em base 2:
10000000.000110011ldots = 1.00000000000110011ldots times 2^7
Logo o expoente não-viés é e=7 e o campo de expoente armazenado é
c = e + 1023 = 7 + 1023 = 1030
Em 11 bits:
103010 = (10000000110)2
Como x>0, temos s=0.

Passo 4

A mantissa M=(1m1m2cdots m52)2 vem dos 52 bits após o ponto em
1.00000000000110011ldots
Os primeiros 7 bits após o “ 1.” são zeros, depois aparece a repetição “ 0011”. Assim
m1cdots m8 = 0,0,0,0,0,0,0,0,
e a partir de m9 repetimos “ 0011” até preencher 52 bits. Em grupos de 4 bits isso dá:
m1cdots m52 = underbrace0000;0000m1m8 ;underbrace0011;0011;cdots;001111 vezes 0011
Total: 8 + 4cdot11 =52 bits.
Arredondamento: o 53.º bit (guard) é 0 e há bits menores =1 (sticky), mas como guard =0 o valor fica abaixo de meio ULP, então não incrementamos. Mantissa final permanece a acima.

Resposta

0 | 10000000110 | 0000000000110011001100110011001100110011001100110011

Exercícios relacionados