Buscar

Prévia do material em texto

Arquitetura e Organização de 
Computadores:
Padrão IEEE 754 para ponto flutuante
Daniela Costa Terra – daniela.terra@ifmg.edu.br
 
 
INTRODUÇÃO
 Esquemas de representação:
• Sinal e Magnitude
• Representação em Excesso
• Complemento a Um
• Complemento a Dois
• Representação em Ponto Fixo
• Representação em Ponto Flutuante
2
INTRODUÇÃO
 É preciso lembrar que computadores necessitam representar 
também 
• Números não-inteiros, isso é, com parte fracionária não-nula?
• Ex.: 
3,1415926535897932384626433832795028841971693993751058209749
44592307816406286
• Números muito grandes ou muito pequenos
• Ex.:
0,00000000000000000000000000073 
2537000000000000000000000000000 
 Nenhum dos esquemas de representação vistos até aqui são bons 
para esses casos
3
Daniela
Carimbo
Daniela
Carimbo
Daniela
Carimbo
INTRODUÇÃO
 
 Para esses números é preciso usar notação científica, que em 
Computação é chamada de Ponto Flutuante
 Abaixo exemplos de representação em notação científica decimal:
• 0,00000000000000000000000000073dec ou 7,3 x 10
-28 ou 73x10-27
253700000000000000000000000000
dec
 ou 25,37 x 1029 ou 0,25 x 1031
 
4
fdfdf
Ponto Fixo vs. Ponto Flutuante
● Na representação em ponto fixo, a vírgula não é 
representada, mas assumida em alguma posição dentro dos n 
bits usados para representar o número
● A vírgula é subentendida à direita p-ésimo bit, para algum 
p < n
● Observe os exemplos a seguir: 
• Ex1: n = 8 e p = 2 
 (10,25)10 = (1010,01)2
 Representação em Ponto Fixo: (00101001)2
● Ex2: n = 8 e p = 3 para o mesmo valor 
(10,25)10 = (1010,01)2 
 Representação em Ponto Fixo: (01010010)2
 
Daniela
Carimbo
Daniela
Carimbo
Ponto Fixo vs. Ponto Flutuante
● Na representação em Ponto Fixo as operações de soma e 
subtração podem ser realizadas como se a vírgula não 
existisse:
• A vírgula sempre está no mesmo lugar
• Os números podem ser operados como se fossem 
inteiros
● Números negativos em Ponto Fixo podem ser representados 
usando alguma dos esquemas já vistos:
• Sinal e magnitude
• Complemento a 2
 
 
Ponto Fixo vs. Ponto Flutuante
● Mas qual é o problema do Ponto Fixo?
 
 
Ponto Fixo vs. Ponto Flutuante
● Mas qual é o problema do Ponto Fixo?
• Se o ponto é fixo está na mesma posição em todos os 
números
• Problema fundamental é definir a posição da vírgula
• A escolha envolve um compromisso entre precisão e 
abrangência:
• Precisão: o quão exata é a representação do número
• Abrangência: o quão larga é a faixa de valores 
representáveis
 
 
Ponto Fixo vs. Ponto Flutuante
● Observe as escolhas para a posição da vírgula!
• Supondo 1 bit à direita da vírgula: n = 4 e p= 1
• Considerando apenas positivos, a faixa é: 0 até 7,5
• Apenas é possível que a parte fracionária seja igual a 0 
ou igual a 0.5 
• Sequer é possível representar o número 2,3
 
posições
3 2 1 0
 
Número representado:
 
ex1 0 1 1 0 010,0
2
 = 2,0
10
 
ex2 0 1 1 1 010,1
2
 = 2,5
10
Daniela
Carimbo
Daniela
Carimbo
Ponto Fixo vs. Ponto Flutuante
● Observe as escolhas para a posição da vírgula!
• Aumentando a precisão para 2 bits: n = 4 e p= 2
• A precisão melhorou, poderíamos aproximar 2,25 para 
2,3
• Mas a abrangência piorou. Intervalo: 0.. 3,75 
posições
3 2 1 0
 
Número representado:
 
ex1 0 1 1 0 10,012 = 2,2510
 
ex2 0 1 1 0 10,10
2
 = 2,5
10
 
ex3 0 1 1 1 10,11
2
 = 2,75
10
Ponto Fixo vs. Ponto Flutuante
● A escolha da posição do ponto binário (vírgula) depende da 
aplicação
● Contudo a maioria dos computadores (desktop, servidores) 
são máquinas de propósito geral
• Nenhuma escolha será boa para todos os casos!
● A solução é permitir à vírgula flutuar na representação:
• para a esquerda para números muito grandes
• para a direita para números muito pequenos
● Essa solução, como mencionada, é o Ponto Flutuante
 
Padrão IEEE 754: ponto flutuante
● Padrão IEEE 754 é o esquema de representação em ponto 
flutuante mais importante para a maioria dos computadores 
● Padrão internacional ISO/IEC/IEEE 60559:2011
● Formatos:
• Precisão simples: 32 bits (8 bits para o expoente)
• Precisão dupla: 64 bits (11 bits para o expoente)
• Precisão estendida: 80 bits
● Representa os números em notação científica normalizada, 
observe a seguir... 
Padrão IEEE 754: ponto flutuante
Padrão IEEE 754: ponto flutuante
O 1 à esquerda do ponto
 binário ficará subentendido
, ou seja, não será armazenado!
Padrão IEEE 754: ponto flutuante
Padrão IEEE 754: precisão simples
Padrão IEEE 754: precisão simples
ou excesso de K .
 O K no padrão é também chamado de inclinação ou bias
Padrão IEEE 754: precisão simples
Padrão IEEE 754: precisão simples
Padrão IEEE 754: precisão simples
Padrão IEEE 754: precisão dupla
Padrão IEEE 754: precisão dupla
Padrão IEEE 754: precisão dupla
Padrão IEEE 754: precisão dupla
Padrão IEEE 754: precisão simples e dupla
Os expoentes
000..0 e 111..1
são reservados!
Padrão IEEE 754: qual número está representado?
Padrão IEEE 754: qual número está representado?
Exercícios de Fixação
Exercícios de Fixação
Exercícios de Fixação
	Slide 1
	Slide 2
	Slide 3
	Slide 4
	Slide 5
	Slide 6
	Slide 7
	Slide 8
	Slide 9
	Slide 10
	Slide 11
	Slide 12
	Slide 13
	Slide 14
	Slide 15
	Slide 16
	Slide 17
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30

Mais conteúdos dessa disciplina