7. Conversão de Base

Propaganda
Sistemas de Informações
Fundamentos da Computação
7. Conversão de Bases
Márcio Aurélio Ribeiro Moreira
[email protected]
http://si.uniminas.br/~marcio/
Conversão de Bases
 Conversão Base B  Decimal:
 Colocar o número na formal polinomial (∑ algarismo x
Bposição-1) e resolver:
 Exemplo Binário  Decimal:
1101(2) = 1x23 + 1x22 + 0x21 + 1x20

= 1x8 + 1x4 + 0x2 + 1x1 = 13(10)
 Exemplo Octal  Decimal:
132(8) = 1x82 + 3x81 + 2x80

= 1x64 + 3x8 + 2x1 = 90(10)
 Exemplo Hexadecimal  Decimal:
A7D(16) = A x162 + 7x161 + D x160

= 10x256 + 7x16 + 13x1

=
2560 + 112 +
13 = 2685(10)
Márcio Moreira
7. Conversão de Bases – Slide 2
Fundamentos da Computação
Conversão Base B  Decimal
 Binário  Decimal:

101(2) = 5(10)
 10011(2) = 19(10)
 1110100(2) = 116(10)
 Octal  Decimal:

5(8) =
5(10)
 43(8) = 35(10)
 2745(8) = 1509(10)
 Hexa  Decimal:
 B(16) = 11(10)
 2C(16) = 44(10)
 3F4(16) = 1012(10)
Márcio Moreira
Números
Binário
Valores das posições
64
32
16
8
101(2)
10011(2)
1110100(2)
1
Octal
1
Resultado
4
2
1
Decimal
1
0
1
5(10)
1
0
0
1
1
19(10)
1
0
1
0
0
116(10)
4096
512
64
8
1
Decimal
5
5(10)
4
3
35(10)
5(8)
43(8)
2745(8)
2
7
4
5
1509(10)
Hexa
4096
256
16
1
Decimal
11
11(10)
2
12
44(10)
15
4
1012(10)
B(16)
2C(16)
3F2(16)
7. Conversão de Bases – Slide 3
3
Fundamentos da Computação
Conversão Decimal  Binário
 Dividir o número decimal por 2 e os quocientes das
divisões, até que o quociente seja 0. A seqüência formada
pelos restos em ordem inversa é o número binário.
 Ex: 59(10) = ?(2)
Resposta: 59(10) = 111011(2)
59
1
Números
2
29
1
2
14
0
Exercícios:


2
7
1
2
3
1
2
1
1
Valores das posições
2
0
6(10) =
110(2)
 31(10) =
11111(2)
 97(10) = 1100001(2)
Números
Resultado
Decimal
6(10)
Decimal
32
16
8
4
2
1
Binário
59(10)
1
1
1
0
1
1
111011(2)
64
32
31(10)
97(10)
Márcio Moreira
Valores das posições
7. Conversão de Bases – Slide 4
1
1
16
8
Resultado
4
2
1
Binário
1
1
0
110(2)
1
1
1
1
1
11111(2)
0
0
0
0
1
1100001(2)
Fundamentos da Computação
Conversão Decimal  Octal
 Dividir o número decimal por 8 e os quocientes
das divisões, até que o quociente seja 0.
 A seqüência formada pelos restos em ordem
inversa é o número octal.
 Ex: 112(10) = ?(8)
112 8

Resposta: 112(10) = 160(8)
0
14
6
8
1
1
8
0
Decimal
 Exercícios:
 17(10) = 21(8)
 82(10) = 122(8)
 118(10) = 166(8)
Márcio Moreira
Números
112(10)
Valores das posições
4096
512
Resultado
64
8
1
Octal
1
6
0
160(8)
2
1
21(8)
17(10)
82(10)
1
2
2
122(8)
118(10)
1
6
6
166(8)
7. Conversão de Bases – Slide 5
Fundamentos da Computação
Conversão Decimal  Hexadecimal
 Dividir o número decimal por 16 e os quocientes
das divisões, até que o quociente seja 0
 A seqüência formada pelos restos em ordem
inversa é o número hexadecimal
 Ex: 123(10) = ?(16)
Resposta: 123(10) = 7B(16)
123
11
16
7 16
7 0
Números
 Exercícios:
Decimal
 17(10) = 11(16)
 82(10) = 52(16)
 141(10) = 8D(16)
Márcio Moreira
Valores das posições
Resultado
4096
16
1
Hexadecimal
123(10)
7
11
7B(16)
17(10)
1
1
11(16)
82(10)
5
2
52(16)
141(10)
8
13
8D(16)
7. Conversão de Bases – Slide 6
256
Fundamentos da Computação
Decimal Fracionário  Binário
 Quando inteiro, usamos dividir por 2
 Se fracionário, multiplicamos a fração por 2 até que a
fração seja 0 ou até um limite de erro desejado
 O binário é a parte inteira do resultado
 Exemplo: 0.828125(10) = 0.110101(2).






0.828125
0.65625
0.3125
0.625
0.25
0.5
x
x
x
x
x
x
2
2
2
2
2
2
=
=
=
=
=
=
1.65625
1.3125
0.625
1.25
0.5
1
0.828125
0.65625
0.3125
0.625
x
x
x
x
2
2
2
2
=
=
=
=
1.65625
1.3125
0.625
1.25
 Exemplo: 0.828125(10) com erro de 2-4 = 0.1101(2)
 Basta realizar 4 operações de multiplicação
Márcio Moreira
7. Conversão de Bases – Slide 7
Fundamentos da Computação
Decimal Inteiro.Fracionário  Binário
 Considerando um decimal com parte inteira e fracionária
 Neste caso, converte-se cada parte separadamente
depois junta-se ambas montando o resultado
 Exemplo: 13.1875(10) = 1101.0011(2)
 Parte inteira:
 13
 1



2
6
0
2
3
1
2
1
1
2
0
 Parte fracionária:
 0.1875
 0.375
 0.75
 0.5
Márcio Moreira
x
x
x
x
2
2
2
2
=
=
=
=
0.375
0.75
1.5
1
7. Conversão de Bases – Slide 8
Fundamentos da Computação
Decimal Inteiro.Fracionário  Octal
 Para a parte fracionária, multiplicamos a fração
por 8 até que a fração seja 0 ou até um limite de
erro desejado
 O octal é a parte inteira do resultado
 Exemplo: 13.1875(10) = 15.14(8)
 Parte inteira:
13
 5

8
1
1
8
0
 Parte fracionária:
0.1875 x 8 = 1.5
0.5
x 8 = 4
Márcio Moreira
7. Conversão de Bases – Slide 9
Fundamentos da Computação
Decimal Inteiro.Fracionário  Hexadecimal
 Para a parte fracionária, multiplicamos a fração
por 16 até que a fração seja 0 ou até um limite
de erro desejado
 O hexadecimal é a parte inteira do resultado.
 Exemplo: 31.01171875(10) = 1F.03(16).
 Parte inteira:
31
15

16
1 16
1 0
 Parte fracionária:
0.01171875 x 16 = 0.1875
0.1875
x 16 = 3
Márcio Moreira
7. Conversão de Bases – Slide 10
Fundamentos da Computação
Octal  Binário  Hexadecimal
 Cada dígito octal tem base 8  usa 3 bits.
 Cada dígito hexa tem base 16  usa 4 bits.
 Exemplos:
4 2 1
4 2 1
 Octal  Binário: 25(8) =
 Hexa  Binário: 4E(16) =
0
1
0
8
4
2
1
0
1
0
0
1
0
1
8
4
2
1
1
1
1
0
= 010101(2)
= 01001110(2)
 Logo, 3 bits  1 dígito octal e 4 bits  1 dígito hexa.
 Exemplos:
4 2 1
4 2 1
 Binário  Octal: 101011(2) =
 Binário  Hexa: 101101 (2) =
Márcio Moreira
7. Conversão de Bases – Slide 11
1
0
1
8
4
2
1
0
0
1
0
0
1
1
8
4
2
1
1
1
0
1
= 53(8)
= 2D(16)
Fundamentos da Computação
Curiosidades sobre os binários
 Valor da posição = soma das anteriores + 1:
 Ex: 4 = 3 + 1
 Ex: 8 = 7 + 1
 Ex: 16 = 15 + 1
 Ex: 32 = 31 + 1
31
15
7
3
32
16
8
4
2
1
16
8
4
2
1
8
4
2
1
4
2
1
0
1
1
1
1
1
0
1
1
1
1
0
1
1
1
0
1
1
 Multiplicar por 2  rotação à esquerda:
 Ex: 1101(2) x 2 = 11010(2)
 Ex: 1011(2) x 2 = 10110(2)
[13 x 2 = 26](10)
[11 x 2 = 22](10)
 Dividir por 2  rotação à direita:
 Ex: 10100(2) / 2 = 1010(2)
 Ex: 10111(2) / 2 = 1011(2)
Márcio Moreira
[20 / 2 = 10](10)
[23 / 2 = 11](10)
7. Conversão de Bases – Slide 12
Fundamentos da Computação
Exercícios
Fazer as conversões solicitadas abaixo:
 123(10)
11001( 2)
 175( 8)
 13A(16)
= ?( 2) = ?(8) = ?(16)
= ?(10) = ?(8) = ?(16)
= ?(10) = ?(2) = ?(16)
= ?(10) = ?(2) = ?( 8)
Observação:
Nas conversões da base 10 para qualquer outra
usar divisão
Márcio Moreira
7. Conversão de Bases – Slide 13
Fundamentos da Computação
Download