Cálculo Numérico – CN Prof. Lineu Mialaret Aula 9: Noções Básicas sobre Erros (3)

28
©Prof. Lineu Mialare Aula 9 - 1/28 Cálculo Numérico Cálculo Numérico – CN Prof. Lineu Mialaret Aula 9: Noções Básicas sobre Erros (3) Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP Campus de Caraguatatuba Licenciatura em Matemática 1 0 Semestre de 2013

description

Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP Campus de Caraguatatuba Licenciatura em Matemática 1 0 Semestre de 2013. Cálculo Numérico – CN Prof. Lineu Mialaret Aula 9: Noções Básicas sobre Erros (3). Erros de Representação. - PowerPoint PPT Presentation

Transcript of Cálculo Numérico – CN Prof. Lineu Mialaret Aula 9: Noções Básicas sobre Erros (3)

Page 1: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 1/28Cálculo Numérico

Cálculo Numérico – CN Prof. Lineu Mialaret

Aula 9: Noções Básicas sobre Erros (3)

Instituto Federal de Educação, Ciência e Tecnologia de São Paulo - IFSP

Campus de Caraguatatuba

Licenciatura em Matemática

10 Semestre de 2013

Page 2: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 2/28Cálculo Numérico

Na construção de um equipamento computacional, uma questão importante a ser considerada em sua arquitetura é a forma que será adotada para representar os dados numéricos.

Basicamente, na memória de um equipamento, cada número é armazenado em uma posição que consiste de um sinal que identifica se o número é positivo ou negativo e um número fixo e limitado de dígitos significativos.

Erros de Representação

Page 3: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 3/28Cálculo Numérico

Nas maquinas digitais, um digito binário é denominado BIT (do inglês, binary digit).

Um grupo de oito bits corresponde a 1 byte. Dessa forma, percebe-se que a representação dos números binários num computador é feita com um número finito de bits.

A esse tamanho finito de bits é dado o nome palavra de computador. O tamanho da palavra do computador depende de

características internas à arquitetura do mesmo. Em geral, os microcomputadores padrão PC têm tamanho

de palavra de 16 e 32 bits. Computadores modernos tem palavras de 64 bits ou mais.

Quanto maior o tamanho da palavra do computador mais veloz e mais preciso será o computador.

Ponto Flutuante Normalizado (1)

Page 4: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 4/28Cálculo Numérico

Um número no sistema de ponto flutuante é caracterizado por uma base b, um número de dígitos significativos n e um expoente exp.

Diz-se que um número real nr está representado no sistema de ponto flutuante se for possível escrevê-lo da seguinte maneira:

Onde:m é a mantissa do número;b 2 é a base do número; eexp é o expoente da base.

Ponto Flutuante Normalizado (2)

Page 5: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 5/28Cálculo Numérico

Neste sistema de ponto flutuante, as seguintes condições devem ser verificadas,

Onde:n é o número máximo de dígitos da mantissa; ed1,d2,...,dn são os dígitos significativos da mantissa do

sistema de representação, com o primeiro dígito satisfazendo a condição

E os demais dígitos satisfazem a condição a seguir,

Ponto Flutuante Normalizado (3)

Page 6: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 6/28Cálculo Numérico

O expoente exp varia da seguinte maneira,

onde:expmín 0;expmáx 1; ee os expoentes são inteiros.

Exemplo 1: Seja x = 34,2 e seja b = 10 e n = 4.Logo, x = 0,3420 × 102.

Exemplo 2: Seja x = 0,1 e seja b = 2 e n = 9.Logo, x = 0,110011001 × 2-3.

Ponto Flutuante Normalizado (4)

Page 7: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 7/28Cálculo Numérico

Uma máquina digital (que opera em base 2) armazena um número internamente da seguinte forma esquematizada a seguir,

Ponto Flutuante Normalizado (5)

Page 8: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 8/28Cálculo Numérico

Ponto Flutuante Normalizado (6)

b n

Parâmetros de aritméticas de ponto flutuante utilizadas em alguns computadores digitais.

Page 9: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 9/28Cálculo Numérico

A união de todos os números em ponto flutuante, juntamente com a representação do zero, constitui o denominado Sistema de Ponto Flutuante Normalizado (SPF), que se indica por

No SPF o zero é representado da seguinte maneira:

Ponto Flutuante Normalizado (7)

Page 10: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 10/28Cálculo Numérico

Dado um SPF na forma genérica abaixo,

O menor positivo exatamente representável, não nulo, é o real formado pela menor mantissa multiplicada pela base elevada ao menor expoente, isto é,

O maior positivo exatamente representável é o real formado pela maior mantissa multiplicada pela base elevada ao maior expoente, isto é,

Ponto Flutuante Normalizado (8)

Page 11: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 11/28Cálculo Numérico

O número máximo de mantissas positivas possíveis é dado por,

O número máximo de expoentes possíveis é dado por,

O número de elementos positivos representáveis é dado pelo produto entre o número máximo de mantissas pelo máximo de expoentes, isto é,

Ponto Flutuante Normalizado (9)

Page 12: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 12/28Cálculo Numérico

Considerando-se que dado um número real nr SPF tem-se que −nr SPF e a representação do zero também, pode-se concluir que o número total de elementos exatamente representáveis NRt é dado por,

Ponto Flutuante Normalizado (10)

Page 13: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 13/28Cálculo Numérico

Exemplo 3: Considere o sistema de ponto flutuante SPF (b, n, expmín, expmáx) = SPF (3, 2, – 1, 2), isto é, de base 3, 2 dígitos na mantissa, menor expoente igual a –1 e maior expoente 2. Para este sistema tem-se que, a) O menor número exatamente representável,

b) O maior número exatamente representável,

Ponto Flutuante Normalizado (11)

Page 14: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 14/28Cálculo Numérico

Exercício 1: Para o SPF anterior, qual é a quantidade de reais positivos exatamente representáveis?

Ponto Flutuante Normalizado (12)

Page 15: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 15/28Cálculo Numérico

Exercício 1: Para o SPF anterior, qual é a quantidade de reais positivos exatamente representáveis?Tem-se que a quantidade de reais positivos exatamente

representáveis é dada pelo produto entre todas as mantissas possíveis de dois dígitos, formadas com os dígitos da base 3, isto é, 0,10; 0,11; 0,12; 0,20; 0,21; 0,22; e todas as possibilidades de expoentes, que no caso são

1, 0, 1, 2. Desta forma, os 24 positivos exatamente representáveis

estão listados a seguir,

Ponto Flutuante Normalizado (13)

Page 16: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 16/28Cálculo Numérico

Exercício 1: Para o SPF anterior, qual é a quantidade de reais positivos exatamente representáveis?

Ponto Flutuante Normalizado (14)

Page 17: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 17/28Cálculo Numérico

Considerando-se o exemplo anterior, sabe-se que se um real x ∈ SPF, então -x ∈ SPF e, como no sistema de ponto flutuante normalizado o zero é uma representação, tem-se que os números reais representáveis de SPF pertencem ao conjunto a seguir,

Todos os reais que não pertencem à união dos intervalos anteriores não são representáveis e qualquer tentativa de representação fora dos intervalos anteriores constitui-se em uma mensagem de erro, isto é,

Ponto Flutuante Normalizado (15)

Page 18: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 18/28Cálculo Numérico

Erro de Underflow, se a tentativa de representação satisfizer,

Erro de Overflow, se a tentativa de representação satisfizer,

Lembrar que

Ponto Flutuante Normalizado (16)

Page 19: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 19/28Cálculo Numérico

Exemplo 4: Considere o sistema de ponto flutuante SPF (b, n, emín, emáx) = SPF (2, 2, – 1, 2), isto é, de base 2, 2 dígitos na mantissa, menor expoente igual a –1 e maior expoente 2. Para este sistema tem-se que, Os números serão

Convertendo para decimal, tem-se

Com isso, os únicos números positivos representáveis nesse computador são,

Ponto Flutuante Normalizado (17)

Page 20: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 20/28Cálculo Numérico

Ou seja, tem-se os números 1/4,1/2,1,2,3/8,3/4,3/2 e 3, representados na reta numerada abaixo,

Alem desses números, os seus respectivos números negativos e o numero zero também serão representados.

E o número total de elementos é 17.

Obs.: O conjunto dos números de ponto flutuante é discreto, e não

contínuo como os números reais. Não se tem mais o conceito que entre dois números sempre existe um outro. Esse fato pode ter consequência desastrosa.

Ponto Flutuante Normalizado (18)

Page 21: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 21/28Cálculo Numérico

O conjunto dos números reais é infinito, entretanto, a sua representação em um sistema de ponto flutuante é limitada, pois é um sistema finito.

Essa limitação tem duas origens: A faixa dos expoentes é limitada (expmín exp expmáx); A mantissa representa um número finito de números

(bn-1 m bn-1)

Erros na Representação dos Números (1)

Page 22: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 22/28Cálculo Numérico

Relembrando, sempre que uma operação aritmética produz um número com expoente superior ao expoente máximo, tem-se o fenômeno de Overflow. De forma similar, operações que resultem em expoente inferior ao expoente mínimo tem-se o fenômeno de Underflow.

Exemplo 5: Considerando o Exemplo 4 já apresentado, pode-se observar na figura abaixo quais as regiões que ocorrem overflow e underflow.

Erros na Representação dos Números (2)

Page 23: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 23/28Cálculo Numérico

Exemplo 6: Considere o sistema de ponto flutuante SPF (b, n, emín, emáx) = SPF (10, 2, - 5, 5), isto é, de base 10, 2 dígitos na mantissa, menor expoente igual a -5 e maior expoente 5. Sejam x = 875 e y = 3172, e deseja-se calcular x × y. Primeiro, deve-se arredondar os números e armazena-los

no formato indicado. A operação de multiplicação é efetuada usando 2n dígitos.

x = 0,88 × 103, y =0,32 x 104 e x × y = 0,2816 x 107

Como o expoente é maior que 5, resulta em overflow.

Erros na Representação dos Números (3)

Page 24: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 24/28Cálculo Numérico

Exemplo 7: Considere o sistema de ponto flutuante SPF (b, n, emín, emáx) = SPF (10, 2, - 5, 5), isto é, de base 10, 2 dígitos na mantissa, menor expoente igual a -5 e maior expoente 5. Sejam x = 0,0064 e y = 7312, e deseja-se calcular x ÷ y. Primeiro, deve-se arredondar os números e armazena-los

no formato indicado. A operação de divisão é efetuada usando 2n dígitos.

x = 0,64 × 10-2, y =0,73 x 104 e x÷y = 0,8767 x 10-6

O resultado dessa operação resultou em um valor menor que o computador pode armazenar, ou seja, resulta em underflow.

Erros na Representação dos Números (4)

Page 25: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 25/28Cálculo Numérico

Exemplo 8: Seja um computador que opere com apenas 6 dígitos na mantissa, ou seja, que só possa armazenar números no formato nr = ± 0,d1d2d3d4d5d6 × 10exp.Como armazenar nessa máquina o número que se segue,

Como o número (0,11)10 que não tem representação binária finita, tem-se neste caso,

Erros na Representação dos Números (5)

Page 26: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 26/28Cálculo Numérico

Exemplo 9: Seja a representação binária de 0,6 e 0,7, conforme apresentada a seguir,

Se esses dois números forem representados no sistema de ponto flutuante SPF (2, 2, -1, 2), eles serão representados igualmente por 0,10 × 20.

Esse número equivale a 0,5 em decimal. Portanto, tanto o 0,6 quanto o 0,7 serão considerados 0,5.

Erros na Representação dos Números (6)

Page 27: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 27/28Cálculo Numérico

Exercício 2: Sejam x = 5/3, y = 7/27 e z =8/9, e o sistema de ponto flutuante normalizado SPF (3, 2, –1, 2). Calcular x+(y+z) e (x+y)+z.

Erros na Representação dos Números (7)

Page 28: Cálculo Numérico – CN  Prof. Lineu Mialaret  Aula 9:  Noções Básicas sobre Erros (3)

©Prof. Lineu MialaretAula 9 - 28/28Cálculo Numérico

Exercício 2: Sejam x = 5/3, y = 7/27 e z =8/9, e o sistema de ponto flutuante normalizado SPF (3, 2, –1, 2). Calcular x+(y+z) e (x+y)+z.

Tem-se então que,

Logo,

Erros na Representação dos Números (8)