Universidade Federal de Santa Catarina - Centro Tecnológico - Depto. de Informática e Estatística INE5202 Cálculo Numérico

Tamanho: px
Começar a partir da página:

Download "Universidade Federal de Santa Catarina - Centro Tecnológico - Depto. de Informática e Estatística INE5202 Cálculo Numérico"

Transcrição

1 UFSC INE Universidade Federal de Santa Catarina - Centro Tecnológico - Depto. de Informática e Estatística INE5202 Cálculo Numérico Cap. 1) Erros Numéricos Principais fontes deste material: Faires & Burden, Numerical Analysis, 9th ed., Brooks/Cole, (Nro BU/UFSC: B949n) Cheney & Kincaid, Numerical Mathematics and Computing, 6th ed., Thomson Brooks/Cole, (Nro BU/UFSC: C518n) Recktenwald, Numerical Methods with Matlab, Prentice-Hall, Wikipedia e outras fontes da Internet Alguns tipos de falhas em sistemas computacionais estão fora do escopo da Computação Numérica: Falhas de hardware Dados mal informados (incerteza na entrada) Erros lógicos em software: Programas matemáticos estão sujeitos a bugs, como qualquer software. Mas há erros específicos da Computação Numérica que são inevitáveis: Arredondamento: quando dígitos à direita do ponto são descartados. Há um limite de memória para o armazenamento de qualquer nro. Truncamento: quando processos que deveriam ser repetidos infinitas vezes são substituídos por finitos. Queremos construir algoritmos para problemas numéricos que sejam insensíveis aos erros de arredondamento; cujo erro de truncamento fique abaixo de uma tolerância prescrita. Números em computadores (bits e bytes) Representação de nros no computador(trechos de material da Profa. Nolan, Berkeley) Quando entramos um número em um computador: Não é realmente preciso saber como ele será representado na máquina; Podemos supor que seu significado é preservado, quando este nro é mapeado do nosso problema para o computador. No entanto, já que pretendemos realizar computações numéricas: Temos, no mínimo, que entender o que pode dar errado; Temos que lidar com os casos especiais que podem levar a resultados errados. Lições desta seção (Trechos de material da Profa. Nolan, Berkeley) Representar nros reais em um computador quase sempre envolve uma aproximação e uma perda de dígitos em potencial Testar a igualdade de dois nros reais em um computador não faz sentido: Aproximações podem fazer com que nros iguais tenham representações diferentes Teste melhor: Diferença entre eles < Menor nro discernível naquela máquina?

2 UFSC INE Nros podem vir a ser muito pequenos ou muito grandes : Pode ocorrer overflow ou underflow (não existem na matemática abstrata) A ordem das operações pode ser importante Quanto mais espaço usamos para representar um nro: Mais precisa é a representação; Mas: mais memória é consumida. Para entender estes pontos, precisamos ver como nros são representados em computadores. Começaremos com o tipo básico: um inteiro. Antes: modo como a informação é armazenada em um computador... Números em computadores Computadores usam precisão finita : Quantidade fixa de dígitos para representar um nro. Facilita gerenciamento da memória. Permite cálculos mais rápidos. Bits e bytes (Trechos de material do Prof. Paul Murrell, Computadores são dispositivos binários: Menor unidade de informação tem dois estados ( 0 e 1 ). Naturalmente: manipulam números binários (em base 2). Bit: um dígito binário (um 0 ou um 1 ). Byte: grupo de 8 bits. Palavra ( word ): nro de bits processados por vez (32 ou 64). Ex.: word byte bit No nível mais baixo, um conjunto de dados é apenas algo assim: Número de bytes e palavras usados para cada nro depende de: formato + sistema operacional + hardware Na maior parte dos casos: uma letra ocupa 1 byte (código ASCII ) um inteiro ocupa uma palavra (word) um real ocupa uma ou duas palavras (depende do formato) Exemplos: a letra A (código ASCII 65) ocupa 1 byte: o texto erros ocupa 5 bytes o texto ocupa 5 bytes também o inteiro ocupa 4 bytes (1 palavra) (assim como o inteiro ) o real ocupa 4 ou 8 bytes (assim como o real )

3 UFSC INE Bits e bytes e Números Basicamente, 2 tipos de números: inteiros e reais (ou complexos). Identificados por símbolos (12, π, 5.67, ). Durante processamento: valores precisam ser armazenados na memória. Requer tradução do formato simbólico para bits. Tradução é restrita pelo nro de bits disponível para cada tipo de nro. Inteiros simbólicos são trocados por inteiros com faixa limitada de valores. Reais simbólicos (exatos) correspondem a números de ponto flutuante: com faixa limitada de valores e nro limitado de dígitos. Representações de números em bases diferentes Um erro numérico pode ocorrer simplesmente porque: Dados são informados ao computador em base 10 (decimal) Mas o computador processa nossos dados em base 2 Necessário conhecer representações de nros em outras bases, além da decimal 1.1) Bases - Definições Def.: Sistema de Numeração: Regras para representar quantidades matemáticas (números). Def.: BASE: Quantidade de símbolos utilizados. Ex.: o sistema decimal (base 10) usa 10 símbolos Notação decimal: Cada dígito representa coeficiente de potência de 10: = Valor do dígito depende da sua posição no número Em geral: a n a n-1...a 1 a 0.b 1 b 2 b 3 = a n 10 n + a n-1 10 n a a 0 + b b b Parte inteira: a n a n-1...a 1 a 0 Parte fracionária: b 1 b 2 b 3 Base β qualquer: dígitos representam potências de β (a n a n-1...a 1 a 0.b 1 b 2 b 3 ) β = a n β n + a n-1 β n a 1 β 1 + a 0 + b 1 β -1 + b 2 β -2 + b 3 β -3 + Dígitos: 0, 1, 2,, β-2, β-1 Se β>10: acrescentar símbolos para 10, 11,, β-1 Ex.: símbolos da base β=16: {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F} Exemplos: (110.01) 2 = (75.4) 8 = (A5.48) 16 = A

4 UFSC INE ) Geração de números base 10 base 2 base A B C D E F ) Conversão de base β para base 10 N = (a na n-1...a 1a 0. b 1b 2b 3...) β = a nβ n + a n-1β n a 1β 1 + a 0 + b 1β -1 + b 2β -2 + b 3β -3 + Resumo: escrever na forma de série de potências e efetuar os cálculos em base 10. Exemplos (β 10): (110.01) 2 = = = (75.4) 8 = = = (A5.48) 16 = A = = Ou, usando recursos prontos do Octave: (110.01) 2 = bin2dec( )/4 = (75.4) 8 = base2dec( 754,8)/8 = (A5.48) 16 = hex2dec( A548 )/16 2 = (5631) 7 = base2dec( 5631,7) = (6A3B1) 13 = base2dec( 6A3B1,13) = ) Conversão de base 10 para base β

5 UFSC INE Parte inteira (10 β): Dados um número N em decimal e uma nova base β: Escreve-se N em função dos coeficientes a determinar na nova base: N10 = (c mc m-1...c 1c 0.) β onde, para todos os c k, vale: 0 c < β k Então: N 10 = (c mc m-1...c 2c 1c 0.) β = c 0 + c 1β + c 2β c m-1β m-1 + c mβ m Logo, se N 10 é dividido por β : o resto é: c 0 o quociente é: ( c 1 + c 2β + + c m-1β m-2 + c mβ m-1 ) Agora, se este quociente é dividido por β : o novo resto é: c 1 = c 0 + β( c 1 + c 2β + + c m-1β m-2 + c mβ m-1 ) o novo quociente é: ( c 2 + c 3β + + c m-1β m-3 + c mβ m-2 ) E assim por diante Resumo: dividir repetidamente por β, guardando os restos c 0, c 1, c 2, e os quocientes Ex.: efetuar a conversão: (37.) 10 = ( ) 2 = (OK) (FIM) Algoritmo em linguagem Octave (uma implementação possível): function Nb = dec2beta_int(n, b) Nb = []; while N!= 0 r = mod(n, b); Nb = [Nb, r]; N = floor(n/b); end Nb = fliplr(nb); Ou, usando recursos prontos do Octave: = dec2bin(100) = = dec2hex(100) = = dec2base(100,8) = 144 8

6 UFSC INE Parte fracionária (10 β): Dado um nro x < 1 em decimal e uma nova base β: x 10 = (0.d 1 d2 d3... ) β = d1 β-1 + d 2 β-2 + d 3 β-3 + Ex. auxiliar: (0.375) 10 = (0.????) 10 Como obter os dígitos (coeficientes) um a um? Note que: = 3.75 extrai-se o 1ro dígito (3) sobra : = 7.5 extrai-se o 2do dígito (7) sobra : = 5 extrai-se o 3ro dígito (5) Logo: (0.375) 10 = (0.375) 10 Ou seja, em base 10: Uma vez que nros são séries de potências de 10, O ponto decimal é movido pela multiplicação ou divisão por 10 Logo, em base β: O ponto decimal é movido pela muliplicação ou divisão por β Então: βx = (d 1. d2 d3 ) β = d 1 + d 2 / β + d3 / β2 + Parte inteira do resultado é o coeficiente d 1 Repete-se o processo sobre a parte fracionária que resta : (0. d 2 d3 ) β para encontrar d 2 E assim sucessivamente (!!) Resumo: multiplicar repetidamente por β, removendo partes inteiras. Exemplo1: (0.375) 10 = (0.011) 2 = (OK) x 2 = x 2 = x 2 = (FIM) Exemplo2: (0.375) 10 = (0.12) 4 = x4-2 (OK) x 4 = x 4 = (FIM) Teorema ( Expansão em base β ): Seja α um real positivo. Seja a sua parte inteira: a = α Seja a sua parte fracionária: γ = α - a (0 γ < 1) Então γ pode ser escrito de maneira única como: γ = (.d 1 d 2 d 3...) β = j=1 d j β j (0 d j β-1)

7 UFSC INE Prova: método anterior para a construção dos d j s (γ 0 = γ): γ = d 1 β 1 + d 2 β d n β n + γ n β n onde: d k = βγ k-1 e γ k = βγ k-1 - d k Ref.: Rosen, Elem. Number Theory. Algoritmo (!!) em linguagem Octave para a conversão de um fracionário de base 10 para a base β (na verdade, não é algoritmo!): function xb = dec2beta_frac(x, b) xb = []; while x!= 0 ATENÇÃO: sem garantia de parada x = x * b; d = floor(x); x = x d; end xb = [xb, d]; 1.5) Frações decimais em base β Dado um nro x < 1 em decimal e uma nova base β: x 10 = (0.d 1 d2 d3... ) β = d k : coeficientes a determinar Resumo: multiplicar repetidamente por β, removendo partes inteiras. Exemplo 3: (0.1) 10 = ( )2 0.1 x 2 = x 2 = x 2 = x 2 = x 2 = x... (tem que parar, pois entra em ciclo) Conclusão: A representação de um fracionário decimal em outra base β pode não terminar. Nros fracionários com representação finita em decimal podem se tornar dízimas periódicas em outras bases. (Mas: apenas um nro finito de dígitos poderá ser guardado.) Def.: Uma expansão (.d 1d 2d 3...) β termina se n Z + tal que: d n = d n+1 = d n+2 = = 0 Ex.: expansões que terminam: 1/8 em base 10: ( ) 10 = (.125) 10 4/9 em base 6: ( ) 6 = (.24) 6 Questão: quais os reais cuja expansão em base β termina??

8 UFSC INE Teorema: A expansão em base β do real 0 α < 1 termina sse α é racional e pode ser escrito como α = r/s, onde: 0 r < s todo fator primo de s divide β Prova: ( ) Assuma que a expansão termina, ou seja: α = (.d 1d 2...d n) β. Então: α = d 1 β + d 2 1 β + + d n 2 β n = d 1β n 1 + d 2 β n d n β n Logo, α é racional e: denominador é divisível por primos que dividem β. Prova: ( ) Assuma que: α = r/s e cada primo que divide s também divide β Então: (existe) potência de β (= β N ) que é divisível por s Exemplo: N = maior expoente na fatoração de s Daí: β N α = β N (r / s) = a r (onde a é inteiro e positivo) Agora, seja a expansão de a r dada por (g mg m-1...g 1g 0) β : α = a r β N = g mβ m +g m 1 β m 1 + +g 1 β+g 0 β N = g m β m N +g m 1 β m 1 N + +g 1 β 1 N +g 0 β N = ( gmgm-1...g1g0) β (a expansão termina) Expansões em base β que não terminam podem ser periódicas: 1/3 = (.3333 ) 10 1/6 = (.1666 ) 10 1/7 = ( ) 10 Def.: (0.d 1d 2...d n) β é periódica se N,k Z + tais que: d n+k = d n para todo n N Notação para a expansão periódica: (0.d 1d 2...d N-1d N...d ) N+k-1 β 1/3 = (0.3) 10 1/6 = (0.16) 10 1/7 = ( ) 10 1/10 = ( ) 2 Teorema: Racionais = Reais com expansões em base β periódicas ou finitas. Prova: ver livro de Teoria de Números (ex.: Rosen, Elem. Nr Theory ) 1.6) Conversão entre as bases 16 e 2 Dígitos na base 16: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F Grupos de 4 bits podem ser traduzidos diretamente para hexadecimal (pois: 2 4 = 16) Exemplos: 1. ( ) 2 =( ) 2 =(6B.7A) (1A2.4) 16 = ( ) 2 = ( ) 2

9 UFSC INE Justificativa: x = (0.b 1b 2b 3b 4b 5b 6b 7b 8...) 2 = = (b b b b 42-4 ) + (b b b b 82-8 ) + = (b b b b 4) (b b b b 8) Utilidade: compactar a representação da memória: 1 único caractere hexadecimal equivale a 4 bits de modo que: cada byte de memória apenas 2 caracteres hexa Exemplo: dump do texto hexadecimal : d616c0a Representação digital dos inteiros Bits e números(trechos de material do Prof. Paul Murrell, Relembrando: Um bit: dois estados possíveis: só podemos representar os nros 0 e 1. Dois bits combinados: Cada bit: dois estados 4 estados possíveis; Podemos representar: 0, 1, 2 e 3 (00, 01, 10 e 11) k bits combinados: 2 k estados possíveis: 0, 1, 2,, 2 k -1 Inteiros são comumente armazenados em: 4 bytes ( int ) : 0..4,294,967,295 ( ) 8 bytes ( long long int ): 0..18,446,744,073,709,551,615 ( ) Todos os inteiros de um mesmo tipo requerem a mesma quantidade de memória computacional. Exemplo: o nro 193 seria (em formato usual): Alguns problemas evidentes: 1. Desperdício de espaço: 8 bits seriam suficientes para guardar o 193: Mas: nro pré-fixado de bits permite computações em hardware (+eficiente). 2. Não permite números negativos: Resolvido com o sacrifício de um bit para indicar o sinal. A faixa se torna (usando complemento de 2 - ver Wikipedia): -2,147,483, ,147,483,647 ou: -(2 31 ) Números grandes ( 2 32 ) não podem ser guardados em uma palavra. Problema inerente do uso de memória finita. É possível alocar mais memória, mas ao custo de eficiência. Sobre os inteiros, o que precisamos lembrar: Existem limites superiores e inferiores para a faixa de inteiros usualmente colocados à nossa disposição.

10 UFSC INE Representação digital dos reais (ponto flutuante) Nros de ponto flutuante são as representações digitais de nros que têm partes fracionárias. Reais (e racionais) são muito mais difíceis de armazenar do que os inteiros. Há um limite na precisão que podemos conseguir. Maioria dos reais não pode ser armazenada de maneira exata. Porém: um valor próximo ao verdadeiro pode ser guardado. Problema é com a realização de muitos cálculos: Erros pequenos podem acumular e estragar resultados. Números normalizados Nros reais não podem ser guardados em um computador como os inteiros. (Para começar, não são contáveis.) Eles são armazenados em um equivalente da notação científica. Chamado de Notação de ponto flutuante. Números decimais normalizados Um nro pode ser escrito em notação científica de diversas formas: = = = = A diferença é somente a posição do ponto decimal na mantissa. (Mantissa: nro que multiplica a potência de 10.) Adotaremos a seguinte normalização: 1ro dígito à esquerda do ponto sempre será 0; 1ro dígito à direita do ponto nunca será 0. Números decimais normalizados em notação científica: y = ±(0.d 1d 2 d kd k+1d k+2...) 10 n Exemplos de números representados com esta normalização: Valor Notação normalizada x x x x10 1 Fixando o tamanho da mantissa, obtemos nros de ponto flutuante (ou números de máquina ): Def.: Números de ponto flutuante decimais: ±(0.d 1d 2 d k) 10 n d i são os dígitos decimais da mantissa (d 1 1) n é o expoente (n min n n max ) k é a precisão O equivalente para base 2 é: Def.: Números de ponto flutuante binários: ±(0.b 1b 2 b n) 2 2 e b i : dígito binário (bit) (b 1 = 1) e : expoente binário (e min e e max) n : precisão O zero foge à normalização e precisa ser definido como: zero = e min

11 UFSC INE A união dos nros binários normalizados com o zero é representada por: F(β, n, e min, e max) máquina (β = 2 ou 10) Exemplo: Representar (25) 10 na máquina F(2,10,-15,15). Nros representáveis nesta máquina: (0.d 1 d 2 d 3 d 4 d 5 d 6 d 7 d 8 d 9 d 10 ) 2 2 ±(e e e e ) Solução: 25 = = = (11001.) 2 = ( ) = +( ) 2 2 +(0101) ou, de forma mais compacta: sinal mantissa sinal expoente Esta máquina usa 16 bits para para representar qualquer número. Qual o maior valor representável nesta máquina? = +( ) 2 2 +(15) = ( ) 2 = (32736) 10 Qual o menor valor positivo representável nesta máquina? = +( ) 2 2 -(15) = 2 -(16) = ( ) 10 Da mesma forma: Menor valor representável nesta máquina = -(32736) 10 Maior valor negativo representável = -( ) 10 Logo, esta máquina possui os seguintes limites: x x ============== ================ > (R) overflow faixa utilizável underflow underflow faixa utilizável overflow Região de overflow: (-, ) (+32736, + ) Região de underflow: ( x10-5, 0) (0, x10-5 ) Ainda: qual o segundo menor valor positivo representável nesta máquina? = +( ) 2 2 -(15) = 2 -(16) + 2 -(25) = ( ) 10 Logo, esta máquina não possui representação exata para os reais entre: e e para muitos outros Conclusão: em um computador, o sistema de números não é contínuo, mas um conjunto discreto peculiar: um sub-conjunto dos racionais.

12 UFSC INE Números de ponto flutuante IEEE-754 Os nros de ponto flutuante em uma máquina real seguem a norma IEEE , revisada em 2008 Def.: Um nro de ponto flutuante IEEE-754 tem a forma (1.)m 2 c, onde: m é a mantissa: sem o 1. inicial (pois o 1. sempre aparece) c é o expoente (ou característica ): modificado por uma polarização (ou bias ) IEEE-754 especifica formatos para precisão simples e precisão dupla. Precisão simples: nros armazenados em 32 bits 23 bits para a mantissa (com 1. implícito) 8 bits para expoente (127 = bias ou polarização ) 1 bit de sinal Expoente de 8 bits poderia representar 256 valores Mas precisamos de valores pequenos expoentes negativos Expoentes vão de 0 a 255 (na verdade: de -127 a +128, com o bias ) -127 (= ) reservado para nros muito pequenos (fora do padrão) +128 (= ) reservado para nros que não fazem sentido ( NaN, Inf ) Exemplo (Wikipedia): O nro é assim representado como ponto flutuante IEEE-754 em precisão simples: = = (1.) sinal + => s = 0 mantissa (fraction) = f = expoente = c = -3 + bias = = 124 = ( ) 2 Formato geral: (-1) s 2 c (1. + f) Maior nro representável: (-1) ( ) Menor nro representável: (-1) ( ) Underflow ( denormals ): (-1) (0.bbb...bbb) 2 (zero f 0) Overflow e outros: (-1) (1.bbb...bbb) 2 Inf, NaN Nota sobre a precisão simples: Note que, com 23 bits, é possível representar 2 23 valores diferentes Este é um grande nro de valores (~ ), mas ainda ficam muitos buracos descobertos

13 UFSC INE Por exemplo, se estivermos lidando com valores na faixa de 0 a 1: a distância entre valores representáveis é (1/2) ou seja: não conseguiremos distinguir entre nros cuja diferença seja menor do que Precisão dupla: nros armazenados em 64 bits 53 bits para a mantissa 11 bits para: expoente ( bias ou polarização ) 1 bit de sinal Expoente de 11 bits poderia representar 2048 valores Mas: precisamos de expoentes negativos bias = 1023 Expoentes vão de 0 a 2047 (na verdade: de a ) (= ) reservado para nros muito pequenos (fora do padrão) (= ) reservado para nros que não fazem sentido ( NaN, Inf ) Precisão dupla: (Wikipedia) Formato geral: (-1) s 2 c (1. + f) Maior nro representável: (-1) (1.+( )) Menor nro representável: (-1) ( ) Underflow ( denormals ): (-1) (0.bbb...bbb) 2 (zero f 0) Overflow e outros: (-1) (1.bbb...bbb) 2 Inf, NaN Exemplo com precisão dupla (Faires): Considere o nro de máquina: s < c > < f > Bit mais à esquerda = s = 0 => nro é positivo Expoente = c = = 1027 Mantissa = f = = Logo, este nro de máquina vale: (-1) ( ) = Octave (Matlab) usa precisão dupla por default. Exercício: observar novamente os valores das variáveis built-in realmin e realmax do Octave.

14 UFSC INE Faixas utilizáveis para tipos mais comuns de dados em computador: Tipo de dado Faixa de utilização int32 (32 bits) -2,147,483,648 n 2,147,483,647 int64 (64 bits) -9,223,372,036,854,775,808 n 9,223,372,036,854,775,807 precisão simples (sem denormals ) precisão dupla (sem denormals ) x , 0, x x , 0, x Medidas de erros numéricos Formas de Arredondamento Arredondamentos ocorrem quando é necessário descartar dígitos. Tanto decimais como binários. Formas de arredondamento: Cancelamento Arredondamento Arredondamentos em decimais Nros decimais positivos normalizados em notação científica: y = (0.d 1 d 2 d k-1 d k d k+1 d k+2...) 10 n onde: d 1 1, 0 d j 9 (i 2) Def.: Forma em ponto flutuante decimal de y: fl(y) = (0.δ 1 δ 2 δ k-1 δ k ) 10 n onde: δ 1 1, 0 δ j 9 (i 2) 0.δ 1 δ 2 δ k-1 δ k depende de d k+1 A mantissa termina em k dígitos. Dois métodos para terminar a mantissa: Cancelamento: simplesmente corta fora a parte dk+1dk+2 Arredondamento: faz y y n-k e aplica cancelamento a y, ou seja: se d k+1 < 5: simplesmente corta a parte d k+1 d k+1 ( para baixo ) se d k+1 5: 0.δ 1 δ 2 δ k 0.d 1 d 2...d k k antes de cortar a parte d k+1 d k+1 ( para cima )

15 UFSC INE Exemplo: π = Na forma decimal normalizada: π = Como ponto flutuante: com cancelamento para 5 algarismos: fl(π) = com arredondamento para 5 algarismos, temos: π = fl(π) = Arredondamentos em binários Nros binários positivos normalizados em notação científica: y = (0.b 1 b 2 b k-1 b k b k+1 b k+2...) 2 n, onde: b 1 =1, b j = 0 ou 1 (i 2) Def.: Forma em ponto flutuante binária de y: fl(y) = (0.δ 1 δ 2 δ k-1 δ k ) 2 n, onde: δ 1 =1, δ j = 0 ou 1 (2 i k) 0.δ 1 δ 2 δ k-1 δ k depende de b k+1 A mantissa termina em k bits. Dois métodos para terminar a mantissa: Cancelamento: simplesmente corta fora a parte b k+1 b k+2... Arredondamento: faz y y n-k e aplica cancelamento a y, ou seja: se b k+1 = 0: simplesmente corta a parte b k+1 b k+1 ( para baixo ) se b k+1 = 1: 0.δ 1 δ 2 δ k 0.b 1 b 2...b + k 2-k antes de cortar a parte b k+1 b k+1 ( para cima ) Exemplo: z = Na forma binária normalizada: z = Como ponto flutuante: com cancelamento para 5 algarismos: fl(z) = com arredondamento para 5 algarismos, temos: z = fl(z) = Algarismos Significativos: (Wikipedia) Seja um nro decimal normalizado: Algarismos 1 a 9 são sempre significativos; Zeros entre algarismos não nulos são sempre significativos; Zeros à direita de todos os não-nulos, na parte fracionária, não são significativos, a menos que sirvam para caracterizar precisão.

16 UFSC INE Exemplos: => 3 algarismos significativos => 7 algarismos significativos => 2 algarismos significativos => 6 algarismos significativos, se: precisão = 6 Def.: Seja p* uma aproximação para p: Erro absoluto = p p* Erro relativo = p p* / p (para p 0) Exemplos: p p* e ABS e REL O erro absoluto é mais usado em deduções teóricas. Na prática, o erro relativo é mais significativo, pois leva em consideração as magnitudes envolvidas. Aproximações em decimais (Faires) Suponha que foi feito arredondamento correto para k dígitos: Notação científica: y = (0.d 1 d 2 d k-1 d k d k+1 d k+2...) 10 n Ponto flutuante: fl(y) = (0.δ 1 δ 2 δ k-1 δ k ) 10 n Então: e A = y fl( y) = 0.d 1 d 2 d k d k+ 1 d k n 0.δ 1 δ 2 δ k 10 n = 0. d k +1 d k n k n k => se d k+1 < 5 = 0. d k +1 d k n k 10 n k n k => se d k+1 5 Em ambos os casos: distância entre y e fl(y) é 0.5 no k-ésimo dígito da mantissa. Exemplo: Considere os arredondamentos a seguir, para p = 2/3 = : p* e A = y - fl(y) k máx OBS.: dos 3 dígitos mostrados, apenas 2 são resultado de arredondamento correto dígitos mostrados, apenas 2 vêm de arredondamento correto os 3 dígitos mostrados foram corretamente arredondados dos 3 dígitos mostrados, apenas 2 vêm de arredondamento correto Por outro lado, se: distância entre y e fl(y) é 0.5 no k-ésimo dígito da mantissa, sabemos que: os k 1 os dígitos de fl(y) coincidem com os k 1 os dígitos de um arredondamento correto de y Logicamente: se y for arredondado para k dígitos na mantissa, o resultado deve ser fl(y).

17 UFSC INE Porém, dados y e z quaisquer, não podemos afirmar que: Se: y-z 0.5 no k-ésimo dígito da mantissa, Então: y arredondado para k dígitos deve coincidir com z arredondado para k dígitos. (Contra-)exemplo: Sejam y= e z=0.662: Então: y z = Mas: fl 2(y) = 0.67 fl 2(z) = 0.66 No entanto, note que podemos ainda garantir que: A menos da posição k, as mantissas de fl(y) e fl(z) serão iguais. De uma maneira geral, dados y e z quaisquer, podemos afirmar que: Se: y-z 0.5 no k-ésimo dígito da mantissa Então: os 1ros k-1 dígitos de y arredondado para k dígitos devem coincidir com: os 1ros k-1 dígitos de z arredondado para k dígitos. Ou seja, no caso de y e z quaisquer, podemos afirmar que, se: e A = y z n k Então, como aproximação para y, o nro z teria, no mínimo, t=k-1 dígitos significativos corretos. Trabalhando com erro relativo, podemos eliminar dependência de n: e R = y z y = e A n 0.d 1 d k 0.d 1 d Logo: e R = y z y t Este raciocínio leva à definição a seguir. +1) 10 (t 0.1 Def.: Dados y e z quaisquer, definimos t como o maior inteiro para o qual: e R = y z y t Ou seja: t = log 10 (2 e R ) Então: z é uma aproximação para y com, no mínimo, t dígitos corretos. Exemplo: Considere as aproximações a seguir, para p = π = : p* t Usaremos o erro relativo, na forma de nro de dígitos corretos, nos critérios de convergência para os algoritmos iterativos que veremos: O processo iterativo só terá convergido quando: nro de dígitos corretos em cada iteração > valor estipulado.

18 UFSC INE Aproximações em máquinas binárias(kincaid) Qual o máximo erro relativo que pode ser cometido no arredondamento em uma máquina? Exemplo: Arredondamento de x = (0.1a 2 a 3 a 4..a 24 a 25 a 26...) 2 2 m na máquina F(2,24,-127,128). Os 2 nros de máquina mais próximos de x são x e x : x x x 1. arredondando para menos : x = (0.1a 2 a 3 a 4..a 24 ) 2 2 m 2. arredondando para mais : x = [(0.1a 2 a 3 a 4..a 24 ) ] 2 m 3. o nro de máquina mais próximo é escolhido para representar x Mas qual o máximo erro de arredondamento neste caso? Supondo que x está mais próximo de x do que de x : x x x Neste caso, o erro é dado por: x x ' 1 2 x' ' x ' = 1 2 (2 24+m ) = 2 25+m o que leva a um erro relativo máximo de: x x' x m (0.1a 2 a 3 ) = m 2 1/2 Idem, se x está mais próximo de x do que de x : x x x A quantidade 2-24 = β -n é chamada de erro de arredondamento unitário para a máquina F(2,24,-127,128). Unitário : em relação a 1. Nesta máquina, 7 dígitos decimais significativos serão preservados na maioria das operações, pois o erro relativo, ao se aproximar um nro real pelo nro de máquina mais próximo, não excede: x10 Aritmética com precisão finita Erros em operações elementares Erros numéricos também são produzidos durante a execução de operações aritméticas elementares fora da faixa de abrangência da máquina. Exemplo: Adição de x= e y= em F(10,5,-15,15) Expoente do menor é ajustado de modo que os 2 expoentes sejam iguais (Nros são adicionados em um acumulador com o dobro da precisão) x = y = x+y =

19 UFSC INE Convertendo para o nro de máquina mais próximo: z = x + y = z = Com isto, pode-se determinar o erro relativo desta operação: x+ y z x+ y = Note que este valor está próximo de 10-5 (erro relativo máximo). Por ser relativo a 1, o erro de arredondamento unitário leva ao seguinte conceito: Def.: O ε da máquina F(β,n,e min,e max ) é o menor nro positivo tal que ainda vale 1+ε > 1. Calculado por: ε = β -n Exatamente como o arredondamento unitário. O valor ε 2 fornece a distância entre o nro 1 e o próx. nro de máquina. Exercício: no Octave, fazer: >> eps, 1+eps==1, 1+eps/2==1 Exemplo: em F(2,4,-10,10), se x = β -n = 2-4, então: 1+x = (0.1000) ( ) = ( ) = (0.1001) O arredondamento faz com que o 1 fora da mantissa seja notado Qualquer nro < não seria grande o suficiente para ser notado pelo computador. Ou seja, ε= = 2-4 é o menor nro tal que 1+ε > 1 O zero em ponto flutuante é representado com o menor expoente possível. Mesmo com mantissa nula, um outro expoente poderia acarretar uma perda de dígitos significativos na adição deste zero a um outro número. Exemplo: seja, em F(10,4,-9,+9), a = Assumindo zero = e fazendo a + zero : => arredondando: => normalizando: a (!?) Concluímos que deve ser: zero := Erros em operações elementares: Perda de significância Os dígitos da mantissa em um número normalizado não têm todos a mesma significância: Os que estão mais próximos do ponto decimal são mais significativos do que aqueles que estão mais distantes.

20 UFSC INE Exemplo: x = dígito mais significativo: 3 (maior potência de 10) dígito menos significativo: 1 Obs.: por convenção científica, o último dígito da mantissa (=1 no exemplo) pode estar em erro por, no máximo, 5 unidades. Exemplo: Cálculo da diagonal de um quadrado de lado s= A diagonal é dada por: d = s 2 Neste caso: d = = Resposta deve ser dada com 3 dígitos significativos: d = Pois esta era a precisão máxima do dado do problema (s). A precisão infinita de 2 não pode acrescentar precisão ao problema. Cancelamento subtrativo: perda de significância causada pela subtração entre quantidades aproximadamente iguais. Exemplo: Avaliar y = x-sen(x) para x = 1/15, em F(10,10,-15,15): 1) x = ) sen(x) = ) x sen(x) = ) x sen(x) = (normalizando) Os 3 últimos 0 s foram adicionados pelo computador (não são significativos). Valor correto: Note que este tipo de problema está associado com a operação: x - y -> fl(fl(x) - fl(y)) e não com a operação: x y -> fl(x y) Solução para este problema: antecipar a sua ocorrência. Reprogramar (mudar as fórmulas). Questão: exatamente quantos dígitos significativos são perdidos na subtração x-y, quando x y? Teorema (Perda de precisão): Sejam x e y nros de ponto flutuante normalizados tais que x>y>0. Se 2 p 1 y x 2 q, para alguns inteiros positivos p e q, então: no máximo p e no mínimo q dígitos binários (bits) significativos são perdidos na subtração x-y. Prova: Sejam x = r 2 n e y = s 2 m, onde: ½ r,s < 1. Como y<x, a máquina pode ter que deslocar y para realizar a subtração (y deve ser expresso com mesmo expoente que x) De modo que: y = (s 2 m-n ) 2 n e x-y = (r - s 2 m-n ) 2 n

21 A mantissa de x-y satisfaz: r s2 m n = r( s2m 1 r2 ) = r ( 1 y n x ) < 2 q Portanto, para normalizar x-y, um deslocamento de no mín. q bits é necessário: No mín. q zeros espúrios aparecem no limite direito da mantissa No mín. q bits de precisão foram perdidos. Prova semelhante para o outro lado (2-p). Exemplo: Na subtração , quantos bits significativos serão perdidos? UFSC INE y x = Resposta: no mínimo 11 e no máximo 12. Técnicas para lidar com o cancelamento subtrativo Exemplo 1: Considere a função: f (x) = x Problemas para x 0. Mas esta função pode ser reescrita como: f (x) = ( x )( x x ) = (Testar para x = 10-6 na calculadora.) 2 x x Exemplo 2: Seja a função f(x) = x sen(x), Problemas para x 0, onde sen(x) x. Pode-se resolver isto com a série de Taylor para sen(x): sen(x) = x x3 3! + x5 5! x7 7! + de modo que: f (x) x3 3! x5 5! + x7 7! (tomando só alguns termos) o que é uma expressão mais precisa do que x-sen(x) para x 0. Mas quando é que se deve usar a série? Pelo Teorema da precisão, impondo que no máx. 1 bit seja perdido: sen(x) x Logo: x < 1.9: usar primeiros termos da série x 1.9 x 1.9: usar a expressão original: f(x) = x - sen(x) Exemplo 3: Critique o seguinte comando: y = cos 2 x sen 2 x. Perda de significância para x (2k+1)π/4 Mas: cos 2 x sen 2 x = cos(2x) Logo, este comando deve ser substituído por: y = cos(2x)

Cálculo Numérico. Erros em processamento Numéricos

Cálculo Numérico. Erros em processamento Numéricos Cálculo Numérico Erros em processamento Numéricos Agenda Introdução a Erros Mudança de Base Erros de representação Erro de arredondamento Erro de absoluto Erro relativo Erro de truncamento Propagação do

Leia mais

Representação e erros numéricos

Representação e erros numéricos Representação e erros numéricos Marina Andretta ICMC-USP 29 de fevereiro de 2012 Baseado no livro Análise Numérica, de R. L. Burden e J. D. Faires. Marina Andretta (ICMC-USP) sme0500 - cálculo numérico

Leia mais

Cálculo Numérico. Conjunto de métodos utilizados para a obtenção de resultados de problemas matemáticos através de aproximações.

Cálculo Numérico. Conjunto de métodos utilizados para a obtenção de resultados de problemas matemáticos através de aproximações. CÁLCULO NUMÉRICO Cálculo Numérico Conjunto de métodos utilizados para a obtenção de resultados de problemas matemáticos através de aproximações Problema Físico Modelo Matemático Solução Cálculo Numérico

Leia mais

Cálculo Numérico IPRJ/UERJ. Sílvia Mara da Costa Campos Victer ÍNDICE. Aula 1- Introdução. Representação de números. Conversão de números

Cálculo Numérico IPRJ/UERJ. Sílvia Mara da Costa Campos Victer ÍNDICE. Aula 1- Introdução. Representação de números. Conversão de números Cálculo Numérico IPRJ/UERJ Sílvia Mara da Costa Campos Victer ÍNDICE Aula 1- Introdução Representação de números Conversão de números Aritmética de ponto flutuante Erros em máquinas digitais Aula 1 - Introdução

Leia mais

Cálculo Numérico Noções básicas sobre erros

Cálculo Numérico Noções básicas sobre erros Cálculo Numérico Noções básicas sobre erros Profa. Vanessa Rolnik 1º semestre 2015 Fases da resolução de problemas através de métodos numéricos Problema real Levantamento de Dados Construção do modelo

Leia mais

Erros e Aritmética de ponto flutuante

Erros e Aritmética de ponto flutuante Cálculo Numérico Noções básicas sobre erros Aritmética de ponto flutuante Prof. Daniel G. Alfaro Vigo dgalfaro@dcc.ufrj.br DCC IM UFRJ Parte I Noções básicas sobre erros Introdução Validação Modelagem

Leia mais

Representação e erros numéricos

Representação e erros numéricos Representação e erros numéricos Marina Andretta ICMC-USP 27 de fevereiro de 2013 Baseado no livro Análise Numérica, de R. L. Burden e J. D. Faires. Marina Andretta (ICMC-USP) sme0500 - Cálculo Numérico

Leia mais

Universidade Federal do Espírito Santo - UFES

Universidade Federal do Espírito Santo - UFES Universidade Federal do Espírito Santo - UFES Centro Universitário Norte do Espírito Santo - CEUNES Departamento de Matemática Aplicada - DMA Prof. Isaac P. Santos - 2018/1 Aula: Erros e Aritmética de

Leia mais

Representação e erros numéricos

Representação e erros numéricos Representação e erros numéricos Marina Andretta / Franklina Toledo ICMC-USP 25 de fevereiro de 2015 Baseado no livro Análise Numérica, de R. L. Burden e J. D. Faires. Marina Andretta / Franklina Toledo

Leia mais

Representação e erros numéricos

Representação e erros numéricos Representação e erros numéricos Marina Andretta/Franklina Toledo ICMC-USP 03 de Agosto de 2012 Baseado no livro Análise Numérica, de R. L. Burden e J. D. Faires. Marina Andretta/Franklina Toledo (ICMC-USP)

Leia mais

Matemática Computacional. Edgard Jamhour

Matemática Computacional. Edgard Jamhour Matemática Computacional Edgard Jamhour Definição A matemática computacional é uma área da matemática e da computação que trata do desenvolvimento de modelos matemáticos, para o tratamento de problemas

Leia mais

Dessa forma pode-se transformar qualquer número em qualquer base para a base 10.

Dessa forma pode-se transformar qualquer número em qualquer base para a base 10. Sistemas de numeração e representação dos números Sistemas de Numeração e Somadores Binários I Base Numérica Um número em uma base qualquer pode ser representado da forma: N = An-1.B n-1 + An-2.B n-2 +...+

Leia mais

Cálculo Numérico Conceitos Básicos

Cálculo Numérico Conceitos Básicos Cálculo Numérico Conceitos Básicos Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br MATERIAL ADAPTADO DOS SLIDES DA DISCIPLINA CÁLCULO NUMÉRICO DA UFCG - www.dsc.ufcg.edu.br/~cnum/ 1 Princípios usados

Leia mais

Métodos Numéricos Erros Ponto Flutuante. Professor Volmir Eugênio Wilhelm Professora Mariana Kleina

Métodos Numéricos Erros Ponto Flutuante. Professor Volmir Eugênio Wilhelm Professora Mariana Kleina Métodos Numéricos Erros Ponto Flutuante Professor Volmir Eugênio Wilhelm Professora Mariana Kleina Representação Numérica O conjunto dos números representáveis em qualquer máquina é finito, e portanto

Leia mais

TP062-Métodos Numéricos para Engenharia de Produção Erros-Ponto Flutuante

TP062-Métodos Numéricos para Engenharia de Produção Erros-Ponto Flutuante TP062-Métodos Numéricos para Engenharia de Produção Erros-Ponto Flutuante Prof. Volmir Wilhelm Curitiba, 2015 Representação Numérica No sistema decimal X (10) = d 3 d 2 d 1 d 0 (número inteiro de 4 dígitos)

Leia mais

CCI-22. Erros Erros de arredondamento, representação e de cálculo

CCI-22. Erros Erros de arredondamento, representação e de cálculo CCI-22 Matemática Computacional Erros Erros de arredondamento, representação e de cálculo CCI-22 Tipos de erros Sistemas de ponto flutuante Arredondamentos Erros absolutos e relativos Dígitos significativos

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores Aritmética Computacional Prof. Sílvio Fernandes

Leia mais

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aulas 5 e 6 03/2014 Erros Aritmética no Computador A aritmética executada por uma calculadora ou computador é diferente daquela

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores Aritmética Computacional Prof. Helcio Wagner

Leia mais

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano.

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano. CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano aratadano@utfpr.edu.br Aula 2 Noções Básicas sobre Erros A resolução de problemas numericamente envolve várias fases que podem ser assim estruturadas:

Leia mais

étodos uméricos Erros Visão Geral Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA

étodos uméricos Erros Visão Geral Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA étodos uméricos Erros Visão Geral Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA UNIVERSIDADE DE JOÃO DEL-REI PRÓ-REITORIA DE PESQUISA CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA

Leia mais

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano.

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano. CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano aratadano@utfpr.edu.br Aula 2 08/2014 Noções Básicas sobre Erros A resolução de problemas numericamente envolve várias fases que podem ser assim estruturadas:

Leia mais

Erros em computações numéricas

Erros em computações numéricas Erros em computações numéricas Sérgio Galdino 1 2 1 POLI-UPE Escola Politécnica Universidade de Pernambuco 2 UNICAP Universidade Católica de Pernambuco Disciplinas: (1)Cálculo Numérico - (2)Cálculo Numérico

Leia mais

Aula 11. A Informação e sua Representação Ponto-Flutuante. Prof. Dr. Dilermando Piva Jr.

Aula 11. A Informação e sua Representação Ponto-Flutuante. Prof. Dr. Dilermando Piva Jr. 11 Aula 11 A Informação e sua Representação Ponto-Flutuante Prof. Dr. Dilermando Piva Jr. Site Disciplina: http://fundti.blogspot.com.br/ Em alguns tipos de cálculo, a faixa de variação dos números envolvidos

Leia mais

CCI-22. Matemática Computacional. Carlos Alberto Alonso Sanches Juliana de Melo Bezerra

CCI-22. Matemática Computacional. Carlos Alberto Alonso Sanches Juliana de Melo Bezerra CCI-22 Matemática Computacional Carlos Alberto Alonso Sanches Juliana de Melo Bezerra CCI-22 2) Erros de arredondamento Erros de representação e de cálculo CCI-22 Tipos de erros Sistemas de ponto flutuante

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Conceitos BásicosB (Parte II) Prof

Leia mais

Modelagem Computacional. Parte 1 2

Modelagem Computacional. Parte 1 2 Mestrado em Modelagem e Otimização - RC/UFG Modelagem Computacional Parte 1 2 Prof. Thiago Alves de Queiroz 2/2016 2 [Cap. 1] BURDEN, R. L.; FAIRES, J. D. Numerical Analysis (9th ed). Cengage Learning,

Leia mais

Aproximações e Erros

Aproximações e Erros Aproximações e Erros Lucia Catabriga e Andréa Maria Pedrosa Valli Laboratório de Computação de Alto Desempenho (LCAD) Departamento de Informática Universidade Federal do Espírito Santo - UFES, Vitória,

Leia mais

Disciplina: Introdução à Engenharia da Computação

Disciplina: Introdução à Engenharia da Computação Colegiado de Engenharia de Computação Disciplina: Introdução à Engenharia da Computação Aula 07 (semestre 2011.2) Prof. Rosalvo Ferreira de Oliveira Neto, M.Sc. rosalvo.oliveira@univasf.edu.br 2 Representação

Leia mais

Infraestrutura de Hardware

Infraestrutura de Hardware Infraestrutura de Hardware Aritmética Computacional Universidade Federal Rural de Pernambuco Professor: Abner Corrêa Barros abnerbarros@gmail.com Desde os primórdios da sua história os homens tem se deparado

Leia mais

1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35.

1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35. Computação Científica Folha Prática Computação Numérica 1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35 c) 192 d) 255 e) 347 f) 513

Leia mais

Home Programa Exercícios Provas Professor Links. 2.1 Representação de um número na base dois. O número binário 101,101 significa, na base dois:

Home Programa Exercícios Provas Professor Links. 2.1 Representação de um número na base dois. O número binário 101,101 significa, na base dois: Curso de Cálculo Numérico Professor Raymundo de Oliveira Home Programa Exercícios Provas Professor Links Capítulo 2 - Representação binária de números inteiros e reais 2.1 Representação de um número na

Leia mais

Fundamentos IV. Introdução a análise de erros. Gustavo Vinhal. August 12, Escola de Ciências Exatas e Computação

Fundamentos IV. Introdução a análise de erros. Gustavo Vinhal. August 12, Escola de Ciências Exatas e Computação Fundamentos IV Introdução a análise de erros Gustavo Vinhal Escola de Ciências Exatas e Computação August 12, 2016 Como aparecem os erros na matemática? Objetivos da ciência Entender, modelar e simular

Leia mais

Ponto Fixo e Ponto Flutuante

Ponto Fixo e Ponto Flutuante Ponto Fixo e Ponto Flutuante Arquitetura de Computadores Introdução (1/2) É trivial para um computador atual tratar e operar com números inteiros. Entretanto, em muitas aplicações do dia a dia é necessário

Leia mais

Sistemas Digitais INE 5406

Sistemas Digitais INE 5406 Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação Sistemas Digitais INE 5406 Aula 10-P Refinamento das especificações

Leia mais

1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35. e) 347 f) 513.

1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35. e) 347 f) 513. 1. Converta para a base binária, usando o método das divisões sucessivas, os seguintes números inteiros: a) 13 b) 35 c) 192 d) 255 e) 347 f) 513 g) 923 2. Converta para a base binária, usando os métodos

Leia mais

CÁLCULO NUMÉRICO (CN)

CÁLCULO NUMÉRICO (CN) CÁLCULO NUMÉRICO (CN) OBJETIVO: O estudo dos métodos de resolução numérica de problemas de matemática. 1. INTRODUÇÃO: A resolução de problemas envolve várias fases que podem ser assim estruturadas: Problema

Leia mais

Sistemas de Numeração

Sistemas de Numeração Sistemas de Numeração Objetivos Conhecer representações numéricas para inteiros positivos (naturais) nas bases binária, hexadecimal e octal. Generalizar representações para qualquer base. Manipular fluentemente

Leia mais

Métodos Numéricos - Notas de Aula

Métodos Numéricos - Notas de Aula Métodos Numéricos - Notas de Aula Prof a Olga Regina Bellon Junho 2007 1. Representação de números reais 1.1. Introdução Cálculo Numérico X Método Numérico CI202 - Métodos Numéricos 1 1. Representação

Leia mais

Folha Prática - Representação de Números e Erros. 1. Representar os seguintes números decimais em binário com ponto fixo:

Folha Prática - Representação de Números e Erros. 1. Representar os seguintes números decimais em binário com ponto fixo: Computação Científica Folha Prática - Representação de Números e Erros 1. Representar os seguintes números decimais em binário com ponto fixo: a) 24 b) 197 c) 1001 d) 7,65 e) 8,963 f) 266,66 2. Obter os

Leia mais

Método Analítico. Método Numérico

Método Analítico. Método Numérico UFRN/CT/DCA Nota de Aula Introdução aos Métodos Computacionais e Estudo dos Erros Prof Anderson Cavalcanti Métodos Computacionais Contextualização Muitos problemas de engenharia consistem em obter uma

Leia mais

Erros, Precisão Numérica e Ponto Flutuante

Erros, Precisão Numérica e Ponto Flutuante Capítulo 3 Erros, Precisão Numérica e Ponto Flutuante No capítulo anterior introduzimos o conceito de variável em programação. Uma variável é basicamente um nome usado para se referir a algum conteúdo

Leia mais

Fundamentos IV. Introdução a análise de erros. Clarimar J. Coelho. August 14, Departamento de Computação

Fundamentos IV. Introdução a análise de erros. Clarimar J. Coelho. August 14, Departamento de Computação Fundamentos IV Introdução a análise de erros Clarimar J. Coelho Departamento de Computação August 14, 2014 Clarimar (Departamento de Computação) Aula 2 August 14, 2014 1 / 40 Como aparecem os erros em

Leia mais

Cálculo Numérico. Conceitos Básicos

Cálculo Numérico. Conceitos Básicos Cálculo Numérico Conceitos Básicos Profs.: Bruno C. N. Queiroz J. Antão B. Moura Ulrich Schiel Maria Izabel C. Cabral DSC/CCT/UFCG Princípios usados em CN Comuns à análise matemática, C&T 1. Iteração ou

Leia mais

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano.

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano. CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano aratadano@utfpr.edu.br Aula 2 Noções Básicas sobre Erros A resolução de problemas numericamente envolve várias fases que podem ser assim estruturadas:

Leia mais

Sistemas numéricos e a Representação Interna dos Dado no Computador

Sistemas numéricos e a Representação Interna dos Dado no Computador Sistemas numéricos e a Representação Interna dos Dado no Computador Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: silveira@inf.ufsc.br URL: http://www.inf.ufsc.br~silveira Material elaborado pelo prof

Leia mais

SME CÁLCULO NUMÉRICO I PROFESSORES MARCOS ARENALES MARISTELA SANTOS. Agosto 2011

SME CÁLCULO NUMÉRICO I PROFESSORES MARCOS ARENALES MARISTELA SANTOS. Agosto 2011 SME0100 - CÁLCULO NUMÉRICO I PROFESSORES MARCOS ARENALES MARISTELA SANTOS Agosto 2011 SME0100 - Cálculo Numérico I Ementa: 1) Representação de números no computador. Erros em métodos numéricos. 2) Soluções

Leia mais

Conceitos e Princípios Gerais

Conceitos e Princípios Gerais Conceitos e Princípios Gerais Conceitos e Princípios Gerais Fases na resolução de problemas físicos Resolução do Modelo Matemático Conceitos Básicos de Cálculo Numérico Erros em Processos Numéricos Fases

Leia mais

Introdução. à Ciência da. Representação de Números em Ponto Flutuante. Aula 21. Números Fracionários

Introdução. à Ciência da. Representação de Números em Ponto Flutuante. Aula 21. Números Fracionários Universidade Federal de Pelotas Instituto de Física e Matemática Departamento de Informática Bacharelado em Ciência da Computação Introdução à Ciência da Computação Aula 21 Representação de Números em

Leia mais

Capítulo 2. Representação de números em vírgula flutuante

Capítulo 2. Representação de números em vírgula flutuante Capítulo 2 Representação de números em vírgula flutuante Adaptado dos transparentes das autoras do livro The Essentials of Computer Organization and Architecture Números inteiros Os computadores foram

Leia mais

Aula 3 - Representação de Dados

Aula 3 - Representação de Dados Aula 3 - Representação de Dados Marcos A. Guerine Universidade Federal Fluminense mguerine@ic.uff.br Na aula passada... História dos sistemas de numeração Bases de numeração Conversão entre bases Conversão

Leia mais

Capítulo 1 - Erros e Aritmética Computacional

Capítulo 1 - Erros e Aritmética Computacional Capítulo 1 - Erros e Carlos Balsa balsa@ipb.pt Departamento de Matemática Escola Superior de Tecnologia e Gestão de Bragança 2 o Ano - Eng. Civil e Electrotécnica Carlos Balsa 1/ 26 Sumário 1 Definição

Leia mais

REPRESENTAÇÃO DE DADOS. Prof. Maicon A. Sartin

REPRESENTAÇÃO DE DADOS. Prof. Maicon A. Sartin REPRESENTAÇÃO DE DADOS Prof. Maicon A. Sartin mapsartin@gmail.com Representação de Dados Sumário Introdução a Representação de Dados Complemento a 1 Aritmética em C1 Complemento a 2 Aritmética em C2 Aritmética

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação. Representação e aritmética binária

Universidade Federal de Uberlândia Faculdade de Computação. Representação e aritmética binária Universidade Federal de Uberlândia Faculdade de Computação Representação e aritmética binária Prof. Renato Pimentel 1 Tipos de informação Representação por meio de sequências binárias: 8 bits (byte) Também

Leia mais

Unidade III. Sistemas Numéricos e o Computador

Unidade III. Sistemas Numéricos e o Computador III.1 - O Sistema Decimal - Base: 10 - Dígitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Unidade III Sistemas Numéricos e o Computador Raimundo G. Nóbrega Filho - UFPB - CCEN - DI Notas de aula da disciplina Introdução

Leia mais

ARQUITETURA DE COMPUTADORES

ARQUITETURA DE COMPUTADORES Representação de Dados Professor: Airton Ribeiro de Sousa E-mail: airton.ribeiro@faciplac.edu.br 1 Ao longo dos anos, muitos padrões e convenções foram estabelecidas para determinar certos aspectos da

Leia mais

INTRODUÇÃO. O processo de modelagem matemática para resolver problemas reais pode ser visto pelas seguintes etapas: Escolha de um Método Adequado

INTRODUÇÃO. O processo de modelagem matemática para resolver problemas reais pode ser visto pelas seguintes etapas: Escolha de um Método Adequado 1 Métodos Numéricos INTRODUÇÃO O Cálculo Numérico, entendido com uma coletânea de métodos numéricos, consiste de uma poderosa ferramenta que nos auxilia na obtenção de soluções numéricas, em geral aproximadas,

Leia mais

MAT115 Introdução ao Processamento de Dados Professor: Ibirisol Fontes Ferreira DCC: Departamento de Ciência da Computação

MAT115 Introdução ao Processamento de Dados Professor: Ibirisol Fontes Ferreira DCC: Departamento de Ciência da Computação Representação de dados e sistemas de numeração MAT115 Introdução ao Processamento de Dados Professor: Ibirisol Fontes Ferreira DCC: Departamento de Ciência da Computação Todo o material

Leia mais

Erros numéricos por Mílton Procópio de Borba

Erros numéricos por Mílton Procópio de Borba Erros numéricos por Mílton Procópio de Borba 1. Alguns problemas ao fazermos contas no computador Os problemas a seguir foram analisados num Pentium, com a ajuda de pequenos programas feitos em QBasic.

Leia mais

Aula 4: Bases Numéricas

Aula 4: Bases Numéricas Aula 4: Bases Numéricas Fernanda Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Material baseado nos slides do prof. Diego Passos Fernanda Passos (UFF) Bases Numéricas

Leia mais

ERRO DE ARREDONDAMENTO E TRUNCAMENTO

ERRO DE ARREDONDAMENTO E TRUNCAMENTO CONCEITO DE ERRO A noção de erro está presente em todos os campos do Cálculo Numérico. De um lado, os dados, em si, nem sempre são exatos e, de outro lado, as operações sobre valores não exatos propagam

Leia mais

Números binários e erros

Números binários e erros Números binários e erros Alan Costa de Souza 14 de Agosto de 2017 Alan Costa de Souza Números binários e erros 14 de Agosto de 2017 1 / 1 Introdução Calcular a área de uma circunferência de 100 m de raio.

Leia mais

Cálculo Numérico - Mat 215. Prof. Dirceu Melo. Prof. Dirceu Melo - MAT215

Cálculo Numérico - Mat 215. Prof. Dirceu Melo. Prof. Dirceu Melo - MAT215 Cálculo Numérico - Mat 215 Prof. Dirceu Melo Prof. Dirceu Melo - MAT215 1 1ª AULA Introdução Sistemas Decimal e Binário Conversão de Sistemas de base Sistema Aritmético de Ponto Flutuante INTRODUÇÃO 3

Leia mais

Estudo de erros Erros na fase de modelagem: 1.2. Erros na fase de resolução:

Estudo de erros Erros na fase de modelagem: 1.2. Erros na fase de resolução: MATEMÁTICA ICET UFMT Clculo Numrico Licenciatura Plena em Matemática Prof. Geraldo Lúcio Diniz Estudo de erros 1. Introdução A obtenção de uma solução numérica para um problema físico por meio da aplicação

Leia mais

Aula 9: Estouro e Representação em Ponto Flutuante

Aula 9: Estouro e Representação em Ponto Flutuante Aula 9: Estouro e Representação em Ponto Flutuante Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Estouro e Ponto Flutuante FAC 1 / 43 Revisão

Leia mais

Organização de Computadores I

Organização de Computadores I Organização de Computadores I Aula 3 Material: Diego Passos http://www.ic.uff.br/~debora/orgcomp/pdf/parte3.html Organização de Computadores I Aula 3 1/17 Tópicos Numéricas. entre bases. de conversão..

Leia mais

Teoria de erros. Computação Teoria de erros Porquê?

Teoria de erros. Computação Teoria de erros Porquê? Teoria de erros Computação 003-004 Teoria de erros Porquê? Exemplos 0.^0 -.e-0= 5.698788845643e-06 f(x,y)=333.75y 6 +x (x y -y 6 -y 4 -)+5.5y 8 +x/(y) Matlab f(7767,33096) y -.806e+0 (Matlab) Maple f(7767,33096)

Leia mais

Aula 9: Estouro e Representação em Ponto Flutuante

Aula 9: Estouro e Representação em Ponto Flutuante Aula 9: Estouro e Representação em Ponto Flutuante Fernanda Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Material baseado nos slides do prof. Diego Passos Fernanda

Leia mais

1.1 Etapas na solução de um problema. 1.3 Tipos de erros. 1.4 Aritmética de ponto flutuante.

1.1 Etapas na solução de um problema. 1.3 Tipos de erros. 1.4 Aritmética de ponto flutuante. 1. Computação numérica 1.1 Etapas na solução de um problema. 1.2 Notação algorítmica. 1.3 Tipos de erros. 1.4 Aritmética de ponto flutuante. Algoritmos Numéricos Cap.1: Computaç~ao numérica Ed1.0 c 2001

Leia mais

Baseado nos slides de Anna Tostes SISTEMA NUMÉRICO

Baseado nos slides de Anna Tostes SISTEMA NUMÉRICO Baseado nos slides de Anna Tostes SISTEMA NUMÉRICO 1 Sumário 1. Sistema Numérico 2. Notação Posicional Sistema Decimal Sistema Binário Sistema Octal Sistema Hexadecimal 3. Conversão entre Bases 4. Operações

Leia mais

Circuitos Lógicos. Prof. Odilson Tadeu Valle

Circuitos Lógicos. Prof. Odilson Tadeu Valle Representações Binárias Circuitos Lógicos Prof. Odilson Tadeu Valle Instituto Federal de Santa Catarina IFSC Campus São José odilson@ifsc.edu.br 1/33 Conteúdo programático 1 Sistemas de numeração 2 Conversão

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores Eduardo Albuquerque Adaptado do material do Prof. Fábio M. Costa Instituto de Informática UFG 1S/2004 Representação de Dados e Aritmética Computacional Roteiro Números inteiros

Leia mais

Cálculo numérico Cálculo numérico - O Cálculo Numérico é uma metodologia para resolver problemas matemáticos através do computador. - Uma solução obti

Cálculo numérico Cálculo numérico - O Cálculo Numérico é uma metodologia para resolver problemas matemáticos através do computador. - Uma solução obti Tópicos Tópicos - Cálculo numérico - Representação e conversão de números - Representação de números em diferentes bases - Conversão de números da base decimal para uma qualquer base b - Conversão de números

Leia mais

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano

CÁLCULO NUMÉRICO. Profa. Dra. Yara de Souza Tadano CÁLCULO NUMÉRICO Profa. Dra. Yara de Souza Tadano yaratadano@utfpr.edu.br Aula 4 03/2014 Sistemas Numéricos Algarismos Significativos Os algarismos significativos de um número são aqueles que podem ser

Leia mais

Sistemas de Computação. Representação em Ponto Flutuante

Sistemas de Computação. Representação em Ponto Flutuante Representação em Ponto Flutuante Representação IEEE para ponto flutuante IEEE Standard 754 Estabelecido em 1985 como padrão uniforme para aritmética em ponto flutuante A maioria das CPUs suporta este padrão

Leia mais

SISTEMA DE NUMERAÇÃO. Introdução a Informática. Vinícius Pádua

SISTEMA DE NUMERAÇÃO. Introdução a Informática. Vinícius Pádua SISTEMA DE NUMERAÇÃO Introdução a Informática Sistema de Numeração Métodos científicos para representar os números Tipos Notação não posicional ou Posicional Difere se o algarismo tem valor fixo ou não

Leia mais

Sistemas de Numeração. Exemplos de Sistemas de Numeração (1) Exemplos de Sistemas de Numeração (2) Sistemas de Numeração

Sistemas de Numeração. Exemplos de Sistemas de Numeração (1) Exemplos de Sistemas de Numeração (2) Sistemas de Numeração Sistemas de Numeração Sistemas de Numeração (Aula Extra) Sistemas de diferentes bases Álgebra Booleana Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 27/2 Um sistema de numeração

Leia mais

Aula 4: Bases Numéricas

Aula 4: Bases Numéricas Aula 4: Bases Numéricas Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Bases Numéricas FAC 1 / 36 Introdução e Justificativa Diego Passos (UFF)

Leia mais

PARTE I I: ARITMÉTICA COMPUTACIONAL ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR

PARTE I I: ARITMÉTICA COMPUTACIONAL ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR PARTE I I: ARITMÉTICA COMPUTACIONAL ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR Introdução Como representar números em memória? Como representar números negativos e de ponto flutuante?

Leia mais

Estouro e Representação em Ponto Flutuante

Estouro e Representação em Ponto Flutuante Estouro e Representação em Ponto Flutuante Cristina Boeres Insituto de Computação (UFF) Fundamentos de Arquiteturas de Computadores Material baseado nos slides de Fernanda Passos Cristina Boeres (IC/UFF)

Leia mais

Números Binários. Apêndice A V1.0

Números Binários. Apêndice A V1.0 Números Binários Apêndice A V1.0 Roteiro Histórico Números de Precisão Finita Números Raiz ou Base Conversão de Base Números Binários Negativos Questões Histórico As maquinas do século XIX eram decimais

Leia mais

Aritmética dos Computadores

Aritmética dos Computadores William Stallings Arquitetura e Organização de Computadores Capítulo 4 Aritmética dos Computadores Unidade Lógica e Aritmética Faz os cálculos lógicos e aritméticos. Tudo, num sistema computador, está

Leia mais

Notas de Aula Guilherme Sipahi Arquitetura de Computadores

Notas de Aula Guilherme Sipahi Arquitetura de Computadores Notas de Aula Guilherme Sipahi Arquitetura de Computadores Aritmética de Ponto Flutuante. 1. Da aritmética de Inteiros a aritmética de Pontos Flutuantes : Números inteiros deixam de representar uma parte

Leia mais

Organização de Computadores I

Organização de Computadores I Organização de Computadores I Aula 6 Material: Diego Passos http://www.ic.uff.br/~debora/orgcomp/pdf/parte6.html Organização de Computadores I Aula 6 1/17 Tópicos Representação de números não-inteiros.

Leia mais

Representação de números Conversão de base b para base 10

Representação de números Conversão de base b para base 10 Representação de números Conversão de base b para base 0 Números em base 0 0,,,, 8, 9, 0,,,, 9, 0,,, 99, 00, 0,, 47,, 999, 000, 00, 0 dígitos que constituem a base Valor depende da posição dos dígitos

Leia mais

ARQUITETURA DE COMPUTADORES

ARQUITETURA DE COMPUTADORES Representação de Dados Professor: Airton Ribeiro de Sousa E-mail: airton.ribeiros@gmail.com 1 REPRESENTAÇÃO DE DADOS: SÍMBOLO: Marca visual ou gráfica que representa um objeto que desejamos identificar

Leia mais

Introdução à Computação

Introdução à Computação Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Introdução à Computação A Informação

Leia mais

Operações com números binários

Operações com números binários Operações com números binários Operações com sistemas de numeração Da mesma forma que se opera com os números decimais (somar, subtrair, multiplicar e dividir) é possível fazer essas mesmas operações com

Leia mais

Números são números, letras são números e sinais de pontuação, símbolos e até mesmo as instruções do próprio computador são números.

Números são números, letras são números e sinais de pontuação, símbolos e até mesmo as instruções do próprio computador são números. Para o computador, tudo são números. Números são números, letras são números e sinais de pontuação, símbolos e até mesmo as instruções do próprio computador são números. O método ao qual estamos acostumados

Leia mais

Noções sobre Erros em Matemática Computacional

Noções sobre Erros em Matemática Computacional Noções sobre Erros em Matemática Computacional Sumário Representação de Números em Ponto Flutuante Erros em Expressões Definições Úteis Ponto Flutuante em Computadores Representação de Números em Ponto

Leia mais

a base da potência usada coincide com a base do sistema de numeração.

a base da potência usada coincide com a base do sistema de numeração. Capítulo 1 Introdução 25 1 2 12 2 0 6 0 2 3 2 25 10 2 1 1 = 11001 Figura 1.2 Exemplo de conversão decimal / binário. 1.1.1 Quantidades inteiras As quantidades inteiras positivas i N são representadas habitualmente

Leia mais

Cálculo Numérico. que é denominado erro relativo. Temos então para os dados acima:

Cálculo Numérico. que é denominado erro relativo. Temos então para os dados acima: Cálculo Numérico 1 Erros Nenhum resultado obtido através de cálculos eletrônicos ou métodos numéricos tem valor se não tivermos conhecimento e controle sobre os possíveis erros envolvidos no processo.

Leia mais

Tópicos. - Cálculo numérico. - Representação de números. - Análise e representação de erros

Tópicos. - Cálculo numérico. - Representação de números. - Análise e representação de erros Tópicos Tópicos - Cálculo numérico - Representação de números - Representação de números em diferentes bases - Conversão de números da base b para a base decimal - Representação de números em computadores

Leia mais

Representação de números - Conversão de base b para base 10

Representação de números - Conversão de base b para base 10 Representação de números - Conversão de base b para base Números em base 0,,,, 8, 9,,,,, 9, 0,,, 99, 0,,, 47,, 999, 00, 0, dígitos que constituem a base Valor depende da posição dos dígitos centenas unidades

Leia mais

3/14/2012. Programação de Computadores O Computador. Memória Principal representação binária

3/14/2012. Programação de Computadores O Computador. Memória Principal representação binária Programação de Computadores O Computador Memória Principal representação binária Prof. Helton Fábio de Matos hfmatos@dcc.ufmg.br Agenda Memória principal. Memória secundária. O que são bytes e bits. Tecnologias

Leia mais

Códigos Especiais. Tiago Dezuo DEE - Engenharia Elétrica CCT. ALB0001 Álgebra de Boole JOINVILLE

Códigos Especiais. Tiago Dezuo DEE - Engenharia Elétrica CCT. ALB0001 Álgebra de Boole JOINVILLE Códigos Especiais Tiago Dezuo DEE - Engenharia Elétrica CCT ALB0001 Álgebra de Boole JOINVILLE Introdução contextualização Representação de números em diversas bases Conversão de bases Operações aritmémcas

Leia mais

Representação de números - Conversão de base b para base 10

Representação de números - Conversão de base b para base 10 Representação de números - Conversão de base b para base Números em base 0,,,, 8, 9,,,,, 9, 0,,, 99, 0,,, 47,, 999, 00, 0, dígitos que constituem a base Valor depende da posição dos dígitos centenas unidades

Leia mais

Cálculo Numérico Faculdade de Ciências Sociais Aplicadas e Comunicação FCSAC Faculdade de Engenharia, Arquiteturas e Urbanismo FEAU

Cálculo Numérico Faculdade de Ciências Sociais Aplicadas e Comunicação FCSAC Faculdade de Engenharia, Arquiteturas e Urbanismo FEAU Cálculo Numérico Faculdade de Ciências Sociais Aplicadas e Comunicação FCSAC Faculdade de Engenharia, Arquiteturas e Urbanismo FEAU Prof. Dr. Sergio Pilling (IPD/ Física e Astronomia) REVISÃO DA 1ª PARTE

Leia mais