Buscar

ECT1303-2015.1-Aula2,3-Representacao_Erros

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 48 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

UFRN 
Universidade Federal do Rio Grande do Norte 
Escola de Ciências e Tecnologia 
Representação da Informação 
e Erros de Arredondamento 
ECT1303 – Computação Numérica 
• Manter o telefone celular sempre 
desligado/silencioso quando estiver em 
sala de aula; 
• Nunca atender o celular na sala de aula. 
2 
Objetivos 
• Introduzir os conceitos de exatidão e precisão, bem como 
de algarismos significativos; 
• Discutir a representação em ponto flutuante nos 
computadores ; 
• Definir os conceitos de truncamento e arredondamento; 
• Analisar os erros decorrentes do armazenamento de 
números nos computadores. 
3 
Erros 
• Solução de problema em engenharia 
– Modelo matemático 
– Métodos de resolução do modelo 
• Se possível, obtemos soluções analíticas 
• Contudo, as vezes o modelo não possui uma 
solução analítica ou esta é de dificil solução 
– Utilizar métodos numéricos (com o possivel auxilio de 
equipamentos eletrônicos: calculadora, computador) 
 
 
4 
Problema 
Fisico 
Modelo 
Matemático 
Solução 
Modelagem Resolução 
Erros 
• Portanto, a solução de um determinado problema 
apresenta erros nas duas fazes: 
5 
Modelagem Resolução 
Erros na fase de modelagem 
• Raramente se tem uma descrição matemática 
perfeita do sistema físico 
– A realidade é matemática? 
– Várias simplificações 
• Relatividade Geral → Gravitação de Newton 
• Erros nos dados de entrada 
• Ex: determinar a altura de um edifício com uma 
bolinha de metal e um cronometro 
– Desconsideramos velocidade do vento, resistência do ar, 
imprecisão do cronometro… 
 
6 
Erros na fase de resolução 
• Dois tipos básicos: 
 
7 
Erros de arredondamento 
Oriundos da forma de representação numérica em 
computadores (só podem representar quantidades 
com número finitos de algarismos). 
Erros de truncamento 
Resultam do uso de uma aproximação no lugar de 
um procedimento matemático exato. 
Algarismos Significativos 
• Quais as marcações dos ponteiros maiores dos 
altímetros? 
 
8 
Algarismos Significativos 
Algarismos significativos de um número 
são aqueles que podem ser usados com confiança. 
Correspondem ao número de algarismos corretos de 
uma medida mais um algarismo estimado! 
9 
Algarismos Significativos 
• Quais as marcações dos ponteiros maiores dos 
altímetros? 
9,2 6,58 
10 
Algarismos Significativos 
• Os zeros nem sempre são contados como algarismos 
significativos: 
– Podem indicar somente localização da vírgula! 
Exemplos: 
 - 0,000561, 0,00561 e 0,0561 têm 3 algarismos significativos 
 - 31.500 pode ter 3, 4 ou 5 algarismos significativos 
• Para evitar confusão, é usada notação científica. 
Exemplos: 
 - 5,61x10-1 possui 3 algarismos significativos 
 - 3,150x103 possui 4 algarismos significativos 
11 
Algarismos Significativos 
• Duas observações importantes: 
Algumas grandezas não podem ser representadas 
exatamente usando um número finito de algarismos 
significativos: 
 
O Engenheiro/Cientista deve saber com quantos 
algarismos significativos ele deve buscar uma solução 
numérica para seu problema! 
 
12 
Exatidão e Precisão 
• Ao cobrar pênaltis, um jogador acertou 10 vezes 
consecutivas o travessão. Ele foi exato, preciso, os dois 
ou nenhum dos dois? 
13 
Exatidão e Precisão 
• Os termos exatidão e precisão relacionados a cálculos e 
medições: 
Exatidão (Acurácia) 
Quão próximo o valor calculado 
ou medido está do verdadeiro 
Precisão 
Quão próximo cálculos ou 
medições sucessivas estão uma 
das outras 
14 
Exatidão e Precisão 
15 
Representação em Ponto Flutuante 
• Já foi visto em IF a representação de números inteiros na 
base 2. E quanto aos números reais? 
Como o computador armazena o número π? 
 
• É necessário saber converter um número real entre 
bases! 
Conversões para a base 10: 
195210 = (1x10
3 + 9x102 + 5x101 + 2x100)10 
23,9610 = (2x10
1 + 3x100 + 9x10-1 + 6x10-2)10 
 
110012 = (1x2
4 + 1x23 + 0x22 + 0x21 + 1x20)10 
10,1012 = (1x2
1 + 0x20 + 1x2-1 + 0x2-2 + 1x2-3)10 
 
16 
• Conversão da parte fracionária → decimal para binário 
 Considere o número decimal 
 
 em que deseja-se obter a representação binária 
 
Representação em Ponto Flutuante 
a) Multiplique o número decimal por 2. A parte inteira 
do resultado é o bit b1. 
b) Descarte a parte inteira do número real obtido, 
ficando somente a parte fracionária. 
c) Repita a) para obter os bits sucessivos b2, b3, ..., até 
que obtenha parte fracionária nula ou precisão 
desejada 
17 
Exemplos 
Encontrar o valor na base 2 dos seguintes números na base 10: 
34 
0,75 
4,125 
3,8 
33,023 
 
 
3,8 não tem representação exata na base 2! 
 
Erros computacionais de 
arredondamento! 
18 
• Representação em ponto flutuante normalizada: 
 
 
 
 é chamado de mantissa 
 é a base do sistema de numeração 
 é o expoente, inteiro, expresso em decimal e 
armazenado na base do sistema como inteiro com sinal 
 p é a precisão da representação 
 em que: 
Representação em Ponto Flutuante 
19 
• Representação em ponto flutuante normalizada: 
 
 
 
 
 
 
 
Representação em Ponto Flutuante 
Sistemas de Numeração em Ponto Flutuante 
 
 
 é a base, p é a precisão, m e M são os valores 
mínimos e máximos que o expoente pode assumir. 
20 
Exemplos 
• Ex1: Represente 31,41510 no sistema F(10,5,-2,2) 
 
31,415 = 0,31415 ∙ 102 
m𝑎𝑛𝑡𝑖𝑠𝑠𝑎 = 3 1 4 1 5 𝑒𝑥𝑝𝑜𝑒𝑛𝑡𝑒 = [2] 
 
• Ex2: Represente 2910 no sistema F(2,10,-7,7) 
 
2910 = 111012 = 0,11101 ∙ 2
5 = 0,11101 ∙ 21012 
m𝑎𝑛𝑡𝑖𝑠𝑠𝑎 = 1 1 1 0 1 𝑒𝑥𝑝𝑜𝑒𝑛𝑡𝑒 = [1 0 1] 
Se neste caso representarmos a mantissa com 10 dígitos 
teremos 
𝑚𝑎𝑛𝑡𝑖𝑠𝑠𝑎 = 1 1 1 0 1 0 0 0 0 0 𝑒𝑥𝑝𝑜𝑒𝑛𝑡𝑒 = [1 0 1] 
Exemplos 
Encontrar o valor na base 10 dos seguintes números que 
estão no sistema F(2,3,-3,3): 
 -0,101x22 
 0,100x2-3 
 -0,110x2-1 
 0,111x23 
22 
Quantos bits são necessários para representação no sistema 
F(2,3,-3,3), sabendo que um bit é usado como sinal da 
mantissa e outro como sinal do expoente? 
 
Qual o menor número positivo representado no sistema F(2,3,-3,3)? 
Representação em Ponto Flutuante 
0 1 1 1 1 0 0 
21 
Sinal da 
mantissa 
Sinal do 
expoente 
expoente mantissa 
20 2-1 2-2 2-3 
23 
Convenção: bit 0 -> + 
 bit 1 -> - 
Exemplos 
Quais números podem ser representados no sistema 
F(2,3,-3,3)? 
24 
Note que as mantissas possíveis, em módulo, são: 
0,100 = 0,510 0,101 = 0,62510 0,110 = 0,7510 0,111 = 0,87510 
e que os expoentes variam de -3 a 3: 
Representação em Ponto Flutuante 
25 
Representação em Ponto Flutuante 
– Menor real positivo representado em 
 
 
 
 
 
– Maior real positivo representado 
26 
Representação em Ponto Flutuante 
• Números reais máximos e mínimos que podem ser 
representados usando um sistema: 
0 xm -xm xM -xM 
Intervalo de 
representação 
Intervalo de 
representação underflow 
overflow overflow 
27 
Overflow: expoente maior que o expoente máximo 
Underflow: expoente menor que o expoente mínimo 
Representação em Ponto Flutuante 
0 0,0625 -0,0625 7 -7 
Intervalo de 
representação 
Intervalo de 
representação underflow 
overflow overflow 
• Observações importantes 
– Existe um intervalo limitado de quantidades que podem ser 
representadas num sistema em ponto flutuante! 
– Existe apenas um número finito de números reais que podem 
ser representados num determinadosistema. 
– O intervalo de representação aumenta conforme o módulo dos 
números cresce. 
F(2,3,-3,3): 
28 
Exemplos 
Represente os números 0,7510 e 1,4510 no sistema F(2,3,-3,3) 
dos exercícios anteriores. 
0,75 
 x2 
1,50 
0,50 
 x2 
1,00 
0,45 
 x2 
0,90 
0,90 
 x2 
1,80 
0,80 
 x2 
1,60 
0,60 
 x2 
1,20 
0,20 
 x2 
0,40 
Resolvendo 0,7510 : 
Parte Fracionária 
Resolvendo 1,4510: Parte Fracionária 
O que fazer nesse caso? 
 
29 
Truncamento e Arredondamento 
Truncar 
Significa abandonar todos os dígitos menos 
significativos a partir de uma determinada posição. 
Exemplo: 
Truncar (1,01110 ...)2 para 3 dígitos significativos. 
Nesse caso, os dígitos em vermelho, a partir do 4º 
dígito (incluso), seriam abandonados 
(1,01110 ... )2 
O número após o truncamento será: 
 
1,012 = 0,101x2
1 
 30 
Truncamento e Arredondamento 
Arredondar 
Significa truncar todos os dígitos menos significativos a 
partir de uma determinada posição, de forma a torná-lo 
mais próximo do número original. 
Regra para arredondamento em d casas de números 
representados em binário: 
 
- Se bd+1 for 0: x’ já está na forma arredondada 
- Se bd+1 for 1: adiciona-se 1 bd, tornando x’ = b1b2...(bd+1) 
 
Trunca-se x na posição d: x’ = b1b2...bd 
 
31 
Truncamento e Arredondamento 
Exemplo: 
Arredondar (1,01110 ...)2 para 3 dígitos significativos 
Nesse caso, os dígitos em vermelho serão excluídos e 
será adicionado 1 ao dígito em azul, pois o 1º dígito em 
vermelho é igual a 1 
(1,01110 ... )2 
O número após o arredondamento será: 
1,102 = 0,110x2
1 
 
32 
Representação em Ponto Flutuante 
• Voltando ao exercício: 
Represente o número 1,4510 no sistema F(2,3,-3,3) 
Usando truncamento 
O arredondamento gerou um 
ERRO menor 
 
Usando arredondamento 
1,012 = 0,101x2
1 
 = 1,2510 
1,102 = 0,110x2
1 
 = 1,5010 
33 
Definições de Erro 
No sentido estrito, erro verdadeiro (E) é definido como: 
E = valor verdadeiro - aproximação 
onde o Valor Verdadeiro = aproximação + E! 
Define-se: 
34 
Exemplo 
Calcular os erros relativos na representação de 1,4510 no sistema 
F(2,3,-3,3), considerando o truncamento e o arredondamento. 
Truncamento Arredondamento 
35 
Arredondamento de números da base 10 
Arredondar na base 10 para k casas 
Exemplo: Arredondar para 3 os números que estão com 5 
dígitos significativos: 
 (2,3555)10 - (0,23401x10
3)10 - (0,99144)10 - (0,99971)10 
 Respostas: 2,36 – 0,234x10
3 – 0,991 – 1,00 
36 
Epsilon (ε) de um Computador 
Considere um computador que manipula números reais a partir de um 
sistema . Qual o erro relativo máximo cometido na 
representação de um real –xM ≤ x ≤ xM nesse sistema? 
Vejamos o caso do sistema F(2,3,-3,3) já estudado: 
Para um mesmo expoente, os incrementos ∆x são constantes! 
Se definirmos o erro: 
Então, para cada expoente, Er será máximo quando x for o menor real 
representado! 
0,031250 
0,031250 
0,031250 
0,031250 
1,0 
1,0 
1,0 
1,0 
37 
Exemplo 
Calcular os erros relativos máximos no sistema F(2,3,-3,3) 
para os expoentes -2 e 3. 
Para o expoente -2: Para o expoente 3: 
Iguais! Coincidência? 
 
38 
Epsilon (ε) de um Computador 
Epsilon (ε) de um sistema em ponto flutuante 
Representa o maior erro relativo causado pela 
representação de um número real num sistema em 
ponto flutuante 
Para o sistema F(2,3,-3,3): 
39 
Aritmética Flutuante 
Os erros de arredondamento causados pela representação em 
computador tendem a se propagar e, algumas vezes, a se 
amplificar ao longo de cálculos efetuados. 
Exemplo com uma mantissa de 4 algarismos: 
 
 
 
 
 
Note uma ligeira perda de precisão com relação ao 
valor exato desta operação que é 1. 
1
3
 3 (0,3333100) (0,3000101)
 0,9999100
40 
Multiplicação e divisão 
A multiplicação e a divisão são particularmente simples em 
aritmética flutuante devido à lei dos exponenciais. 
Exemplo com uma mantissa de 4 algarismos: 
 
 
 
 

(0,4035106) (0,1978101)  0,0798123105
 0,7981104
41 
Adição e subtração 
É preciso ser prudente com a adição e subtração! 
 Primeiramente, adicionamos zeros à mantissa do número 
tendo o menor expoente de modo que os dois expoentes 
sejam iguais. 
 Em seguida, efetuamos a operação normalmente e 
colocamos o resultado em notação flutuante 
 Exemplo com uma 
 mantissa de 4 algarismos: 
 
 
 
 

0,4035106  0,1978104 
0,4035106  0,001978 106 
0,405478106 
0,4055106
42 
Operações de risco 
 Algumas operações são particularmente sensíveis aos 
erros de arredondamento. 
 
 Estas operações devem ser evitadas sempre que 
possível! 
 
 
 
43 
Operações de risco 
Adição de números com ordens de 
grandeza muito diferentes. 
 Exemplo com uma mantissa de 4 algarismos: 
 
 
 
 
 
 A lei dos expoentes e a aritmética flutuante fazem com que 
o número pequeno desapareça completamente frente ao 
grande. 
 
 
 
 

4000 0,001 0,4000104  0,1000102
 0,4000104  0,0000001104
 0,4000001104
 0,4000104
44 
Operações de risco 
Subtração de números quase iguais. 
 Exemplo com uma mantissa de 10 algarismos: 
 
 
 
 
 
 Os quatro zeros no final da mantissa não têm significado e 
assim perdemos 4 casas decimais. 
 
 
 
2-
2
22
10 000,50314200
100000503142,0
10 570,9937303410 990,99378065
98759876




45 
Operações de risco 
Subtração de números quase iguais. 
 Podemos obter um resultado mais preciso? SIM! 
 
 
 
 
 
 Nem sempre existe uma maneira trivial de resolver tais erros 
de aritmética flutuante. 
 
 
 

9876  9875 
1
9876  9875
 0,5031418679104
46 
Atividade 
Considere a função: 
a) Use o SciLab para calcular o valor de f(x) para x = 10, x = 1000 
e x = 100000. 
b) Use o sistema decimal com 6 algarismos significativos para 
calcular f(x) para os valores de x indicados na letra (a). 
Compare os resultados com os valores obtidos na letra (a). 
c) Transforme f(x) multiplicando a função por . 
 
 Usando a nova forma, calcule novamente o valor de f(x) para 
os três valores de x no sistema decimal com 6 algarismos 
significativos. Compare os resultados com aqueles obtidos na 
letra (a). 
 
 

f (x)  x( x  x 1)

x  x 1
x  x 1
47 
Atividade 
Computadores e softwares atuais usam o padrão IEEE 754-2008 
para representação em ponto flutuante. Alguns dos sistemas 
definidos nesse padrão são: 
 
 
 
 
 
 
 
Encontre os intervalos de overflow e underflow de cada sistema, 
assim como o epsilon da máquina. 
 
 
 
 
 
Nome do sistema Especificação 
Média precisão F(2,11,-14,15) – 16 bits 
Precisão simples F(2,24,-126,127) – 32 bits 
Precisão dupla F(2, 53, -1022, 1023) – 64 bits 
Precisão quádrupla F(2, 113, -16382, 16383) – 128 bits 
48

Outros materiais