You are on page 1of 55

Arquitetura de Computadores I

Unid. 03 -Converso de Bases e


Aritmtica Computacional
Srgio Moraes
sergiom@pos.ucb.br
Sistema de Informao
2o Semestre 2002
Aulas adaptadas do material da prof. Katia Maral
2
Plano
Notao Posicional
Converso entre bases numricas (nmeros inteiros)
Converso entre bases numricas (nmeros fracionrios)
Aritmtica Computacional
3
Plano
Notao Posicional
bases decimal
binria
octal
hexadecimal
Converso entre bases numricas (nmeros inteiros)
Converso entre bases numricas (nmeros fracionrios)
Aritmtica Computacional

4
Notao Posicional
Analogia ao Abaco chins (tinha colunas para
unidades, dezenas, centenas, etc.)
Os dgitos componentes de um nmero assumem
valores diferentes, dependendo de sua posio
relativa no nmero
Posio do dgito que determina seu valor
Formao dos nmeros dependem da quantidade de
algarismos diferentes
quantidade de algarismos chamado de base



5
Base Decimal
Base 10
Algarismos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9

Ex.:
(123)
10
= 1 X 10
2
+ 2 X 10
1
+ 3 X 10
0
(1532 )
10
= 1 X 10
3
+ 5 X 10
2
+ 3 X 10
1
+ 2 X 10
0



Devemos a ndia o engenhoso mtodo de exprimir todos os
nmeros por meio de 10 smbolos, cada qual portador tanto
de um valor de posio como de um valor absoluto; inveno
notvel, mas to simples, que nem sempre lhe reconhecemos
o mrito (Laplace)
6
Usaremos nesse material:
- algarismo para referirmos ao conjunto de
nmeros/smbolos utilizados em uma base
Ex: Base 10 - Algarismos 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
- dgito para referirmos a cada nmero que forma um
nmero maior
Ex: 1456 possui 4 dgitos
7
Numerao Posicional
N = (d
n-1
d
n-2
d
n-3
... d
1
d
0
)
onde:
d = dgito do nmero
n-1, n-2, 1, 0 = posio do algorismo
n = nmero de dgitos inteiros
b = base de numerao

Nmero
N = (d
n-1
X b
n-1
+d
n-2
X b
n-2
+

d
n-3
X b
n-3
... d
1
X b
1
+ d
0
X b
0
)
Valor do Nmero
8
Base Binria
Base 2
Algarismos: 0, 1
Ex.:
(1011)
2
= (11)
10
(11101)
2
= (29)
10


Base utilizadas pelos computadores eletrnicos
Um nmero de X dgitos possui portanto X Bits
Ex.:
(1011)
2
= 4 bits

(11101)
2
= 5 bits
9
Observaes
Nmero mximo de
algarismos diferentes ...
Quanto menor a base de
numerao maior ..

O nmero de produtos e
somas a serem realizados
igual ...




... igual ao valor da base

... a necessidade de dgitos
para indicar um dado valor

... ao nmero de dgitos no
nmero
10
Base Octal
Base 8
Algarismos: ?
Ex.:
(16)
8
= (?)
10
(21)
8
= (?)
10


11
Base Hexadecimal
Base: 16
Algarismos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E,
F
Ex.:
(1A7B)
16
= (6779)
10





12
Base Hexadecimal
Representao dos nmeros na base 10








Ex.:
(1A7B)
16
= 1 X 16
3
+ 10 X 16
2
+ 7 X 16
1
+ 11 X 16
0

=(6779)
10


Base 10 Base 16
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
Base 10 Base 16
10 A
11 B
12 C
13 D
14 E
15 F
13
Plano
Notao Posicional
bases decimal
binria
octal
hexadecimal
Converso entre bases numricas (nmeros inteiros)
Converso entre bases numricas (nmeros fracionrios)
Aritmtica Computacional
14
Plano
Notao Posicional
Converso entre bases numricas (nmeros inteiros)
Converso entre bases numricas (nmeros fracionrios)
Aritmtica Computacional

15
Plano
Notao Posicional
Converso entre bases numricas (nmeros inteiros)
Converso de uma base B para a base decimal
Converso de uma base decimal para uma base B
Converso da base 8 para 2 e vice-versa
Converso da base 2 para 16 e vice-versa
Converso da base 8 para 16 e vice-versa
Converso entre bases numricas (nmeros fracionrios)
Aritmtica Computacional
16
Converso de uma base B para a base decimal
Conforme frmula j definida
N = (d
n-1
d
n-2
d
n-3
... d
1
d
0
)
Nmero
N = (d
n-1
X b
n-1
+d
n-2
X b
n-2
+

d
n-3
X b
n-3
... d
1
X b
1
+ d
0
X b
0
)
Valor do Nmero na base 10
onde:
d = dgito do nmero
n-1, n-2, 1, 0 = posio do dgito
n = nmero de dgitos inteiros
b = base de numerao
17
Exerccio
(22C)
16

(10011001)
2

(421)
8

(1DE)
16

(100100011)
2
(231)
8




= (556)
10

= (153)
10

= (273)
10

= (478)
10

= (291)
10

= (153 )
10

18
Outra forma de converter base b decimal
Muliplique o dgito mais a esquerda pela base b e
some o prximo dgito direita
Multiplique a soma pela base b e some o prximo
dgito
Repita o processo at que o dgito mais a direita
tenha sido somado
Ex: (261)
8

2 X 8 = 16
(16+6) X 8 = 176
176 + 1 = 177

Importante: observe que o ltimo dgito no multiplicado
apenas somado
19
Converso de uma base decimal para uma base B
Processo inverso da converso da base B para
decimal
Divises sucessivas pela base B at o quociente ser
zero
0 resto da ltima diviso representa o dgito mais a
esquerda do nmero
O resto da diviso anterior o prximo dgito, a assim
sucessivamente
20
Converso de uma base decimal para uma base B
133 2
66
13
1
2
33
0

2
16
13
1
2
8
0

2
4
0

2
2
0

2
1
0

2
0
1

(133)
10
= (?)
2

(10000101)
2
21
Exerccio
(216)
10

(917)
10

(97)
10

(681)
10

(27)
10

(625)
10

(330)
8

(1625)
8

(61)
16

(2A9)
16

(11011)
2

(1001110001)
2

22
Converso da base 2 para base 8
Divide o nmero da direita para a esquerda em
grupos de 3 bits (8=2
3
)
Se o ltimo grupo no um mltiplo de 3 preenche-
se com zeros esquerda
Para cada grupo achar o nmero octal
correspondente

Ex:
(10100111)
2
=
010 100 111
2 4 7
(247)
8

23
Converso da base 8 para base 2
Semelhante a de 2 para a base 8 no sentido inverso
Substitui cada algarismo octal pelos 3 bits
correspondentes

Ex:
(627)
8

6 2 7
110 010 111
(110010111)
2


24
Converso da base 2 para base 16
Idntico a converso da base 2 para 8 considerando
4 bits (16 = 2
4
)
Divide o nmero da direita para a esquerda em
grupos de 4 bits
Se o ltimo grupo no um mltiplo de 4 preenche-
se com zeros esquerda
Para cada grupo achar o nmero hexadecimal
correspondente
Ex:
(101111)
2

0010 1111
2 F
(2F)
16
25
Converso da base 16 para base 2
Substitui cada algarismo hexadecimal pelos 4 bits
correspondentes

Ex:
A2
10 2
1010 0010
(10100010)
2

26
Converso da base 8 para base 16
Primeiro converte de 8 para 2
Com o resultado em binrio, converte-se para 16

Ex:
(A5)
16

A 5
10 5
1010 0101
(10100101)
2
010 100 101
2 4 5
(245)
8


27
Converso da base 16 para base 8
Primeiro converte de 16 para 2
Com o resultado em binrio, converte-se para 8

Ex:
(A5)
16

A 5
10 5
1010 0101
(10100101)
2
010 100 101
2 4 5
(245)
8


28
Exerccio
(1110 )
2

(1010100)
2

(110000)
2
(13)
8

(20)
8

(43)
8

(1111100101)
2

(10101)
2

(1101010)
2

(F)
16

(14)
16

(2E)
16




= (16)
8

= (124)
8

= (60)
8

= (1011)
2

= (10000)
2

= (100011)
2

= (3E5)
16

= (15)
16

= (6A)
16

= (1111)
2

= (10100)
2

= (101110)
2


29
Exerccio
(127)
8

(121074)
8

(635)
8

(3A7)
16

(251)
16

(AE)
16




= (57)
16

= (A23C)
16

= (19D)
16

= (1647)
8

= (1121)
8

= (256)
8


30
Plano
Notao Posicional
Converso entre bases numricas (nmeros inteiros)
Converso de uma base B para a base decimal
Converso de uma base decimal para uma base B
Converso da base 8 para 2 e vice-versa
Converso da base 2 para 16 e vice-versa
Converso da base 8 para 16 e vice-versa
Converso entre bases numricas (nmeros fracionrios)
Aritmtica Computacional
31
Plano
Notao Posicional
Converso entre bases numricas (nmeros inteiros)
Converso entre bases numricas (nmeros fracionrios)
Aritmtica Computacional
32
Plano
Notao Posicional
Converso entre bases numricas (nmeros inteiros)
Converso entre bases numricas (nmeros fracionrios)
Aritmtica Computacional
33
Converso de Nmeros Fracionrios
Separa a parte inteira e converte como explicado
anteriormente

a parte fracionria (0,XXX) ento convertida


combina os resultados:
parte inteira convertida X parte fracionria convertida
34
Converso de uma base B para a base decimal
N = (0, d
-1
d
-2
d
-3
... D
-m
)
Nmero
N = (d
-1
X b
-1
+d
-2
X b
-2
+

d
-3
X b
-3
... D
-m
X b
-m
)
Valor do Nmero na base 10
onde:
d = dgito do nmero
m = quantidade de dgitos da parte fracionria
b = base de numerao
-1, -2, ...-m=posio do dgito

35
Exemplos
(0,101)
2

(0,11)
2

(0,21)
8

(0,72)
8





= 0,5 + 0 + 0,125 = (0,625)
10

= 0,5 + 0,25 = (0,75)
10

= 0,25 + 0,015625 = (0,265625)
10
= 0,875 + 0,03125 = (0,90625 )
10


36
Converso de uma base decimal para base B
Multiplica a parte fracionria pela base b
o valor resultante composto de um nmero com
parte inteira e outra fracionria
a parte inteira o primeiro dgito aps a vrgula
(dgito d
-1
)
a parte fracionria ser novamente multiplicada
obtendo o novo resultado.
Separa a parte inteira que corresponde ao prximo
algarismo
repetir o processo at se conseguir a preciso
desejada (ou seja, a quantidade desejada de
algarismos significativos determina o numero de
operaes
37
0,8125 X 2 = 1,625
0,625 X 2 = 1,25
0, 25 X 2 = 0,5
0,5 X 2 = 1,0

= (0.1101)
2



Exemplos
0,37 X 8 = 2,96
0,96 X 8 = 7,68
0, 68 X 8 = 5,44
0,44 X 8 = 3,52
0,52 X 8 = 4,16

= (0,27534)
8


5 dgitos de preciso ==>
5 operaes de
multiplicao

38
Exerccio
(11,1101)
2

(1,111)
2

(0, 22)
8

(12,01)
8

(32,22)
10
(para base 8 preciso 3)
(0,71)
10
(para base 8 preciso 4)
(0, 31)
10
(para a base 2 preciso 5)
(20,125 )
10
(para a base 2)





= (3,8125)
10

= (1,875)
10

= (0,28125)
10

= (10,015625)
10

= (40,160)
8

= (0,5534)
8

= (0,01001)
2
= (10100,001)
2


39
Plano
Notao Posicional
Converso entre bases numricas (nmeros inteiros)
Converso entre bases numricas (nmeros fracionrios)
Aritmtica Computacional
40
Plano
Notao Posicional
Converso entre bases numricas (nmeros inteiros)
Converso entre bases numricas (nmeros fracionrios)
Aritmtica Computacional
Aritmtica binria
Aritmtica octal
Aritmtica hexadecimal

41
Aritmtica Binria
Operaes semelhante a operao decimal
Soma:
0 + 0 = 0
1 + 0 = 1
1 + 1 = 0 com vai 1

Ex.:
10101 +
101101
1000010


42
Exerccio (base 2)
1100 + 101
1011 + 10100
10111 + 1111




= 10001
= 11111
= 100110

43
Aritmtica Binria
Subtrao:
0 - 0 = 0
1 - 0 = 1
1 - 1 = 0
0 - 1 = no possvel, logo retira-se 1unidade da ordem a
esquerda e passa-se a ordem direita como 2 (visto que 1
unidade da ordem esquerda vale uma base de unidades
(no caso 2) da ordem a direita (nesse caso 2 - 1 = 1)
Ex:
1010 -
111
11


44
Exerccio (base 2)
100001 - 11100
11101 - 110
10001 - 1010




= 101
= 10111
= 111

45
Aritmtica Octal
Semelhante a forma binria
Soma:
o vai 1 ocorre quando a soma de dois algarismos
for maior ou igual ao valor da base (no caso, 8)
1 + 7 = 0 com vai 1
5 + 6 = 11 - 8 = 3 com vai 1
Ex:
51 +
267
340
46
Exerccio (base 8)
327 + 166
27 + 11
752 + 536





= 515
= 40
= 1510

47
Aritmtica Octal
Semelhante a forma binria
Subtrao:
quando no possvel a operao, retira-se 1 unidade da
ordem a esquerda e passa-se a ordem direita como 8
(visto que 1 unidade da ordem esquerda vale uma base de
unidades) somando-se ao valor que existe na posio

Ex:
511 -
327
162

48
Exerccio (base 8)
156 - 17
51 - 26
612 - 66





= 137
= 23
= 524

49
Aritimtica Hexadecimal
Semelhante a qualquer nmero
Soma:
o vai 1 ocorre quando a soma de dois algarismos
for maior ou igual ao valor da base (no caso, 16)
1 + F = 0 com vai 1
8 + A = 18 - 16 = 2 com vai 1
Ex:
9A +
A1E
AB8

50
Exerccio (base 16)
1A + C
10A + FD
69+18





= 26
= 207
= 81

51
Subtrao Hexadecimal
Semelhante a qualquer nmero
Subtrao:
quando no possvel a operao, retira-se 1 unidade da
ordem a esquerda e passa-se a ordem direita como 16
(visto que 1 unidade da ordem esquerda vale uma base de
unidades) somando-se ao valor que existe na posio

Ex:
22C -
FF
12D

52
Exerccio (base 16)
2B1 - 128
12A - 9B
923 - 1AD





= 189
= 8F
= 776
53
Multiplicao Binria
Semelhante aos nmeros decimais
soma sucessiva de um nmero quantas vezes for o
valor do do outro
operao de multiplicao normal:
0 X 0 = 0 0 X 1 = 0 1 X 1 = 1
Ex:

1011
x 101
1011
0000
1011__
110111
54
Diviso Binria
Semelhante aos nmeros decimais
operao de multiplicao normal:
0 / 1 = 0 1 / 1 = 1
Ex:

10010 11
- 11 110
011
00
55
Exerccio
1010 X 11
111 X 111
11101 / 11
10111 / 101

11110
110001
1001
100

You might also like