Upload
antonio-carvalho
View
221
Download
0
Embed Size (px)
Citation preview
3/5/14
1
2014r19
Aritmética Binária(Adição e Multiplicação)
Introdução à Computação
Introdução à Computação
2Aritmética Binária ( Adição e Subtração)
Observações
• Os exemplos usados neste material usam uma quantidade variável de bits,
mas internamente, os computadores usam sempre uma mesma quantidade
bits para todas as operações.
• As pessoas, normalmente, suprimem zeros a esquerda mas os
computadores, internamente, usam todos os bits de um número.
• Os computadores podem trabalhar com 8, 16, 32, 64, ... bits conforme a CPU
em uso.
3/5/14
2
Introdução à Computação
3Aritmética Binária ( Adição e Subtração)
Adição de Números Binários
• 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
110 + 110 = 210
Introdução à Computação
4Aritmética Binária ( Adição e Subtração)
Adição de Números Binários
• Se for necessário 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 ( também de dois em dois ) , repetindo o
processo.
3/5/14
3
Introdução à Computação
5Aritmética Binária ( Adição e Subtração)
Adição de Números Binários
• Exemplos
1
1 0 12
+ 1 1 02
-------
1 0 1 12
510
610
1110
1 1
1 0 1 1 12
+ 0 1 1 0 02
-----------
1 0 0 0 1 12
2310
1210
3510
1 1 1 1 1
1 1 1 1 12
+ 0 1 1 1 12
-----------
1 0 1 1 1 02
3110
1510
4610
Somente os "vai-um" com valores em 1
foram indicados
Introdução à Computação
6Aritmética Binária ( Adição e Subtração)
Exercícios sobre Adição
10012
+00012
-----1010
2
3/5/14
4
Introdução à Computação
7Aritmética Binária ( Adição e Subtração)
Exercícios sobre Adição
11012
+01012
-----10010
2
Introdução à Computação
8Aritmética Binária ( Adição e Subtração)
Exercícios sobre Adição
1110012
+1000012
-------
10110102
3/5/14
5
Introdução à Computação
9Aritmética Binária ( Adição e Subtração)
Exercícios sobre Adição
11112
+11002
-----11011
2
Introdução à Computação
10Aritmética Binária ( Adição e Subtração)
Exercícios sobre Adição
11112
+11112
-----11110
2
3/5/14
6
Introdução à Computação
11Aritmética Binária ( Adição e Subtração)
Multiplicação de Números Binários
• Regras:
• 0 x 0 = 0
• 0 x 1 = 0
• 1 x 0 = 0
• 1 x 1 = 1
Introdução à Computação
12Aritmética Binária ( Adição e Subtração)
Multiplicação de Números Binários
• Multiplicação � Equivalente a somas sucessivas
• Multiplicação de m x n equivale a m + m + m + ... + m onde a parcela m é
repetida n vezes.
• A multiplicação através de somas sucessivas é demorada para números
muito grandes.
Ex: 123456 x 987654 = ?
O número 123456 teria que ser somando com ele mesmo 987654
vezes.
3/5/14
7
Introdução à Computação
13Aritmética Binária ( Adição e Subtração)
Multiplicação de Números Binários
Multiplicando 1 1
Multiplicador x 1 2 3
=============
Parcela 3 3 (11 x 3 x 1)
Parcela 2 2 (11 x 2 x 10)
Parcela + 1 1 (11 x 1 x 100)
=============
Produto 1 3 5 3
Introdução à Computação
14Aritmética Binária ( Adição e Subtração)
Multiplicação de Números Binários
Multiplicando 1 1 1
Multiplicador x 1 0 1
================
Parcela 1 1 1 (111 x 1 x 1)
Parcela 0 0 0 (111 x 0 x 10)
Parcela + 1 1 1 (111 x 1 x 100)
================
Produto 1 0 0 0 1 1
112 x 102 = 1102 ( 2 bits x 2 bits = 3 bits )
1112 x 1102 = 1010102 ( 3 bits x 3 bits = 6bits )
11102 x 11002 = 101010002 ( 4 bits x 4 bits = 8bits )
110002 x 112 = 10010002 ( 5 bits x 2 bits = 7bits )
Geralmente n bits x m bits = (n + m)bits.
3/5/14
8
Introdução à Computação
15Aritmética Binária ( Adição e Subtração)
Multiplicação de Números Binários
Multiplicando 1 1 0 1 1 0
Multiplicador x 1 1 0 0 1 1
===============================
Parcela 1 1 0 1 1 0
Parcela 1 1 0 1 1 0
Parcela 0 0 0 0 0 0
Parcela 0 0 0 0 0 0
Parcela 1 1 0 1 1 0
Parcela 1 1 0 1 1 0
===============================
Produto 1 0 1 0 1 1 0 0 0 0 1 0
Introdução à Computação
16Aritmética Binária ( Adição e Subtração)
Multiplicação de Números Binários
A soma de diversas parcelas é uma operação complexa para que um
computador execute.
Para tornar mais fácil este processo, as parcelas intermediárias são somadas
à medida em que são formadas.
Multiplicando
1 1 0 1 1 0
Multiplicador x
1 1 0 0 1 1
=======================================
Parcela 1
1 0 1 1 0
Parcela 1 1
0 1 1 0
=======================================
1 0 1
0 0 0 1 0
Parcela 1 1 0 1 1
0
=======================================
1 0 0 0 0 0
3/5/14
9
Introdução à Computação
17Aritmética Binária ( Adição e Subtração)
Multiplicação - Exemplos
10002
x 10102
=========
0000
1000
0000
1000
=========
10100002
= 8
=10
=80
11002
x 00112
=========
1100
1100
0000
0000
=========
01001002
=12
= 3
=36
1112
x 1002
=========
000
000
111
=========
111002
= 7
= 4
=28
11002
x 00112
=========
1100
1100
=========
1001002
Introdução à Computação
18Aritmética Binária ( Adição e Subtração)
Multiplicação - Exercícios
0000
1001
0000
0000
=========
00100102
10012
x 00102
=========
3/5/14
10
Introdução à Computação
19Aritmética Binária ( Adição e Subtração)
Multiplicação - Exercícios
0000
0000
1100
0000
=========
01100002
11002
x 01002
=========
Introdução à Computação
20Aritmética Binária ( Adição e Subtração)
Multiplicação - Exercícios
1111
0000
1111
0000
=========
10010112
11112
x 01012
=========
3/5/14
11
Introdução à Computação
21Aritmética Binária ( Adição e Subtração)
Multiplicação - Exercícios
0000
0000
1100
1100
=========
100100002
11002
x 11002
=========
Introdução à Computação
22Aritmética Binária ( Adição e Subtração)
Multiplicação
Quando estamos multiplicando um número 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.: 1 1 0 1 0 x 1 1 1 5 x 3 n = 5, m = 3
1 1 0 1 00 0 1 1 1=======1 1 0 1 0
+ 1 1 0 1 0 ========
1 0 0 1 1 1 0+ 1 1 0 1 0
==========1 0 1 1 0 1 1 0
Nos outros casos – onde existem o no multiplicador, não precisamos fazer a soma quando o bit for zero. Basta fazer o deslocamento para a esquerda.
2 somas
3/5/14
12
Introdução à Computação
23Aritmética Binária ( Adição e Subtração)
Meio Somador ( Half adder )
HA
b1
b2
soma
vai um
HA
0
0
0
0HA
0
1
1
0
HA
1
0
1
0HA
1
1
0
1
Circuito Lógico
Introdução à Computação
24Aritmética Binária ( Adição e Subtração)
Meio Somador ( Half adder )
Circuito lógico do meio somador
b1
b2
soma
vai um
3/5/14
13
Introdução à Computação
25Aritmética Binária ( Adição e Subtração)
Verificação
• Verifique se o circuito fornecido realmente faz a operação de soma e vai um
0
0
0
0 1
0
0
1
1
0
1
00
1
1
1
Introdução à Computação
26Aritmética Binária ( Adição e Subtração)
Exercício
I0I1
I2
O0
O1
Montar a tabela verdade para o circuito acima
3/5/14
14
Introdução à Computação
27Aritmética Binária ( Adição e Subtração)
Exercício
I0
I1
I2
T1
T2
T3
O0
O1
0 0 0 0 0 0 0 0
0 0 1 0 0 0 1 0
0 1 0 1 0 0 1 0
0 1 1 1 1 0 0 1
1 0 0 1 0 0 1 0
1 0 1 1 1 0 0 1
1 1 0 0 0 1 0 1
1 1 1 0 0 1 1 1
I0I1I2
O0
O1
T1
T2
T3
Introdução à Computação
28Aritmética Binária ( Adição e Subtração)
Exercício
b0
b1
Ci
S Co
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
b0b1
Ci
S
Co
(Soma )
( Vai um )
( Vem um )
0 + 0 + 0 = 0 vai 00 + 0 + 1 = 0 + 1 + 0 = 1 + 0 + 0 = 1 vai 00 + 1 + 1 = 1 + 0 + 1 = 1 + 1 + 0 = 0 vai 11+ 1 + 1 = 1 vai 1
√
√
√
√
√
√
√
√
Full Adder – Somador Completo
3/5/14
15
Introdução à Computação
29Aritmética Binária ( Adição e Subtração)
Associação de Full Adders
Full
Adder
Full
Adder
Full
Adder
Full
Adder
Byte 1
Byte 2
b1 b1b2b2b3b3b4b4
b1 Soma b2 Soma b3 Soma b4 Soma
Ci
Ci Ci Ci Ci
CoCoCoCo
Overflow(Estouro)
...
...
...
...
...
0 0 1 1
0 1 0 1
1 0 0 0
111
Introdução à Computação
30Aritmética Binária ( Adição e Subtração)
Overflow ( estouro )
• Se estivermos somando números 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 números de n bits resultou em um número cuja quantidade de bits necessária para sua representação é maior que n.
• O número gerado ( resultado da soma ) ultrapassou a capacidade de
representação com n bits.
• 1111 + 0001 = 10000
4 bits 4 bits 5 bits
• Nestas situações é necessário apresentar uma mensagem ou indicar
internamente que ocorreu um erro!
O overflow ocorre quando um valor
não pode representado usando uma
determinada quantidade de bits
(dígitos).
3/5/14
16
Introdução à Computação
31Aritmética Binária ( Adição e Subtração)
Overflow - Exercícios
Para os seguintes números e operações na base 2, indique quando ocorreu
overflow.
00010001 +
11001110
11011111 Não
1100 +
0111
10011 Overflow
1111 +
1111
11110 Overflow
Introdução à Computação
32Aritmética Binária ( Adição e Subtração)
Multiplicação pela Base
Cada vez que multiplicamos o valor de um número binário pela sua base ( 210ou 102 ) dobramos o seu valor.
A multiplicação pela base é alcançada, acrescentando-se um zero a direita do
numero.
1102 = 610
1102 x 210 = 1102 x 102 = 11002 2 = 21 = mais um zero
1102 x 410 = 1102 x 102 x 102 = 110002 4 = 22 = mais dois zeros
1102 x 810 = 1102 x 102 x 102 x 102 = 1100002 8 = 23 = mais três zeros
1112 = 7101112 x 1610 = 1112 x 102 x 102 x 102 x102 11100002 16 = 24 = mais
quatro zeros
3/5/14
17
Introdução à Computação
33Aritmética Binária ( Adição e Subtração)
Fim