Escolar Documentos
Profissional Documentos
Cultura Documentos
MONITORES:
FORTALEZA 2006.2
INTRODUO
NDICE
1 - SISTEMA DE NUMERAO
Existem vrios sistemas nmericos, dentre os quais se destacam: o sistema decimal,
o binrio, o octal e o hexadecimal.
BINRIO
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
d.(11011)2
e.(00111)2
f.(10001)2
01
Resposta: (111011)2
Perceba que o nmero binrio comea do meu ultimo quociente e termina no meu
primeiro resto.
Exerccios:
1. Converta para o sistema binrio:
a) 12010
b) 55910
c) 8510
d) 89610
e) 26510
f) 6710
= 5,75
Exerccios:
1. Converta o nmero binrio (1101,01)2 em decimal.
2. Converta o nmero binrio (111,111)2 em decimal.
1.1.4 Converso de Nmeros Decimais Fracionrios em Binrios
A converso de decimal fracionrio para binrio basta dividir a parte inteira por 2, at
quando for possvel, e pegar o ltimo quociente, o ltimo resto, at o primeiro resto, como j
vimos. A parte fracionria multiplicamos por 2 e o nmero depois da vrgula coloca no resto
do nmero binrio. Vejamos o exemplo para melhor enterdermos:
02
0,70 0,40
x 2 x 2
1,40 0,80
0,80 0,60
x 2 x 2
1,60 1,20
0,20 0,40
x 2 x 2
0,40 0,80
0,80
x 2
1,60
Resposta: (10111,11011001)2
Note que parte fracionria, multiplicamos por 2 e quando o resultado igual a
1,_
_ retiramos o 1 o colocamos no nmero binrio e quando vamos multiplicar novamente
fazemos agora com 0,_ _.
Exerccios:
1. Converta o nmero 31,79 em binrio com 5 casas fracionrias.
2. Converta o nmero 57,25 em binrio.
OCTAL
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
03
Resposta: 1008
Exerccios:
1. Converta o nmero 8510 em octal.
2. Converta o nmero 27810 em octal.
3. Converta o nmero 81910 em octal.
1.2.3 Converso do Sistema Octal para o Sistema Binrio
Transforma cada dgito em seu correspondente binrio de 3 dgitos. O nmero 518
servir como exemplo.
Ex.: 518
5 1
101 001
Resposta: (101001)2
Exerccios:
1. Converta os seguintes nmeros octais em binrios.
a) 478
b) 2568
c) 15328
04
001
1
Resposta: 318
Exerccios:
1. Converta os seguintes nmeros binrios para o sistema octal.
a) 1111008
b) 11118
c) 101010108
HEXADECIMAL
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
10
11
12
13
14
05
Resposta: (315)16
Exerccios:
1. Converta para o sistema hexadecimal:
a) (129)10
b) (415)10
c) (4002)10
06
A parte fracionria
C 1100.
2 0010.
5 0101.
A igual 1010.
4 igual 0100.
Resposta:
(110000100101,10100100)2
07
08
0
+ 1
1
1
+ 0
1
1
+1
10
Note que 1 + 1 = 102, j que no sistema binrio 102 igual a 2 no sistema decimal.
Pela regra de transporte para a prxima coluna, 1 + 1 = 0 e vai um para a prxima
coluna.
Este tranporte chamado carry.
Para exemplificar somaremos os nmeros (11)2 e (10)2.
1
3 ====>
11
2 ====> + 10
5 ====>
101
7 ====>
111
13 ====> + 1101
20 ====>
10100
c) (1010)2 + (1010)2
09
0
- 1
1
1
- 0
1
1
- 1
0
Note que 0 - 1 = 12, porm vai um para a prxima coluna, subtraindo do minuendo.
Usaremos os nmeros (11)2 e (10)2 como exemplo.
-
3 ====>
2 ====> 1 ====>
11
10
01
c) (11000)2 (101)2
1x0=0
1x1=1
10
Exerccios:
1. Efetue as multiplicaes no sistema binrio.
a) (1000)2 x (10)2
b) (111)2 x (111)2
c) (10100)2 x (101)2
1.4.4 Diviso no Sistema Binrio
A diviso a mais complexa das operaes aritmticas binrias, pois abrange
operaes de multiplicao e de subtrao. Por isso devemos lhe dar uma maior ateno.
A diviso feita da seguinte forma:
Vamos usar como exemplo a diviso de (110001)2 por (111)2.
1. Inicialmente, o processo igual ao da diviso decimal: verifica-se se o dividendo
maior ou igual ao divisor e, caso no seja, coloca-se tantos zeros no quociente (e o
mesmo nmero direita do dividendo), at que o dividendo se torne maior ou igual
ao divisor.
2. O prximo passo subtrair o dividendo pelo divisor pelo nmero de casas deste,
caso seja maior o divisor, avana uma casa a direita, veja o exemplo criado abaixo.
Ex.: 110001 |_111____
111
1
Note que deveramos colocar 111 no incio do dividendo, mas perceba que 110
menor que 111, por isso avanamos mais uma casa. E iremos subtrair 111 de 1100.
Ex.: 110001 |_111____
- 111
1
0101
Agora pegamos um dgito e descemos at o resto no nosso exemplo ficar 1010, e
como maior que o divisor, colocamos um no quociente e subtraimos 1010 por 111.
Ex.: 110001 |_111____
- 111
11
01010
- 111
11
Descemos agora o ltimo digito do dividendo at o resto e subtraimos pelo divisor.
Ex.: 110001 |_111____
- 111
111
01010
- 111
111
- 111
000
Resposta: (111)2
11
Vamos agora a um outro exemplo para esclarecer melhor a diviso, vamos dividir
(10100)2 por (100)2.
Ex.: 10100 |_100___
-100
1
001
Veja que (101)2 maior que (100)2 por isso subtramos no incio do dividendo. O
prximo passo descer o prximo dgito do dividendo at o resto.
Ex.: 10100 |_100___
-100
10
0010
Como o resto menor que o divisor colocamos um zero no quociente e depois
descemos o prximo dgito do dividendo at o resto.
Ex.: 10100 |_100___
-100
101
00100
-100
000
Resposta: (101)2
Exerccios:
1. Faa as divises no sistema binrio.
a) (11001)2 por (101)2
b) (100100)2 por (111)2 com 8 casas fracionrias
c) (1111)2 por (11)2
1.4.5 Complemento 2
Representam-se positivos e negativos pelos sinais + e - respectivamente, mas na
prtica, em hardware dos sistemas digitais que realizam operaes aritmticas, tudo deve
ser codificado em 0 ou 1.
Um maneira de denominar se um nmero positivo ou negativo acrescentando 0
ou 1 esquerda do MSB (algarismo mais significativo). Se o nmero for positivo coloca-se 0
se no coloca 1.
Vamos exemplificar usando o complemento 2 do nmero (54)10.
Ex.: O nmero binrio de 5410 (110110)2
Ento o + 5410 = (0110110)2
Para um nmero se tornar positivo basta achar o seu binrio correspondente e
acrescentar um zero antes do MSB.
12
Agora, para achar seu negativo, tem que fazer os seguintes passos:
1. Achar o positivo do nmero.
2. Inverter bit a bit.
3. Somar mais um.
7 ====>
13 ====>
20 ====>
1001001
+
dddd 1
1001010
13 ====>
20 ====>
0110101
+
dddd 1
0 1 1 0 1 1 0 ====> (54)10
Exerccios:
1. Ache o complemento 2 dos nmeros a seguir.
a) (5)10
b) (27)10
c) (369)10
13
+ 5 = 0101
1010
+ 1
1011 ====> - 5
- 3 ====>
011
(+)
- 5 ====> 1 0 1 1
-2
1110
14
B
0
1
0
1
S
0
0
0
1
- Porta AND
A porta AND um circuito que executa a funo AND, sendo representada na prtica,
atravs do smbolo abaixo.
U1C
15
Sabendo que a porta AND, executa a tabela verdade da funo AND, ou seja,
somente teremos sada 1, quando todas as entradas estiverem em 1.
J sabemos descrever a funo AND para 2 vriaveis de entrada. Agora iremos
ampliar este conceito para qualquer nmero de entradas. Para exemplificar, mostraremos
uma porta AND de 3 vriaveis de entrada, e sua tabela verdade.
U11A
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
S
0
0
0
0
0
0
0
1
B
0
1
0
1
S
0
1
1
1
- Porta OR
a porta que executa a funo OR. A representao da porta OR atravs do
smbolo abaixo.
U11A
16
S
1
0
- Porta NOT
O inversor o bloco lgico que executa a funo NOT.
U2D
B
0
1
0
1
S
1
1
1
0
17
Repare que a porta NAND uma porta AND com um inversor na sua sada.
U1A
U2C
7400N
7406N
B
0
1
0
1
S
1
0
0
0
U1@
U1B
7432N
7406N
18
U2A
U1A
7432N
7408N
U2A
U1A
S1
S2
7432N
7408N
Na sada S1, teremos a soma A + B, pois sendo este bloco uma por OR, sua
expresso de sada ser: S1 = A + B. Como S1 injetada em uma das entradas da porta
AND pertencente segunda parte do circuito e na outra entrada est a vrialvel C, a
expresso de sada ser: S = S1C.
Para determinamos a expresso final, substitumo o S1 por (A + B) na expresso final.
S = (A + B)C
que a expresso que o circuito executa.
U2A
U1A
A+B
7432N
(A + B).C
7408N
Exerccios:
1. Escreva a expresso booleana dos circuitos abaixo:
a)
U2A
7432N
U1A
U3A
7408N
7432N
19
b)
U1A
7408N
U4B
U6
7404N
OR3
U5A
7408N
c)
U1
U4
U7
NOT
AND2
U6
U2
U5
OR3
NAND2
NOT
AND2
U3
NOT
U9
OR2
(C + D) = S2
(A + B) = S1
A
S1
S2
U2A 7432N
U3A 7432N
20
S
AND3
U2
B
U9
OR2
C
U3
AND3
D
OR2
Exerccios:
1. Desenhe o circuito das expresses booleanas abaixo:
a) ABC + (A + B)C
b) [(A + B) + (C.D)]D
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
1 Membro
AB'C
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
2 Membro
AD'
0
0
0
0
0
0
0
0
1
0
1
0
1
0
1
0
3 Membro
A'BD
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
S
0
0
0
0
0
1
0
1
1
0
1
1
1
0
1
0
Note que primeiramente fazemos a tabela verdade de cada expresso e como esto
ligadas numa porta OR fazemos a soma booleana, no que ser o resultado final.
Exerccios:
1. Monte a tabela verdade de cada expresso booleana
a) (A + B) + ACD + (B + D)C.
b) [(B + C)A] + [D + (A + C)]
c) (A + B)(BC)
2.5
Para obter expresses e circuitos a partir de tabelas verdade, usamos duas formas,
as dos Mintermos(Soma de Produtos) e a dos Maxtermos(Produto de Somas).
Usaremos a tabela abaixo como exemplo.
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
S
0
0
1
1
1
0
1
0
- Mintermos
Tambm chamado de Soma de Produtos pois so Portas AND ligadas a uma porta
OR. Neste caso para obter o circuito lgico, pegamos as sadas com nvel lgico 1 e cada
varivel de entrada ser tratada da seguinte forma, se for de nvel lgico 0, ser barrada X'
e caso seja de nvel lgico 1 ser X.
Veja o passo-a-passo para obter o circuito da tabela verdade usando o mtodo dos
Mintermos.
22
U6
NOT
U1
NOT
U2
NOT
U3
AND3
U4
U8
S
AND3
U5
OR4
AND3
U7
AND3
- Maxtermos
Tambm chamado de Produto de Somas pois so Portas OR ligadas a uma porta
AND. Neste caso para obter o circuito lgico, pegamos as sadas com nvel lgico 0 e cada
varivel de entrada ser tratada da seguinte forma, se for de nvel lgico 1, ser barrada X'
e caso seja de nvel lgico 0 ser X.
Veja o passo-a-passo para obter o circuito da tabela verdade usando o mtodo dos
Maxtermos
1 Passo: Pegar as combinaes de entradas com sada 0. No nosso exemplo so
(A + B + C), (A + B + C), (A + B + C) e (A + B + C). Note que as entradas que esto em um,
colocamos um inversor.
2 Passo: Unimos todas as entradas numa porta AND. O circuito lgico obtido da
tabela verdade a partir dos Mintermos ser:
U3
NOT
U1
NOT
U2
NOT
23
U4
OR3
U5
U8
S
OR3
AND4
U6
OR3
U7
OR3
Exerccios:
1. Determine a expresso que executa a tabela e desenhe o circuito lgico, pelos
mtodos dos Mintermos e Maxtermos.
A
0
0
0
0
1
1
1
1
2.6
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
S
1
0
0
1
0
1
0
1
B
0
1
0
1
S
0
1
1
0
24
B,
pode
V@
A
B
B
0
1
0
1
S
1
0
0
1
U3A
B=(A
B)
25
26
Agora multiplicamos
distributiva.
S = (A
as
variveis do colchete,
usando a propriedade
A + AB = A + B
B + B.C.D = B + C.D
S = (A.B + A.B).[(A.B).(ACD).(BC)]
Novamente usando o teorema de Morgan, s que agora usando o teorema 9.
S = (A.B + A.B).[(A + B).(A + C + D).(B + C)]
Usando a propriedade distributiva:
S = (A.B + A.B).[(A + A.C + A.D + A.B + B.C+ B.D).(B + C)]
Colocamos em evidncia a varivel A:
S = (A.B + A.B).{ [A.(1 + C + D + B) + B.C + B.D].(B + C) }
Lembrando o teorema 11 e logo em seguida o teorema 13.
S = (A.B + A.B).[(A + B.C + B.D)(B + C)]
A propriedade distributiva ser usada agora:
S = (A.B + A.B).[A.B + A.C + B.B.C + B.C.C + B.B.D + B.C.D]
Usando os teoremas 2 e 1, ficar assim nossa expresso:
S = (A.B + A.B).[A.B + A.C + B.C + B.0 + B.D + B.C.D]
Colocando em evidncia a varivel B.D e usando o teorema 12, ficar assim:
S = (A.B + A.B).[A.B + A.C + B.C + 0 + B.D.(1 + C)]
Usando agora os teoremas 11 e 13.
S = (A.B + A.B).[A.B + A.C + B.C + B.D]
O teorema 7 ser usado na expresso (A.B + A.C + B.C).
S = (A.B + A.B).[A.C + B.C + B.D]
28
Agora faremos a propriedade distributiva:
S = A.A.B.C + A.B.B.C + A.B.B.D + A.A.B.C + A.B.B.C + A.B.B.D
Nossa expresso final fica assim:
S = A.B.C + A.B.C + A.B.D
Exerccios:
1. Simplifique as expresses abaixo:
a. S = A.B.C + A.B.C + A.B.C + A.B.C + A.B.C
b. S = [(B + C + D).(A + B + C) + C] + A.B.C + B.(A + C)
A
A
(a)
(b)
(c)
(d)
29
(a) regio onde A = 1.
(b) regio onde A = 0 (A = 1).
(c) regio onde B = 1.
(d) regio onde B = 0 (B = 1).
Com 2 variveis, podemos obter 4 possibilidades:
A
0
0
1
1
B
0
1
0
1
- - - caso 0
- - - caso 1
- - - caso 2
- - - caso 3
B
Esta regio tambm pode ser chamada
de regio A.B.
30
No caso 3, temos a interseco da regio onde A = 1 e B = 1. Fazendo esta
interseco, temos:
B
Caso 0 Caso 1
A.B
A.B
00
01
Caso 2 Caso 3
A.B
A.B
10
11
Logo, notamos que cada linha da tabela verdade possui sua regio prpria no
diagrama de Veitch-Karnaugh.
Essas regies so, portanto, os locais onde devem ser colocados os valores que a
expresso assume nas diferentes possibilidades.
Para entendermos melhor o significado destes conceitos vamos utilizar o exemplo:
1 A tabela verdade mostra o estudo de uma funo de 2 variveis. Vamos colocar
seus resultados no Diagrama de Veitch-Karnaugh.
A
0
0
1
1
B
0
1
0
1
S
0
1
1
1
- - - caso 0
- - - caso 1
- - - caso 2
- - - caso 3
31
Uma vez entendida a colocao dos valores assumidos pela expresso em cada caso
no diagrama de Veitch-Karnaugh, vamos verificar como podemos efetuar as simplificaes.
Para obtermos a expresso simplificada do diagrama, utilizamos o seguinte mtodo:
Tentamos agrupar as regies onde S igual a 1, no menor nmero possvel de
agrupamentos. As regies onde S 1, que no puderem ser agrupadas, sero consideradas
isoladamente. Para um diagrama de 2 variveis, os agrupamentos possveis so os
seguintes:
a)
Quadra:
1
Quadra : S = 1
b)
Pares:
0
Par : S = A
1
Pares : S = A + B
Notamos que nenhum 1 ficou de fora dos agrupamentos, e ainda que o mesmo
1 pode pertencer a mais de um agrupamento.
32
c)
Termos isoladas:
1
S = A.B + A.B
0
A
A
C
C
(a)
C
(b)
B
A
(d)
(a) regio na qual A = 1.
(b) regio na qual A = 1 (A = 0).
(c) regio na qual B = 1.
(d) regio na qual B = 1 (B = 0).
C
(e)
(c)
C
(f)
33
Neste diagrama, tambm temos uma regio para cada caso da tabela verdade. A
tabela e a figura abaixo mostram os casos para 3 variveis e as respectivas localizaes no
mapa.
Caso
0
1
2
3
4
5
6
7
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
Caso 0
0 0 0
A B C
Caso 1
0 0 1
A B C
Caso 3
0 1 1
A B C
Caso 2
0 1 0
A B C
Caso 4
1 0 0
A B C
Caso 5
1 0 1
A B C
Caso 7
1 1 1
A B C
Caso 6
1 1 0
A B C
Para melhor compreenso, vamos, como exemplo, transpor para o diagrama a sada
expresso:
S = A.B.C + A.B.C + A.B.C + A.B.C + A.B.C
Tabela verdade extrada da expresso:
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
S
1
0
1
1
1
0
1
0
Caso 0
1
Caso 1
0
Caso 3
1
Caso 2
1
Caso 4
1
Caso 5
0
Caso 7
0
Caso 6
1
34
a)
Oitava:
Agrupamento mximo, onde todas as localidades valem 1.
B
A 1
A 1
C
b)
Oitava : S = 1
Quadra:
A 1
A 1
A 1
A 0
A 1
A 1
C
(a)
(a) Quadra A.
c)
C
(b)
(b) Quadra B.
C
(c)
(c) Quadra C.
Pares:
A 1
A 0
Termos isolados:
1
C
0
C
35
Para o exemplo, agrupamos primeiramente uma quadra e, logo aps, um par.
B
=> Quadra C
Notamos que esse par no depende de C, pois est localizado tanto em C como em
C, resultando sua expresso independente de C, ou seja, o termo A.B.
O passo final somarmos as expresses referentes aos agrupamentos. A expresso
final minimizada ser: S = A.B + C.
Como outro exemplo, vamos minimizar o circuito que executa a tabela abaixo:
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
S
0
1
0
1
1
1
1
0
36
Poderamos tambm ter agrupado de outra maneira:
B
1
C
B
A
B
A
B
D
B
A
B
A
B
B
A
B
D
37
C
C
B
B
A
B
A
B
A
B
D
C
B
B
A
B
A
B
A
B
D
B
(f) Regio onde C = 1(C = 0).
C
B
B
A
B
A
B
A
B
D
B
D
Neste tipo de diagrama, tambm temos uma regio para cada caso da tabela
verdade, como podemos verificar no diagrama completo:
38
Casos
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Caso 0 Caso 1
ABCDABCD
A 0 0 0 00 0 0 1
Caso 4 Caso 5
ABCDABCD
01 0 0 0 1 0 1
Caso 3
ABCD
0 0 1 1
Caso 7
ABCD
0 1 1 1
Caso 12 Caso 13 Caso 15
ABCDABCD ABCD
11 0 0 1 1 0 1 1 1 1 1
Caso 2
ABCD B
0 0 1 0
Caso 6
ABCD
0 1 1 0
B
Caso 14
ABCD
1 1 1 0
B
A
B
A
B
D
39
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
S
0
1
1
1
0
1
0
1
1
1
0
1
1
1
0
1
C
0
A
B
1
A
D
1
A
B
A
1
D
D
Par B.C.D
B
D
40
b) Exemplos de Quadras:
C
C
1
C
B
A
1
1
B => Quadra B.D
A
1
1
D
1
D
Quadra B.D
c) Exemplos de Oitavas:
C
A
1
1
B
B
=> Oitava D
A
1
1
D
1
D
D
=> Oitava B
C
0
A
Q
u
a
d
r
a
Oitava: D
B
Par: A.B.C
A
D
Quadra: A.C
D
Oitava
41
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
S
0
1
0
1
1
1
1
1
0
0
1
0
0
0
0
1
C
0
A
B
0
A
D
C
0
Quadra A.B
B
A
D
Par B.C.D
Termo isolado A.B.C.D
42
Exerccios:
1. Atravs das expresses abaixo, ache a tabela verdade e simplifique via mapa de
Veitch-Karnaugh:
a. S = A.B + A.B + A.B
b. S = A.B.C + B.C + A.C
c. S = A + B.C + A.B
d. S = A.B.C + B.D + A.C + A
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
S
X
1
1
1
0
0
0
0
O smbolo (x) indica que neste caso a sada pode assumir 0 ou 1, indiferentemente,
pois, ou indica, possibilita qualquer dos 2 valores na sada. Para fins de simplificao,
devemos adotar x = 1, pois assim sendo, agrupamos uma quadra, ao invs de 2 pares (no
caso de x = 0), representando uma maior simplificao da expresso de sada: S = A.
Convm ressaltar que, em uma tabela verdade, podemos ter varias condies
irrelevantes que devem ser independentemente, conforme agrupamento em que se
encontram. Para exemplificar, vamos simplificar a expresso extrada da tabela abaixo.
43
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
S
X
0
1
X
1
0
1
1
0
1
X
0
0
X
0
X
C
X
A
B
A
D
Quadra A.C
C
X
A
B
0
A
Par A.C.D
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
S
1
X
0
1
X
1
X
X
44
b.
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
S
1
X
1
0
1
1
1
0
1
0
X
1
X
1
X
0
1
(b)
(a)
(a) S = A
B = A.B + A.B
45
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
(A
B)
0
1
1
0
1
0
0
1
(B
0
1
1
0
1
0
0
1
C)
(A
C)
0
1
1
0
1
0
0
1
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
(A
B)
0
1
1
0
1
0
0
1
(B
0
1
1
0
1
0
0
1
C)
(A
C)
0
1
1
0
1
0
0
1
C) + A.(B C)
Como B C = B
S = A.(B
C, reescrevemos:
C) + A.(B
Chamado (B
C)
C) de X, temos:
S = A.X + A.X = A
X
46
C e B C, temos:
Substituindo X, temos:
S=A
B
B
C
C
D = A B
D
E = A B C D E
BC
00
01
11
CD
AB 00
00
01
11 10
01
1
(a)
10
11
(b)
10
(a) 2 variveis.
(c)
(b) 3 variveis.
(c) 4 variveis.
Pela figura, podemos notar que os diagramas so semelhantes, possundo apenas a
identificao das regies pelo valor assumido pela varivel (exemplo: A = 0 => regio A,
A = 1 => regio A). Tanto a colocao dos casos, bem como os agrupamentos obtidos se
fazem de maneira anloga, levando aos mesmos resultados
47
4 CIRCUITOS ARITMTICOS
Dentro do conjunto de circuitos combinacionais aplicados para finalidade especfica
nos sistemas digitais, destacam-se os circuitos aritmticos. So utilizados, principalmente,
para construir a ULA (Unidade Lgica Aritmtica) dos microprocessadores e, ainda,
encontrados disponveis em circuitos integrados comerciais.
4.1 Meio Somador
Antes de iniciarmos o assunto, vamos relembrar alguns tpicos importantes da soma
de 2 nmeros binrios:
1
0
0
0
0
1
1
1
0
1
1
1
10
transporte
Aps essa breve introduo, vamos montar uma tabela verdade da soma de 2
nmeros binrios de 1 algarismo:
A
0
0
1
1
B
0
1
0
1
S
0
1
1
0
C
0
0
0
1
Representando cada nmero por 1 bit, podemos ento, montar um circuito que possui
como entradas A e B, e como sada, a soma dos algarismos (S) e o respectivo carry out(C).
As expresses caractersticas do circuito, extradas da tabela so:
S=A
C = A.B
O circuito e a representao em bloco visto abaixo:
(circuito)
(representao em bloco)
Este circuito Meio Somador tambm conhecido como Half Adder, sendo a sada de
transporte denominada carry out, ambos os termos derivados do ingls.
48
1
0
0
1
1
1
1
1
0
0
0
0
A coluna 1 tem como resultado o carry out igual a 0. A coluna 2 tem como resultado 0
e um carry out igual a 1. A coluna 3 tem um carry in igual a 1 (carry out da coluna anterior),
possui resultado 1 e carry out igual a 1. A coluna 4 tem carry in igual a 1, resultado igual a 0
e carry out 1. A coluna 5 possui apenas um carry in (carry out da coluna 4) e, obviamente,
seu resultado ser igual a 1.
Para fazermos a soma de 2 nmeros binrios de mais algarismos, basta somarmos
coluna a coluna, levando em conta o carry in que nada mais que o carry out da coluna
anterior.
O Somador Completo um circuito para efetuar a soma completa de uma coluna,
considerando o carry in. Vamos, agora, montar uma tabela verdade deste circuito.
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
S
0
1
1
0
1
0
0
1
Ci
0
0
0
1
0
1
1
1
Ci => Carry in
(0 + 0 + 0 = 0 e Ci = 0)
(0 + 0 + 1 = 1 e Ci = 0)
(0 + 1 + 0 = 1 e Ci = 0)
(0 + 1 + 1 = 0 e Ci = 1)
(1 + 0 + 0 = 1 e Ci = 0)
(1 + 0 + 1 = 0 e Ci = 1)
(1 + 1 + 0 = 0 e Ci = 1)
(1 + 1 + 1 = 1 e Ci = 1)
B
A
Ci
49
Ci
Ci
Ci
Cout:
B
A 0
B
0
0
Cout = B.Ci + A.Ci + A.B
0
Ci
Ci
Ci
U5
EOR2
Cin
EOR2
U1
AND2
U2
U6
AND2
OR3
Cout
U3
AND2
S
Somador
Completo
Cout
50
Vamos, para exemplo de aplicao, montar um sistema em blocos que efetua a soma
de 2 nmeros de 4 bits, conforme o esquema a seguir:
X3
X2
X1
X0
Y3
Y2
Y1
Y0
Cout S3
S2
S1
S0
Para efetuar a soma dos bits X0 e Y0 dos nmeros (1 coluna), vamos utilizar um Meio
Somador, pois no existe carry in, mas para as outras colunas utilizaremos Somadores
Completos, pois necessitaremos considerar os transportes provenientes das colunas
anteriores. O sistema montado visto logo abaixo:
B
0
1
0
1
S
0
1
1
0
Cout
0
1
0
0
0
0
1
1
0
1
0
1
=
=
=
=
51
0
1
1
0
Representado cada nmero por 1 bit, podemos montar um circuito com as entradas A
e B, e como sada, a subtrao (S) e o transporte de sada (Cout).
As expresses caractersticas do circuito, extradas da tabela, so:
S=A
Cout = A.B
O circuito a partir destas, visto abaixo:
U7
EOR2
U8
U9
B
NOT
Cout
AND2
S
Meio
Somador
Cout
1
0
+
1
0
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
S
0
1
1
0
1
0
0
1
Cout
0
1
1
1
0
0
0
1
S:
Cout:
A 0
Ci
Ci
(a) S = A
Ci
Ci
Ci
(b) S = A.B + A.Ci + B.Ci
Ci
B
Ci
U5
EOR2
Cin
EOR2
U7
NOT
U1
AND2
U2
U4
AND2
OR3
Cout
U3
AND2
53
S
Subtrator
Completo
Cout
Cin
Cin
Cout
Cout
Sn-1
Sn
Cin
SUBTRATOR
COMPLETO
SUBTRATOR
COMPLETO
SUBTRATOR
COMPLETO
SUBTRATOR
COMPLETO
Cout
Cout
S
S2
S1
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
Ci
0
1
0
1
0
1
0
1
S
0
1
1
0
1
0
0
1
Cout
0
0
0
1
0
1
1
1
M
1
1
1
1
1
1
1
1
Soma Completa (M = 0)
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
Ci
0
1
0
1
0
1
0
1
S
0
1
1
0
1
0
0
1
Cout
0
1
1
1
0
0
0
1
Subtrao Completa (M = 1)
54
C
0
A
B
1
A
D
No diagrama, obtemos;
S = A.B.Ci + A.B.Ci + A.B.Ci + A.B.Ci
Fatorando a expresso, temos:
S = A.(B.Ci + B.Ci) + A.(B.Ci + B.Ci)
S = A.(B
S = A.(B
CI) + A.(B
S=A
Ci)
Ci
Cout:
C
0
A
B
0
A
D
A) + Ci.(M
A)
A).(B + Ci)
55
U3
EOR2
EOR2
Cin
U5
U7
Cout
AND2
OR2
U2
U4
EOR2
U6
AND2
OR2
S
Somador/
Subtrator
Completo
Ci
Cout
M
Exerccios:
1. Projete e mostre a simulao de um circuito somador onde A = 5 e B = 3.
2. Projete um circuito Somador/Subtrator para realizar A B onde A = +2 e B = -5.
Mostre a simulao.
56
SITUAO
EXPRESSO
SIMPLIFICADA
TABELA
VERDADE
CIRCUITO
S0
S1
.
.
.
CIRCUITO
LGICO
.
.
.
S2
SN
Notamos que o circuito lgico pode assumir diversas variveis de entrada e uma ou
mais sadas conforme o caso do projeto. A seguir, estudaremos, a ttulo de exemplo, casos
de 2, 3 e 4 variveis.
5.1.1 Circuitos com 2 Variveis
SEMFORO 2
SEMFORO 1
RUA A
PREFERENCIAL
SEMFORO 2
57
SEMFORO 1
A = 1.
A = 0 ou A = 1.
B = 1.
B = 0 ou B = 1.
V1 = 1.
V2 = 1.
A
0
0
1
1
B
0
1
0
1
V1
Vm1
V2
Vm2
A
0
B
0
V1
Vm1
V2
Vm2
58
A
0
B
1
V1
Vm1
V2
Vm2
A
1
B
0
V1
Vm1
V2
Vm2
A
1
B
1
V1
Vm1
V2
Vm2
A
0
0
1
1
B
0
1
0
1
V1
Vm1
V2
Vm2
0
0
1
1
1
1
0
0
1
1
0
0
0
0
1
1
A 0
(b)Vm1
(a)V1
B
A 0
(c)V2
(d)Vm2
59
V2
Vm1
Mp3 Player
A
SA
CH 1
Vitrola
B
SB
CH 2
Amplificador
60
Rdio AM
C
SC
CH 3
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
SA
SB
SC
SB
SC
=>
=>
=>
=>
=>
=>
=>
=>
Situao
0
1
2
3
4
5
6
7
A
0
0
0
0
1
1
1
1
B
0
0
1
1
0
0
1
1
C
0
1
0
1
0
1
0
1
SA
SB
SC
X
0
0
0
1
1
1
1
X
0
1
1
0
0
0
0
X
1
0
0
0
0
0
0
A X
A 1
(a) C
A X
A 0
(b) C
=> SB = A.B
A X
=> SA = A
(c) C
=> SC = A.B
U3
NOT
U4
NOT
SA
U1
SB
AND2
U2
SC
AND2
62
1 prioridade
Vice-Presidente:
2 prioridade
Engenharia:
3 prioridade
Chefe de seo:
4 prioridade
Esquematicamente, temos:
PRES.
V. PRES.
SA
CH 1
SB
ENG.
C
CH 2
SC
CHEFE
DE
SEO
CH 3
SD
CH 4
INTER.
CENTRAL
Primeiramente, vamos estabelecer as variveis de entrada e sada do circuito lgica e
as convenes do projeto:
Variveis de entrada:
=> intercomunicador do presidente: A
=> intercomunicador do vice-presidente: B
=> intercomunicador da engenharia: C
=> intercomunicador do chefe de seo: D
Convees utilizadas:
=> presena de chamada: 1
63
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
SA
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
SB
0
0
0
0
1
1
1
1
0
0
0
0
0
0
0
0
SC
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
SD
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
no efetua chamada
efetua chamada do chefe da seo
Efetua chamada da engenharia
Efetua chamada da engenharia, pois
prioritria;
Efetua chamada do vice-presidente
Efetua chamada da engenharia, pois
prioritrio
Efetua chamada do presidente
D
(a) SA = A
0 B
B
A
D
D
(b) SB = A.B
C
A
1 B
0 B
B
A
64
D
D
(c) SC = A.B.C
B
0
D
D
(d) Sd = A.B.C.D
A
B
U3
NOT
U4
NOT
U5
NOT
SA
U1
SB
AND2
U2
SC
AND3
U6
SD
AND4
Da mesma forma que no exemplo com 3 variveis, a sada ser acionada (1) quando
houver inteno de que tal situao ocorra (varivel respectiva = 1) e no haja acionamento
dos anteriores por ordem de prioridade (variveis barradas = 0). Analogamente, podemos
aplicar o mesmo processo para os outros tipos de sistuaes prticas que envolvam casos
de prioridades, bem como, de mais variveis.
Exerccios:
1. Projete um circuito de votao eletrnica para ser usado por trs diretores de uma
companhia. Assumir que um voto SIM represente um nvel lgico 1 e um voto NO seja
dado por um nvel lgico 0. No a voto preferencial, o sistema o da maioria.
a. Encontre as expresses nas formas padres de mintermos e maxtermos.
b. Desenhe o circuitos lgicos referentes as formas padres.
2. Um hotel tem 4 quartos (w,x,y,z) e 2 office-boys. Cada quarto capaz de solicitar
servio de quarto e uma solicitao deve ser atendida por um dos office-boys. Infelizmente,
os ocupantes dos quarto w e x se desgostaram com o primeiro office-boy e no aceitam
seus servios. Projete um circuito de alarme simplificado quando uma solicitao no for
atendida.
65
BIBLIOGRAFIA
66