Um sistema de ponto flutuante pode ser expresso pela função
F=F(b, n, e1, e2)
Por exemplo, dado o sistema F(10,3,-4,4), o número x=-279,15 é representado como x=-0,279 times 10^3. Dados os sistemas de aritmética de ponto flutuante a seguir, represente os números (utilize truncamento), indicando possíveis casos de underflow e overflow.
iii) -(11,111)2

Passo 1

Beleza, vamos lá! Temos um exercício sobre sistemas de ponto flutuante. O que isso significa? Em computação, números reais são representados de forma aproximada usando uma base (como 2 para binário), um número limitado de dígitos significativos e um expoente. Nosso objetivo aqui é representar o número binário negativo -(11,111)2 nesse tipo de sistema, usando truncamento. Também vamos verificar se ocorre underflow (quando o número é muito pequeno para ser representado) ou overflow (quando é muito grande).

Passo 2

Primeiro, vamos entender o número que temos: -(11,111)2. Esse é um número binário negativo. Para representá-lo em ponto flutuante, precisamos decompor esse número na forma:
x = -m times 2^e
onde:
  • m é a mantissa (parte significativa),
  • e é o expoente.
Vamos precisar:
  • A base do sistema, que aqui é 2 (pois é binário).
  • O número de dígitos significativos (n) que o sistema permite.
  • Os limites do expoente ( e1 e e2) que definem o menor e o maior valor que o expoente pode assumir.

Passo 3

Primeiro, vamos converter -(11,111)2 para sua forma decimal para facilitar a compreensão.
11,1112 = 1 times 2^1 + 1 times 2^0 + 1 times 2^-1 + 1 times 2^-2 + 1 times 2^-3 = 2 + 1 + 0,5 + 0,25 + 0,125 = 3,875
Então, temos x = -3,875.

Passo 4

Agora, vamos representar x = -3,875 na forma de ponto flutuante x = -m times 2^e. Para isso, precisamos normalizar o número, ou seja, ajustar a mantissa para que fique na forma 1xxxxx.
3,875 = 1,9375 times 2^1
Portanto:
x = -1,9375 times 2^1

Passo 5

Vamos agora considerar o sistema de ponto flutuante em questão. Suponhamos que o sistema seja definido como F(b=2, n=4, e1=-2, e2=2). Isso significa:
  • Base b = 2 (binário).
  • Número de dígitos significativos n = 4.
  • Expoente mínimo e1 = -2.
  • Expoente máximo e2 = 2.

Passo 6

Com n = 4, nossa mantissa pode ter até 4 dígitos binários significativos. Como nossa mantissa atual é 1,9375, que em binário é 1,1111, vamos truncar após os 4 dígitos:
m = 1,111
Observação: Estamos truncando, não arredondando, então simplesmente cortamos após o quarto dígito.

Passo 7

Agora, precisamos verificar se o expoente e = 1 está dentro dos limites do sistema, ou seja, entre e1 = -2 e e2 = 2. No nosso caso, 1 está dentro desse intervalo, então não teremos overflow nem underflow.

Passo 8

Finalmente, juntando tudo, a representação em ponto flutuante de x = -3,875 no sistema F(2, 4, -2, 2) é:
x = -1,111 times 2^1

Resposta

A representação em ponto flutuante de -(11,111)2 no sistema F(2, 4, -2, 2) é:
x = -1,111 times 2^1
Não ocorre underflow nem overflow nesse caso.

Exercícios relacionados