Escolar Documentos
Profissional Documentos
Cultura Documentos
Introduo Computao
Aritmtica Binria
(Adio e Multiplicao)
2014r19
Introduo Computao
Observaes
Os exemplos usados neste material usam uma quantidade varivel de bits,
mas internamente, os computadores usam sempre uma mesma quantidade
bits para todas as operaes.
As pessoas, normalmente, suprimem zeros a esquerda mas os
computadores, internamente, usam todos os bits de um nmero.
Os computadores podem trabalhar com 8, 16, 32, 64, ... bits conforme a CPU
em uso.
3/5/14
Introduo Computao
Adio de Nmeros Binrios
Regras:
0+0
Resultado = 0
Vai-um
=0
0+1
Resultado = 1
Vai-um
=0
1+0
Resultado = 1
Vai-um
=0
1+1
Resultado = 0
Vai-um
=1
12 + 12 = 102
ou resultado e vai-um
Introduo Computao
Adio de Nmeros Binrios
Se for necessrio efetuar a soma de mais de dois bits, deve-se trabalhar com
dois bits de cada vez, guardando o resultado e indicando o vai na coluna
seguinte.
Depois voltar a todos os resultados ( tambm de dois em dois ) , repetindo o
processo.
3/5/14
Introduo Computao
Adio de Nmeros Binrios
Exemplos
1
1 0 12
+ 1 1 02
-------
510
610
1110
1 0 1 12
1 1 1 1 1
1 1 1 1 12 3110
+ 0 1 1 1 12 1510
----------1 0 1 1 1 02 4610
1 1
1 0 1 1 12
+ 0 1 1 0 02
----------1 0 0 0 1 12
2310
1210
3510
Introduo Computao
Exerccios sobre Adio
10012
+00012
----1010
2
3/5/14
Introduo Computao
Exerccios sobre Adio
11012
+01012
----100102
Introduo Computao
Exerccios sobre Adio
1110012
+1000012
------10110102
3/5/14
Introduo Computao
Exerccios sobre Adio
11112
+11002
----110112
Introduo Computao
Exerccios sobre Adio
11112
+11112
----111102
10
3/5/14
Introduo Computao
Multiplicao de Nmeros Binrios
Regras:
0x0=0
0x1=0
1x0=0
1x1=1
11
Introduo Computao
Multiplicao de Nmeros Binrios
Multiplicao Equivalente a somas sucessivas
Multiplicao de m x n equivale a m + m + m + ... + m onde a parcela m
repetida n vezes.
A multiplicao atravs de somas sucessivas demorada para nmeros
muito grandes.
Ex:
123456 x 987654 = ?
O nmero 123456 teria que ser somando com ele mesmo 987654
vezes.
12
3/5/14
Introduo Computao
Multiplicao de Nmeros Binrios
Multiplicando
Multiplicador
Parcela
Parcela
Parcela
Produto
1 1
x 1 2 3
=============
3 3
2 2
+ 1 1
=============
1 3 5 3
(11 x
(11 x
(11 x
3 x 1)
2 x 10)
1 x 100)
13
Introduo Computao
Multiplicao de Nmeros Binrios
Multiplicando
Multiplicador
Parcela
Parcela
Parcela
Produto
1 1 1
x 1 0 1
================
1 1 1
0 0 0
+ 1 1 1
================
1 0 0 0 1 1
(111
(111
(111
x
x
x
1
0
1
x
x
x
1)
10)
100)
14
3/5/14
Introduo Computao
Multiplicao de Nmeros Binrios
Multiplicando
Multiplicador x
1 1 0 1 1 0
1 1 0 0 1 1
===============================
1 1 0 1 1 0
1 1 0 1 1 0
0 0 0 0 0 0
0 0 0 0 0 0
1 1 0 1 1 0
1 1 0 1 1 0
===============================
1 0 1 0 1 1 0 0 0 0 1 0
Parcela
Parcela
Parcela
Parcela
Parcela
Parcela
Produto
15
Introduo Computao
Multiplicao de Nmeros Binrios
A soma de diversas parcelas uma operao complexa para que um
computador execute.
Para tornar mais fcil este processo, as parcelas intermedirias so somadas
medida em que so formadas.
Multiplicando
1
Multiplicador x
1
1
0
0
1
1
=======================================
Parcela
1
1
1
1
0
=======================================
1
0
0
1
0
1
1
0
=======================================
Aritmtica Binria
( Adio
e Subtrao)
1
0
0
0
Parcela
0
Parcela
0
16
3/5/14
Introduo Computao
Multiplicao - Exemplos
10002
x 10102
=========
0000
1000
0000
1000
=========
10100002
= 8
=10
=80
11002
x 00112
=========
1100
1100
0000
0000
=========
01001002
11002
x 00112
=========
1100
1100
=========
1001002
1112 = 7
x 1002 = 4
=========
000
000
111
=========
11100
Aritmtica Binria ( Adio
e Subtrao)
2 =28
=12
= 3
=36
17
Introduo Computao
Multiplicao - Exerccios
10012
x 00102
=========
0000
1001
0000
0000
=========
00100102
18
3/5/14
Introduo Computao
Multiplicao - Exerccios
11002
x 01002
=========
0000
0000
1100
0000
=========
01100002
19
Introduo Computao
Multiplicao - Exerccios
11112
x 01012
=========
1111
0000
1111
0000
=========
10010112
20
10
3/5/14
Introduo Computao
Multiplicao - Exerccios
11002
x 11002
=========
0000
0000
1100
1100
=========
100100002
21
Introduo Computao
Multiplicao
Quando estamos multiplicando um nmero com n bits por um outro com
m bits, qual ser a quantidade de somas que teremos que fazer no pior
caso?
R: m bits - 1 somas
Ex.:
11010x 111
11010
00111
=======
11010
11010
========
1001110
11010
==========
101 1 0 1 10
5x3
n = 5,
m=3
2 somas
Nos outros casos onde existem o no
multiplicador, no precisamos fazer a soma
quando o bit for zero. Basta fazer o
deslocamento para a esquerda.
22
11
3/5/14
Introduo Computao
Meio Somador ( Half adder )
b1
b2
soma
HA
Circuito Lgico
vai um
0
HA
0
HA
HA
HA
0
0
1
23
Introduo Computao
Meio Somador ( Half adder )
b1
soma
b2
vai um
24
12
3/5/14
Introduo Computao
Verificao
Verifique se o circuito fornecido realmente faz a operao de soma e vai um
0
0
0
1
1
0
25
Introduo Computao
Exerccio
I0
I1
O0
I2
O1
26
13
3/5/14
Introduo Computao
Exerccio
I0
I1
I2
T1
O0
T2
O1
T3
I0
I1
I2
T1
T2
T3
O0
O1
27
Introduo Computao
Exerccio
b0
b1
(Soma )
Ci
( Vem um )
Co
b0
b1
Ci
Co
( Vai um )
0 + 0 + 0 = 0 vai 0
0 + 0 + 1 = 0 + 1 + 0 = 1 + 0 + 0 = 1 vai 0
0 + 1 + 1 = 1 + 0 + 1 = 1 + 1 + 0 = 0 vai 1
1+ 1 + 1 = 1 vai 1
28
14
3/5/14
Introduo Computao
Associao de Full Adders
0
1
Byte 1
...
...
...
Byte 2
Ci
Full
Adder
...
...
Ci
b4 b4
Co
Full
Adder
0
b3 Soma
Ci
Co
b4 Soma
b1 b1
Full
Adder
Co
Co
Ci
b2 b2
Full
Adder
Overflow
(Estouro)
Ci
b3 b3
0
b2 Soma
0
b1 Soma
29
Introduo Computao
Overflow ( estouro )
Se estivermos somando nmeros de n bits e a soma der um resultado com
mais de n bits, dizemos que ocorreu um estouro (ou overflow).
Isto quer dizer que a soma de dois nmeros de n bits resultou em um nmero
cuja quantidade de bits necessria para sua representao maior que n.
O nmero gerado ( resultado da soma ) ultrapassou a capacidade de
representao com n bits.
1111 +
4 bits
0001 = 10000
4 bits
5 bits
30
15
3/5/14
Introduo Computao
Overflow - Exerccios
No
1100 +
0111
10011
Overflow
1111 +
1111
11110
Overflow
31
Introduo Computao
Multiplicao pela Base
Cada vez que multiplicamos o valor de um nmero binrio pela sua base ( 210
ou 102 ) dobramos o seu valor.
A multiplicao pela base alcanada, acrescentando-se um zero a direita do
numero.
1102 = 610
1102 x 210 = 1102 x 102 = 11002
2 = 21 = mais um zero
1112 = 710
1112 x 1610 = 1112 x 102 x 102 x 102 x102 11100002
quatro
zeros
16 = 24 = mais
32
16
3/5/14
Introduo Computao
Fim
Aritmtica Binria ( Adio e Subtrao)
33
17