Escolar Documentos
Profissional Documentos
Cultura Documentos
Ciência da Computação
Introdução à Ciência da Computação
Luciana Recart Cardoso
luciana.cardoso@ifgoiano.edu.br
Notação de Ponto Fixo
Utiliza um ponto que funciona da mesma forma que o ponto da notação
decimal.
• os dígitos à esquerda do ponto representam a parte inteira do valor;
• os dígitos à direita do ponto representam a parte não inteira,
• o expoente da base 2: 2 decrementado em 1 a cada casa afastada do
ponto.
Exemplo:
2
Soma e subtração de números
fracionários
Basta alinharmos os pontos e aplicarmos o mesmo algoritmo de adição,
ou subtração binária demonstrada anteriormente.
3
Ponto Flutuante –
para que serve?
4
Representação dos números inteiros
negativos e não negativos utilizando
a Notação de Excesso
Cada número é codificado como um padrão de bits, de comprimento
convencionado.
5
Notação de Excesso
6
Notação de Excesso
Na tabela anterior, o padrão foi escolhido para representar o ZERO, os padrões que
o seguem serão utilizados para representar 1, 2, 3. . . , os padrões que o precedem
serão adotados para a representação dos inteiros negativos -1, -2, -3. . .
Exemplo:
7
Motivo da criação da Notação de Ponto
Flutuante
O Ponto Fixo, é do tamanho da
parte inteira e da fracionária, fica fixo
com relação a seu armazenamento
em memória, logo para números com
a parte apenas inteira, a região
alocada para tratar a parte
fracionária será inutilizada e vice-
versa. Para evitar este desperdício
criou-se a Notação de Ponto
Flutuante.
8
Notação de Ponto Flutuante
9
Notação de Ponto Flutuante
Continuação
0 1 1 0 1 0 1 1
10
Notação de Ponto Flutuante
Continuação (um expoente negativo codifica um
0 1 1 0 1 0 1 1 deslocamento para a esquerda do ponto
binário com a adição do valor 0).
Como resultado temos: 10.11
10.11 representa na Notação de Ponto
Fixo: = 1×21 + 0×20 + 1×2-1 + 1×2-2
= 2+0+0,5+0,25 = 2,75
Figura 2 - Divisão de 1 byte nos campos da Notação de Ponto Flutuante preenchido
Observamos que o bit de sinal do nosso
Depois, extraímos o conteúdo do campo do exemplo é 0, assim, o valor representado
expoente (interpretamos como um inteiro em três é positivo (+2,75).
bits - método de representação de excesso), o
resultado é o número positivo 2. Portanto, Figura 3 - Vídeo sobre a Notação de Ponto
Flutuante
devemos deslocar o ponto binário dois bits à direita
http://youtu.be/psyH7eBVLr4
11
Notação de Ponto Flutuante - notação
de excesso para representar o expoente
Para representar o expoente no sistema
de ponto flutuante devemos comparar maior
as amplitudes de dois valores. >?
Emparelhar-se as suas representações
da esquerda para a direita em busca
do primeiro bit em que os dois diferem.
Se ambos os bits de sinal forem iguais a
‘0’, o maior dos dois será aquele que Quando os bits de sinal forem iguais a
primeiro apresentar, um ‘1’ da esquerda ‘1’, o maior número é aquele que
para a direita. apresentar o ‘0’ na diferença dos
padrões (sempre percorrendo o número
Ao comparar os dois padrões, conclui-se da esquerda para a direita).
que o primeiro padrão é maior que o
segundo.
12
Notação de Ponto Flutuante -
Problema com Arredondamento
Consideremos o número 2,625 no sistema de ponto flutuante de um byte, convertemos
em binário, obtendo 10.101. Entretanto, não há espaço suficiente no campo da mantissa
e o último 1, que representa a última parcela: 0,125, é desprezada (vide figura 4).
2,62510 → 10.1012
Expoente → 110
Mantissa → 10101