4-Sistemas Numericos

Propaganda
CÁLCULO NUMÉRICO
Profa. Dra. Yara de Souza Tadano
[email protected]
Aula 4
03/2014
Sistemas Numéricos
Algarismos Significativos
¨ 
¨ 
Os algarismos significativos de um número são aqueles que
podem ser usados com confiança.
Corresponde ao número de algarismos corretos mais um
algarismo estimado.
Aula 4 – Sistemas Numéricos
Cálculo Numérico
3/16
Sistemas
Numéricos
Aula 4 – Sistemas Numéricos
Cálculo Numérico
4/16
Sistema Decimal
¨ 
Sistema decimal (na base 10): Utiliza 10 algarismos para
representar os números.
Aula 4 – Sistemas Numéricos
Cálculo Numérico
5/16
Sistema Binário
¨ 
Sistema binário (na base 2): utiliza apenas dois estados
(0 ou 1).
Aula 4 – Sistemas Numéricos
Cálculo Numérico
6/16
Representação em ponto flutuante
¨ 
As quantidades fracionárias são representadas em
computadores usando-se a forma de ponto flutuante, onde:
¨ 
A parte fracionária é chamada mantissa ou significando (m);
¨ 
A parte inteira é chamada expoente ou característica (e).
¨ 
A base do sistema numérico é dado por β .
m⋅β
e
Aula 4 – Sistemas Numéricos
Cálculo Numérico
7/16
Representação em ponto flutuante
¨ 
Em qualquer máquina, apenas um subconjunto dos números
reais é representado exatamente e, portanto a representação
de um número real será realizada através de truncamento ou
arredondamento.
Aula 4 – Sistemas Numéricos
Cálculo Numérico
8/16
Representação em ponto flutuante
¨ 
No sistema decimal, teremos que qualquer número com
k – dígitos decimais pode ser representado por:
y = ±0, d1d2 d3 !dk ×10
com 1 ≤ d1 ≤ 9, 0 ≤ di ≤ 9
¨ 
n
∀i = 2, 3,!, k
Esta é a representação truncada de um número real qualquer
com k dígitos.
Aula 4 – Sistemas Numéricos
Cálculo Numérico
9/16
Representação em ponto flutuante
¨ 
O arredondamento com k dígitos é dado pelo truncamento
de y + 5 ×10
¨ 
n−( k+1)
.
Desse modo, ao arredondar, se dk+1 ≥ 5 , adicionamos 1 a dk ,
ou seja, arredondamos para cima.
¨ 
Quando dk+1<5, simplesmente cortamos tudo menos os
primeiros k algarismos, ou seja, arredondamos para baixo.
Aula 4 – Sistemas Numéricos
Cálculo Numérico
10/16
Representação em ponto flutuante
¨ 
Algumas linguagens de programação permitem que as
variáveis sejam declaradas em precisão dupla.
¨ 
Neste caso, esta variável será representada no sistema de
aritmética de ponto flutuante, mas com aproximadamente o
dobro de dígitos disponíveis na mantissa.
¨ 
É importante lembrar que, nesse caso, o tempo de execução
e requerimentos de memória aumentam significativamente.
Aula 4 – Sistemas Numéricos
Cálculo Numérico
11/16
Conversão de números decimal e binário
¨ 
Conversão de números inteiros:
¤  Um
número na base β, a j a j−1 !a2 a1a0
(
)β , 0 ≤ a ≤ ( β −1)
k
k = 1,!, j pode ser escrito na forma polinomial:
j
a j β + a j−1β
j−1
2
1
+!+ a2 β + a1β + a0 β
0
Com esta representação, podemos facilmente converter um
número representado no sistema binário para o sistema
decimal.
Aula 4 – Sistemas Numéricos
Cálculo Numérico
12/16
Conversão de números decimal e binário
¨ 
Processo para converter um número inteiro representado no
sistema binário para o sistema decimal:
¤ 
A representação do número a j a j−1 !a2 a1a0 na base 10,
2
denotado por b0 , é obtido através do processo:
(
)
bj =
aj
b j−1 =
a j−1 + 2b j
b j−2 = a j−2 + 2b j−1
!
b1 =
!
a1 + 2b2
b0 =
a0 + 2b1
Aula 4 – Sistemas Numéricos
Cálculo Numérico
13/16
Conversão de números decimal e binário
¨ 
Processo para converter um número inteiro representado no
sistema decimal para um sistema com base menor:
¤ 
Considere um número inteiro N na base 10 e a sua representação
na base β ( qn rn rn−1 !r3r2 r1 ) β . O algoritmo a seguir é seguido para
encontrar cada dígito.
Até que
qn < β
Aula 4 – Sistemas Numéricos
Cálculo Numérico
14/16
Conversão de números decimal e binário
¨ 
Processo para converter um número fracionário representado
no sistema binário para o sistema decimal:
¤ 
Podemos representar um número fracionário no sistema binário
por 0, d1d2 !d j ! 2 , portanto, poderá ser representado por:
(
)
d1 × 2 −1 + d2 × 2 −2 +!+ d j × 2 − j +!
Aula 4 – Sistemas Numéricos
Cálculo Numérico
15/16
Conversão de números decimal e binário
¨ 
Processo para converter um número fracionário representado
no sistema decimal para o sistema binário:
¤ 
¤ 
¤ 
Um número real entre 0 e 1 pode ter representação finita no sistema
decimal, mas representação infinita no sistema binário.
Seja r um número entre 0 e 1 no sistema decimal e 0, d1d2 !d j !
sua representação no sistema binário.
(
)
Os dígitos binários d1, d2, ... , dj , ... são obtidos através do
algoritmo:
Aula 4 – Sistemas Numéricos
Cálculo Numérico
16/16
2
Conversão de números decimal e binário
¨ 
Processo para converter um número fracionário representado
no sistema decimal para o sistema binário:
¤ 
Passo 0: r1 = r ; k = 1
¤ 
Passo 1: Calcule 2rk
Se 2rk ≥ 1, faça: dk = 1,
Caso contrário, faça: dk = 0.
¤ 
Passo 2: Faça rk+1 = 2rk – dk
Se rk+1 = 0, PARE!
Caso contrário:
¤ 
Passo 3: k = k+1
Volte ao Passo 1.
Aula 4 – Sistemas Numéricos
Cálculo Numérico
17/16
Download