Você está na página 1de 14

1

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO

UNIDADE ACADEMICA
DE SERRA TALHADA
Bacharelado em Sistemas da Informacao
Infra-Estrutura de Hardware - 5 Perodo

Nocoes de Aritmetica de Maquina


Carlos Andre Batista
26 de marco de 2009

Sum
ario
0.1
0.2
0.3
0.4
0.5

0.1

Erros . . . . . . . . . . . . . . . .
0.1.1 Classificacao de Erros . . .
Nocoes de Aritmetica de Maquina
0.2.1 Distribuicao Nao-Uniforme
Operacoes . . . . . . . . . . . . .
Exerccios . . . . . . . . . . . . .
Bibliografia . . . . . . . . . . . .

. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
dos N
umeros de Maquina
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .

. 3
. 3
. 4
. 5
. 6
. 8
. 12

Erros

Sao provenientes da diferenca entre o resultado exato e o resultado de uma


operacao numerica realizada por uma maquina (computador ou calculadora).
Pois, como as maquinas tem seus limites de precisao, nao e possivel representar todos os n
umeros reais de um dado intervalo corretamente, muitos deles
serao truncados ou arredondados para poder serem utilizados.

0.1.1

Classifica
c
ao de Erros

Podemos classificar os erros como sendo inerentes ou originados a partir de


truncamentos.
Inerentes - Sao erros que o usuario nao tem condicoes de evita-los. Eles
surgem de modelos matematicos, medidas, etc.
Exemplo: Calcular o comprimento de uma circunferencia a partir da
medida do raio r = 10cm, usando a expressao C = 2r. Soluc
ao: Temos

entao que C = 2 10 3, 14159254...cm = 62, 83185307...cm, ou seja, como


nao temos como dar um resultado exato, ja que e um n
umero irracional,
entao em algum momento arredondamos o n
umero para termos algum
valor para mostrar, como por exemplo, podemos dizer que a nossa medida de
C
= 62, 83cm. Nao e um valor exato, mas pode ser uma aproximacao muito
boa, dependendo da aplicacao ao qual a medida se destina. No entanto, o
erro, por menor que seja, e inevitavel.
3


SUMARIO

Truncamentos - Sao erros que surgem quando substitui-se um processo


matematico infinito por uma parte finita dele.
Exemplo: No calculo de
ex =

X
xk
k=0

k!

usa-se, ao inves de infinitas parcelas, um n


umero natural n, obtendo portanto,
um valor aproximado
n1
X xk
ex
=
k=0 k!
.
o processo mediante o qual se eliminam algarisArredondamentos - E
mos de menor significancia a um n
umero real.
Representac
oes de Erros
Absoluto -
x - e a diferenca entre o valor exato e o valor aproximado,
isto e,

x = x x
, onde x e o valor exato e x e o valor aproximado.
Relativo -
x - e o quociente entre o erro absoluto e o valor exato, isto
e,
x x

x
=

x=
x
x
Percentual - px - e apenas o produto do erro relativo por 100%, isto e,
px = 100
x%
.

0.2

Noc
oes de Aritm
etica de M
aquina

N
umero de M
aquina Definicao: Um n
umero real x e dito um n
umero de
maquina (ou de ponto flutuante normalizado) se valem:
1. x = m be
2. m = d1 , d2 d2 ...dt , t N
3. d1 6= 0, 0 di (b 1), i = 2, 3, 4, ..., t
4. e1 e e2 ; e1 , e2 Z

0.2. NOC
OES
DE ARITMETICA
DE MAQUINA

onde:
b e a base b 2, b N e e o expoente (caracterstica), e Z m e a
mantissa normalizada. Ela e um n
umero frecionariop tal que b1 leq|m| < 1
t e o n
umero de dgitos usados na representacao da mantissa normalizada di
sao os dgitos da mantissa. di {0, 1, 2, ..., (b 1)}.
Observacoes:
1. d1 6= 0 representacao u
nica
2. 0 e n
umero de maquina, representado por 0, 000...0 be1
3. Se x e um n
umero de maquina, x tambem e.
4. Menor N
umero Positivo: 1, 00...00 be1
5. Maior N
umero: (b 1), (b 1)(b 1)...(b 2) be2
O conjunto de todos os n
umeros de maquina e chamado de Sistema de
Ponto Flutuante, e neste curso, representaremos por:
F (b, t, e1 , e2 )
.
Proposic
ao: O conjunto do n
umeros de maquina e um subconjunto
finito dos n
umeros racionais.
Prova:
1. F Q
2. n(F ) = 2 (b 1) bt1 (e2 e1 + 1) + 1

0.2.1

Distribui
c
ao N
ao-Uniforme dos N
umeros de M
aquina

Proposi
c
ao: Fixado o expoente e, a distancia entre dois n
umeros de maquina
consecutivos de uma maquina qualquer F (b, t, e1 , e2 ) com as mantissas normalizadas e dado por bet .
Arredondamento Definicao: Seja F (b, t, e1 , e2 ) um sistema de ponto
flutuante. A funcao  : R F e chamada arredondamento se:
1. x = x; se x F
2. se x y, entao x y
3. Se x
/ F , entao entre x e x nao existem elementos de F.


SUMARIO

Underflow
B
 B
 BN

m 0 m

XXX
y
X

:






XXX

XXX

XX




Overflow

Figura 1: Regioes de Underflow e Overflow.


Tipos de arredondamentos:
1. Assimetrico:
Se x 0 : x x
Se x < 0 : x x
|x x| < bet
2. Simetrico:
Representado por Ox, sera o n
umero de maquina mais proximo. Se x
for equidistante de dois n
umeros de maquina consecutivos, Ox sera o
n
umero de maquina de maior valor absoluto dentre esses dois.
|x Ox|

0.3

bet
2

Operac
oes

Sejam F (b, t, e1 , e2 ) um sistema de ponto flutuante e xI = mI deI e xII =


mII deII com xI , xII F .
Para as operacoes fundamentais se admite que a maquina possui dgitos
de reserva, com as vistas `a possivel necessidade de arredondamento.
Adic
ao: Esta operacao e definida como
+:F :F F
(xI , xII ) 7 x = xI + xII
Ela e efetuada obedecendo aos passos do seguinte algoritmo. Nela nao
vale a Lei do Corte Aditivo e a Propriedade da Associatividade.


0.3. OPERAC
OES
Algoritmo
igualar potencias

1 SE c1 6= c2 ENTAO

SE c1 < c2 ENTAO
m1 = m1 bc1c2
c = c2

SENAO
m2 = m2 bc2c1
c = c1
FIM SE
FIM SE
2 m = m1 + m2 ;
nomalizar a mantissa

3 SE |m| 1 ENTAO
1
m=mb
c=c+1

SE c > e2 ENTAO
IMPRIMA Overflow
FIM DO PROGRAMA
FIM SE
FIM SE
laco para normalizar a mantissa
4 ENQUANTO |m| < 1
m=mb
c=c1

SE c < e1 ENTAO
IMPRIMA Underflow
FIM DO PROGRAMA
FIM SE
FIM ENQUANTO
5 m = O(m)
6 x = m bc
7 FIM DO PROGRAMA


SUMARIO

8
Subtrac
ao: Equivale `a adicao, ja que
xI xII = xI + (xII )
.
definida como,
Multiplicac
ao: E
x:F F F
(xI , xII ) 7 x = xI xII = mI xII beI +eII
.

Nela nao valem: Lei do Corte Multiplicativo, Propriedade a Associatividade e Distributividade.


Obs.: O resultado dever
a sempre ser normalizado e arredondado.
Inverso Multiplicativo: Dado x = m be 6= 0, seu inverso multiplicativo vem a ser y F tal que x y esta mais proximo de 1 do que x z, onde
z e um outro elemento qualquer de F . Normalmente y e denotado por x1
(pseudo-inverso).
Problema: Nem sempre o inverso do inverso de um n
umero e ele mesmo.
Divis
ao: A operacao
/:F F F
xI
(xI , xII ) 7 x =
, xII 6= 0.
xII
pode ser efetuada de dois modos:
1.

xI
xII

= xI x1
II

2.

xI
xII

0.4

mI
mII

beI eII

Exerccios

1. Dada a maquina F (10, 4, 9, 9), encontre:


(a) O maior n
umero
(b) O menor n
umero positivo
(c) O n
umero de mantissas normalizadas
(d) O n
umero de expoentes
(e) O n
umero de elementos que esta maquina possui.
(f) As regioes de Underflow e Overflow

0.4. EXERCICIOS

2. Dada a maquina F (2, 8, 12, 12), encontre:


(a) O maior n
umero
(b) O menor n
umero positivo
(c) O n
umero de mantissas normalizadas
(d) O n
umero de expoentes
(e) O n
umero de elementos que esta maquina possui.
(f) As regioes de Underflow e Overflow
(g) A representacao interna de 12,3
3. Dado F como definido na questao 1, determine a distancia entre os
n
umeros de maquina consecutivos abaixo:
(a) x1 = 3, 457 109 e x2 = 3, 458 109
(b) y1 = 3, 457 109 e y2 = 3, 458 109
4. Dado F como definido na questao 1, arredonde assimetrica e simetricamente os n
umeros abaixo:
(a) x1 = 3, 45742 102
(b) x2 = 3, 45773 105
(c) x3 = 0, 235249895 102
(d) x4 = 0, 045780102 109
(e) x5 = 1, 3457996 109
5. Dado F como definido na questao 1, realize as seguintes operacoes,
arredondando simetrica e assimetricamente os resultados: x1 = 0, 6234
102 , x2 = 0, 2246 101 , x3 = 0, 5590 103 , x4 = 0, 5554 102
(a) x1 + x2
(b) x1 x2
(c) x3 x4
(d) x3 /x4
(e) x3 x1
4
6. Dado F como definido na questao 1, verifique alguns problemas com
operacoes fundamentais quanto as propriedades ou leis citadas em cada
questao.


SUMARIO

10

(a) Adicao:
Lei do corte aditivo: Sejam a, b e c R. Se a + b = a + c Entao
b=c
Lei da associatividade: Sejam a, b e c R. Temos (a + b) + c =
a + (b + c).
i. a = 3, 245 101
b = 4, 587 103
c = 8, 794 104
ii. a = 31, 46
b = 0, 004256
c = 0, 0009678
(b) Multiplicacao:
Associatividade multiplicativa: Sejam a, b e c R. Temos (a
b) c = a (b c).
i. a = 6, 004 101
b = 6, 005 101
c = 6, 006 101
ii. a = 2, 511 101
b = 1, 001 101
c = 3, 131 101
Distributividade multiplicativa: Sejam a, b e c R. Temos a
(b + c) = a b + a c).
i. a = 4, 121 101
b = 1, 214 103
c = 3, 124 103
ii. a = 5, 121 100
b = 2, 214 103
c = 2, 124 103
(c) Inverso multiplicativo: Sejm a R, a 6= 0. Logo, a a1 e
(a1 )1 = 1

0.4. EXERCICIOS

11

i. a = 9, 900 101
ii. a = 8, 700 101
Divisao:Sejam a, b R, b 6= 0. Logo, a/b = a 1/b.
i. a = 1, 300 100
b = 7, 000 101
ii. a = 1, 550 100
b = 8, 700 101
Curiosidade:Sejam a, b R. Logo, (a b)2 = a2 2ab + b2 .
i. a = 3, 473 101
b = 3, 472 101
ii. a = 5, 003 100
b = 5, 004 100
7. Para a maquina F (10, 3, 5, 5) e com arredondamento simetrico, determine:
(a) Quantos n
umeros reais tem representacao exata nessa maquina.
(b) Quais as regioes de underflow e overflow ? De exemplos de situacoes
em que ocorrem esses problemas.
8. Para a maquina F (2, 6, 3, 4), com arredondamento simetrico, indique:
(a) Quantos sao as mantissas normnalizadas para um dado expoente;
(b) Quantos e quais sao os expoentes;
(c) Quantos n
umeros tem representacao nessa maquina;
(d) Qual o maior n
umero aceitavel na base 10;
(e) Qual o menor n
umero positivo aceitavel na base 10;
(f) Qual a menor distancia (gap) entre dois n
umeros consecutivos
(g) Quais as regioes de underflow e overflow ?
(h) Qual a representacao interna de 12.4;
(i) De exemplos nas operacoes de adicao, subtracao, etc, em que ocorrem problemas de underflow e overflow.
9. Idem para F (2, 6, 4, 3) e na letra h)5.7.
10. Represente na reta real todos os n
umeros do sistema F (2, 3, 1, 2),
indicando inclusive as regioes de underflow e overflow.


SUMARIO

12

11. Verifique se pode existir um sistema de ponto flutuante com e1 = 2,


e2 = 5, t = 2 que possua 37 elementos.
12. Considere a serie de termos positivos:

X
1
n=0

3i

. Calcule, usando F(10,4,-9,9), o valor aproximado desta serie, efetuando a soma dos 5 primeiros termos da mesma, de dois modos diferentes:
(a) n variando de 0 `a 4, ou seja, da esquerda para a direita.
(b) n variando de 4 `a 0, ou seja, da direita para a esquerda.
Os dois resultados encontrados sao iguais? Se nao, qual deles esta mais
proximo do valor exato? Justifique.
13. Dado o sistema de ponto flutuante F (10, 3, 5, 5), determine a cardinalidade de F e de exemplo de nao validade da associatividade, distributividade, lei do corte (aditivo e mutiplicativo) e de que (a b)2 pode
ser diferente de a2 2ab + b2 , e que esta u
ltima expressao pode ainda
ser obter um resultado negativo.

0.5

Bibliografia

Calculo Numerico - Aspectos Teoricos e Computacionais - Ruggiero & Lopes - Ed. Makron Books - 2a Ed. - 1996.
Calculo Numerico Computacional - Claudio & Marins - Ed. Atlas
S. A. - 2a Ed. - 1994.

Você também pode gostar