Um sistema de ponto flutuante pode ser expresso pela função
Por exemplo, dado o sistema
, o número
é representado como
. 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.
iv)
iv)
Passo 1
Beleza, vamos começar resumindo o que a questão está pedindo. A gente está lidando com sistemas de ponto flutuante, que são uma forma de representar números reais em computadores de maneira eficiente. A função geral desse sistema é dada por
, onde:
-
é a base numérica (como base 10 ou base 2). -
é o número de dígitos na mantissa (a parte que carrega os dígitos significativos do número). -
e definem o intervalo dos expoentes permitidos.
A questão específica nos apresenta o sistema
, que está na base 2 (binária), e pede para representar um número nesse sistema usando truncamento, além de indicar possíveis casos de underflow e overflow. Para resolver isso, vamos precisar entender como funciona a representação de números em ponto flutuante, como aplicar o truncamento e identificar quando ocorre underflow (quando o número é muito próximo de zero para ser representado) e overflow (quando o número é muito grande para ser representado).
Passo 2
Primeiro, vamos entender o que significa o sistema
. Aqui, estamos trabalhando na base 2, então todos os números serão representados usando apenas 0s e 1s.
- O primeiro conjunto de dígitos,
, representa a mantissa. Como temos 4 bits, a mantissa pode variar de 0000 a 1111. - O segundo conjunto,
, representa o expoente. Com 2 bits, podemos representar expoentes de 00 a 11.
Passo 3
Agora, vamos definir como interpretar a mantissa e o expoente nesse sistema:
-
Mantissa: Em ponto flutuante, a mantissa geralmente é normalizada, ou seja, tem um valor entre 1 e a base. Em sistema binário, isso significa que a mantissa tem a forma
, onde “xxx” são os bits significativos após a vírgula. -
Expoente: Representa a potência da base que multiplica a mantissa. Com 2 bits, podemos ter expoentes de 0 a 3 (em decimal).
Passo 4
Vamos ver como representar um número específico, por exemplo,
, no sistema dado
. Porém, note que precisamos converter esse número para a base 2, já que nosso sistema é binário.
No entanto, para simplificar, vamos considerar um número genérico
e ver como representá-lo nesse sistema.
Passo 5
Para representar
no sistema
:
-
Determinar a mantissa e o expoente:
- A mantissa será representada pelos 4 bits, e o expoente pelos 2 bits.
-
Normalizar a mantissa:
- Garantir que a mantissa está na forma
.
- Garantir que a mantissa está na forma
-
Aplicar o truncamento:
- Se a representação binária tiver mais bits do que o sistema permite, cortamos (truncamos) os bits excedentes.
Passo 6
Vamos dar um exemplo prático. Suponha que queremos representar o número decimal 5 no sistema
:
-
Converter 5 para binário:
-
Normalizar a mantissa:
-
Representar no sistema:
- Mantissa:
precisa ser representada com 4 bits: (truncando se necessário). - Expoente:
em binário com 2 bits: .
- Mantissa:
Então,
seria representado como
.
Passo 7
Agora, vamos falar sobre underflow e overflow:
-
Underflow ocorre quando o número é muito pequeno para ser representado no sistema, ou seja, quando o expoente necessário é menor que o mínimo permitido (nesse caso, 00).
-
Overflow acontece quando o número é muito grande para ser representado, exigindo um expoente maior que o máximo permitido (nesse sistema, 11).
Por exemplo:
-
Se tentarmos representar
, pode resultar em underflow se a mantissa normalizada exigisse um expoente menor que 00. -
Se tentarmos representar
, pode causar overflow se o expoente necessário fosse maior que 11.
Resposta
Assim, no sistema
:
-
Representação de números: Usamos 4 bits para a mantissa e 2 bits para o expoente, aplicando truncamento quando necessário.
-
Underflow: Ocorre quando o número é tão pequeno que não pode ser representado com o expoente disponível.
-
Overflow: Acontece quando o número é tão grande que excede o expoente máximo permitido pelo sistema.
Exercícios relacionados
Um sistema de ponto flutuante pode ser expresso pela função
Por exemplo, dado o sistema
, o número
é representado como
. 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.
v)
v)
Um sistema de ponto flutuante pode ser expresso pela função
Por exemplo, dado o sistema
, o número
é representado como
. 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.
iv)
iv)
Seja o sistema de ponto flutuante
.
d) Mostre que o número de números de pontos flutuantes possíveis é dado por
d) Mostre que o número de números de pontos flutuantes possíveis é dado por
Converta para a base binária os seguintes números decimais: