REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão...

17
REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros

Transcript of REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão...

Page 1: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

REPRESENTAÇÃO BINÁRIA E CONVERSÃO

Itens adicionais ou redundantes do capítulo sobre conversão e erros

Page 2: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

172

Como é representado um número decimal – notação

posicional

21012 10610710710510276.257

Veja as potências da base (base 10).Depois da vírgula decimal, os expoentes da base são: -1, -2, -3, -4, ...Isto ainda não é a representação dentro do computador

04/11/23

Page 3: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

3

Base 2 – notação posicional

1875.11

)21212020(

)21212021()0011.1011(

10

4321

0123

2

Na base 2, depois do ponto binário, os expoentes da base 2 são: -1, -2, -3, -4, -5, ....Isto não é representação dentro do computador

04/11/23 17

Page 4: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

4

Converter inteiros de base 10 para representação binária

Tabela 1 Conversão de um inteiro de base 10 para representação binária. Exemplo converter o número 11 em base decimal para base binária.

Quociente Resto

11/2 5

5/2 2

2/2 1

1/2 0

01 a

11 a

20 a

31 a

Portanto,

2

2012310

)1011(

)()11(

aaaa

04/11/23 17

Page 5: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

5

Início

Entrada(N)10

i = 0

Dividir N por 2 para ter o quociente Q e resto R

ai = R

Q = 0?

n = i(N)10 = (an. . .a0)2

Fim

Inteiro N a ser convertido para o formato binário

i=i+1, N=Q

Não

Sim

Conversão de número inteiro de base 10 em base binária

04/11/23 17

Page 6: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

176

NúmeroNúmero

depois do ponto

decimal

Número depois do

ponto decimal

0,375 0.3750.75 0.751.5 0.51.0 0.0

Tabela 2. Conversão de fração de base 10 para representação binária do número decimal fracionário 0,1875.

10 a20 a31 a41 a

Portanto,

2

2432110

)0011.0(

)()1875.0(

aaaa

21875.0 2375.0 275.0

25.0

Conversão de decimal fracionário para binário

04/11/23

Page 7: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

177

Início

Entrada (F)10

Multiplicar F por 2 para obter o número S antes da decimal; e T depois da decimal T

ai = R

É T =0?

n = i(F)10 = (a-1. . .a-

n)2

Fim

Fração F a ser convertida para formato binário

Não

Sim

T F1,ii

1i

04/11/23

Page 8: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

178

Conversão de número de base decimal, com parte inteira e

fracionária para binário

210 ?.?1875.11

210 )1011()11(

210 )0011.0()1875.0( Parte fracionária

Ajuntando as partes:

210 )0011.1011()1875.11(

Parte inteira

Converter separadamente a parte inteira e fracionária

04/11/23

Page 9: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

179

Nem todos os números fracionários decimais podem ser representados

exatamente

NúmeroNúmero

depois da decimal

Número antes da decimal

0.6 0.61.2 0.20.4 0.40.8 0.81.6 0.6

Tabela 3. Conversão de fração decimal para representação binária. Exemplo para a fração decimal 0,3 .

23.0 26.0 22.0 24.0 28.0

10 a

21 a30 a

40 a

51 a

28125.0)01001.0()()3.0( 225432110 aaaaa

Veja que o 0.6 vai repetir periodicamente

04/11/23

Page 10: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

1710

Uma outra forma de ver a conversão

Converter para base 2

101875.11

2

0123

013

13

310

1011

21212021

222

122

3211

A maior potência de 2 que cabe em 11 é 2x2x2

04/11/23

Page 11: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

1711

2

4321

43

310

0011.

21212020

22

0625.021875.0

210 0011.10111875.11

O maior fracionário que cabe em 0,1875 é 0,125 = 2^(-3)

Ajuntando as duas partes, tem-se:

O maior fracionário que cabe em 0,0625 é 0,0625 = 2^(-4)

Conversão da parte fracionária

04/11/23

Page 12: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

ARITMÉTICA DE PONTO FLUTUANTE

Como se faz no computador

Seja x um número qualquer na base em aritmética de ponto flutuante de t dígitos:

x = ±(.d1 d2 ... dt) e

Onde: (i) ±(.d1 d2 ... dt) e é uma fração na base

(ii) dj {0,1,2,..., -1}

(iii) e [m, M]

(iv) t = número máximo de dígitos da mantissa

04/11/2312 17

Page 13: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

Um número não pode ser representado se o expoente “e”(de beta) se estiver fora dos limites m e M.

“Underflow” se e < m

“Overflow” se e > M

Números cuja representação em aritmética de ponto flutuante de t dígitos extrapolam os t dígitos da

mantissa são armazenados por arredondamento ou por truncamento.

•truncagem: descartar todos os decimais a partir de um específico •arredondamento:

–para cima, descartado para > 5–para baixo, descartado para < 50,57 0,6

0,52 0,5

0,57 0,50,52 0,5

04/11/2313 17

Page 14: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

x Representação por

arredondamento

Representação por truncamento

1.25 0.12510 0.12510

10.053 0.101102 0.100102

-238.15 -0.238103 -0.238103

2.71828 0.272101 0.271101

0.000000007 Underflow Underflow

718235.82 Overflow Overflow

Exemplo: Seja um sistema de aritmética de ponto flutuante cuja mantissa tenha t=3 dígitos, base =10, m=-4 e M=4.

Overflow e underflow

04/11/2314 17

Page 15: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

Exemplo: Dados:

x = 0.937104

y = 0.127102,

calcule x + y para um sistema em que t=4 (número de dígitos significativos na mantissa) e =10 (base 10 ou decimal).

x + y = 0.9370104 + 0.0013104 = 0.9383104

Operação com ajuste de ponto decimal

04/11/2315 17

Page 16: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

16

Propagação de erros 1/2

Exemplo: Suponha-se que as operações a seguir sejam processadas em uma máquina com 4 dígitos significativos e fazendo-se: x1 = 0,3491x104 e x2 = 0,2345x100, tem-se:

(x2 + x1) − x1 == (0,2345x100 + 0,3491x104) − 0,3491x104

= 0,3491x104 − 0,3491x104 = 0,0000

x2 + (x1 − x1) == 0,2345x100 + (0,3491x104 − 0,3491x104)= 0,2345 + 0,0000 = 0,2345

04/11/23 17

Page 17: REPRESENTAÇÃO BINÁRIA E CONVERSÃO Itens adicionais ou redundantes do capítulo sobre conversão e erros.

17

Propagação de erros 2/2

Os dois resultados são diferentes, quando não deveriam ser, pois a adição é uma operação distributiva.(x2 + x1) − x1 = 0,0000 ex2 + (x1 − x1) = 0,2345 Causa da diferença arredondamento feito na

adição (x2 + x1), cujo resultado tem 8 dígitos

A máquina só armazena 4 dígitos (desprezando os menos significativos)

A propriedade da adição (x1+x2)-x1=x2 (x1-x1) não vale no caso, para matemática com número pequeno de dígitos

04/11/23 17