Tópico: Noções Básicas sobre Erros

1. Representação de Números

[E] Calcular a área de uma circunferência de raio 100 m:
 
Se pi vale: Então a área vale:
3.14 31400 m2
3.1416 31416 m2
3.141592654 31415.92564 m2

1.1. Conversão de números nos sistemas decimal e binário

[E] Representações decimal e binária:

    (347)10   = 3 x 102 + 4 x 101 + 7 x 100
    (10111)2 = 1 x 24 + 0 x 23 + 1 x 22 + 1 x 21 + 1 x 20
             =  16    +  0     +   4    +   2    +   1   =   (23)10

[P] Qual o maior número que estes 5 bits podem representar? E 1 byte? e 2 bytes? ( 8 bits = 1 byte)

[E] Conversão de um decimal  inteiro (347) para um binário:

347 = 2 x 173 + 1 -----> 1 x 20
173 = 2 x  86 + 1 -----> 1 x 21
 86 = 2 x  43 + 0 -----> 0 x 22
 43 = 2 x  21 + 1 -----> 1 x 23
 21 = 2 x  10 + 1 -----> 1 x 24
 10 = 2 x   5 + 0 -----> 0 x 25
  5 = 2 x   2 + 1 -----> 1 x 26
  2 = 2 x   1 + 0 -----> 0 x 27
  1 = 2 x   0 + 1 -----> 1 x 28

Ou seja:

(347)10 = 1 x 28 + 0 x 27 + 1 x 26 + 0 x 25 + 1 x 24
          + 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20
        = (101011011)2
[C] A conversão de decimal para binário e vice-versa pode acarretar erros pois o número que possui representação finita em uma base pode não ter uma representação finita em outra.

[E] Veja os exemplos:

(0.5)10 = (0.1)2

(0.11)10 = (0.0001110000101000...)2

1.2. Aritmética de ponto flutuante

[C] Representação de ponto flutuante: o número é representado como

     +.(d1d2d3...dt)xBe
ou
    -.(d1d2d3...dt)xBe

sendo que:
t = número de dígitos da mantissa;
B = base na qual a máquina opera;
e = expoente, pertencente ao intervalo [-u,u].

[C] Se numa operação resultar:

  1. e < -u -----> "underflow"
  2. e >  u   -----> "overflow"
2. Erros de arredondamento e truncamento em um sistema de aritmética de ponto flututante

[C] A máquina pode armazenar somente um número limitado de dígitos para representar um número. Quando o número de dígitos necessários para a representação correta é maior que o número suportado, a máquina terá que truncar ou arredondar.

[E] Para uma máquina que armazena 7 dígitos, a representação de pi  (sendo pi = 0.314159256...) poderá ser:

  1. Truncamento: pi = .3141592 x 101
  2. Arredondamento: pi = .3141593 x 101
[C] Em geral as máquinas truncam, pois o arredondamento envolve processamento e, portanto, é mais lento.

[C] Fontes de resultados inusitados:

  1. Truncamento na transformação de decimal para binário.
  2. Truncamento na transformação de binário para decimal.
  3. Truncamento de binários com representação infinita.