Dado o sistema de aritmética de ponto flutuante F(2,10,-15,15), represente nele os seguintes números:
x3=(2,345)10;

Passo 1

Beleza, o que a gente tem aqui é um sistema de ponto flutuante
F(2, 10, −15, 15), ou seja:
  • base β=2
  • t=10 dígitos na mantissa
  • expoentes vão de eₘᵢₙ=−15 até eₘₐₓ=15
E o desafio é representar o número decimal

nesse sistema.
Pra resolver a gente vai:
  1. converter 2,345 pra binário;
  2. normalizar na forma ;
  3. ajustar mantissa em 10 bits (arredondar);
  4. montar o sinal, o expoente e a mantissa final.

Passo 2

Primeiro, converte a parte inteira e a fracionária de 2,345 pra binário.
– Parte inteira: 2 → lcl 0,345 times 2 = 0,690 &to& 0 0,690 times 2 = 1,380 &to& 1 (resto 0,380) 0,380 times 2 = 0,760 &to& 0 0,760 times 2 = 1,520 &to& 1 (resto 0,520) 0,520 times 2 = 1,040 &to& 1 (resto 0,040) 0,040 times 2 = 0,080 &to& 0 0,080 times 2 = 0,160 &to& 0 0,160 times 2 = 0,320 &to& 0 0,320 times 2 = 0,640 &to& 0 0,640 times 2 = 1,280 &to& 1 (resto 0,280) .
– Parte fracionária: pega 0,345 e multiplica por 2 várias vezes, guardando a parte inteira:
0,34510approx (0.0101100001)2
Isso nos dá, nos primeiros 10 bits,
2,34510 = (10.0101100001ldots)2
Logo

Passo 3

Agora normaliza pra forma 10.0101100001ldots2 = 1.00101100001ldots2 times 2^1 .
Temos
Então o expoente real é .

Passo 4

A mantissa normalizada é b1b2cdots b10 = 0010110000 .
Pega os 10 bits logo após o ponto em
, ou seja:
O 11º bit seria 1? (na prática a gente vê que o bit 11 dá zero continuando a multiplicação), então não aumenta (round-to-nearest mesmo deu pra simplesmente truncar aqui).

Passo 5

Pra montar no formato interno:
  • sinal (número positivo)
  • expoente armazenado = . O bias é geralmente =15, então
    .
    Em binário com 5 bits (porque valores cabe em 5 bits):
    .
  • mantissa de 10 bits = 0010110000.

Resposta

x3 = (+1)times1.00101100002times2^1 é representado em como
sinal | expoente (5 bits) | mantissa (10 bits)
0 | 10000 | 0010110000
e em notação matemática:

Exercícios relacionados