Professional Documents
Culture Documents
Portas Lgicas
Nesta apresentao ser
fornecida uma introduo
ao sistema matemtico de
anlise de circuitos lgicos,
conhecido como lgebra de
Boole
Sero vistos os blocos
bsicos e suas
equivalncias
augusto@usp.br
http://dcm.fmrp.usp.br/~augusto
Histrico
Em meados do sculo XIX o
matemtico ingls George Boole
desenvolveu um sistema
matemtico de anlise lgica
Em meados do sculo XX, o
americano Claude Elwood
Shannon sugeriu que a lgebra
Booleana poderia ser usada para
anlise e projeto de circuitos de
comutao
Histrico
lgebra Booleana
Na lgebra de Boole, h somente dois estados
(valores ou smbolos) permitidos
Estado 0 (zero)
Estado 1 (um)
Em geral
O estado zero representa no, falso, aparelho
lgebra Booleana
Assim,
na lgebra booleana, se
representarmos por 0 uma situao, a
situao contrria representada por 1
Portanto, em qualquer bloco (porta ou
funo) lgico somente esses dois estados
(0 ou 1) so permitidos em suas entradas e
sadas
Uma varivel booleana tambm s assume
um dos dois estados permitidos (0 ou 1)
5
lgebra Booleana
Funo E (AND)
Executa a multiplicao (conjuno) booleana
de duas ou mais variveis binrias
Por exemplo, assuma a conveno no circuito
Chave aberta = 0; Chave fechada = 1
Lmpada apagada = 0; Lmpada acesa = 1
B
7
Funo E (AND)
Situaes possveis:
A=0
B=0
S=0
A=1
B=0
S=0
A=0
B=1
S=0
A=1
B=1
S=1
8
Funo E (AND)
Funo E (AND)
Para
representar a expresso
S=AeB
Adotaremos a representao
S = A.B, onde se l S = A e B
Porm, existem notaes alternativas
S=A&B
S = A, B
S=AB
10
Tabela Verdade
A
A.B
1
12
Representao
Porta E
(AND)
Entrada A
Sada S
Entrada B
13
A
S=A.B
B
A B S=A.B
0
0
0
0 0
0 1
1 0
1 1
A B S=A.B
0
0
1
A B S=A.B
1
0
0
0 0
0 1
1 0
1 1
0 0
0 1
1 0
1 1
A B S=A.B
1
1
1
0 0
0 1
1 0
1 1
14
possvel estender o
conceito de uma porta E
para um nmero qualquer
de variveis de entrada
Nesse caso, temos uma
porta E com N entradas e
somente uma sada
A sada ser 1 se e
somente se as N entradas
forem iguais a 1; nos
demais casos, a sada
ser 0
A
B
S=A.B.CN
15
Por exemplo,
S=A.B.C.D
A
B
C
D
S=A.B.C.D
1
16
Funo OU (OR)
Executa a soma (disjuno) booleana de duas
ou mais variveis binrias
Por exemplo, assuma a conveno no circuito
Chave aberta = 0; Chave fechada = 1
Lmpada apagada = 0; Lmpada acesa = 1
B
17
Funo OU (OR)
A=1
A=0
S=1
S=0
B=0
B=0
A=0
A=1
S=1
S=1
B=1
B=1
18
Funo OU (OR)
19
Funo OU (OR)
Para
representar a expresso
S = A ou B
Adotaremos a representao
S = A+B, onde se l S = A ou B
Porm, existem notaes alternativas
S=A|B
S = A; B
S=AB
20
A+B
1
21
Representao
Porta OU
(OR)
Entrada A
Entrada B
Entrada A
Sada S
Sada S
Entrada B
22
A
S=A+B
A B S=A+B
0
0
0 0
0 1
1 0
1 1
A B S=A+B
0
1
A B S=A+B
1
0
0 0
0 1
1 0
1 1
0 0
0 1
1 0
1 1
A B S=A+B
1
1
0 0
0 1
1 0
1 1
23
possvel estender o
conceito de uma porta OU
para um nmero qualquer
de variveis de entrada
Nesse caso, temos uma
porta OU com N entradas
e somente uma sada
A sada ser 0 se e
somente se as N entradas
forem iguais a 0; nos
demais casos, a sada
ser 1
A
B
C
S=A+B+C++N
24
Por exemplo,
S=A+B+C+D
A
B
C
D
S=A+B+C+D
1
25
Funo NO (NOT)
o complemento (negao) de
uma varivel binria
Se a varivel estiver em 0, o resultado da
Executa
funo 1
Se a varivel estiver em 1, o resultado da
funo 0
Essa
26
Funo NO (NOT)
A=0
A=1
S=1
S=0
27
Funo NO (NOT)
Para representar a
expresso
S = no A
Adotaremos a
representao
S = , onde se l S = no A
Notaes alternativas
S = A
S=A
S=
Tabela verdade da
funo NO (NOT)
A
28
Representao
Entrada A
Porta
NO
(NOT)
Sada S
Alternativamente,
Aps um
bloco lgico
Antes de um
bloco lgico
29
S=
S=
S=
0
30
Funo NO E (NAND)
Composio da
funo E com a
funo NO, ou seja,
a sada da funo E
invertida
S = (A.B) = A.B
= (A.B)
= (A.B)
Tabela verdade
A
S=A.B
0
31
Porta NO E (NAND)
A porta NO E (NE) o bloco lgico que executa
a funo NO E, ou seja, sua tabela verdade
Representao
A
S=A.B
B
S=A.B
B
32
Porta NO E (NAND)
A
B
S=A.B.CN
33
Funo NO OU (NOR)
Composio da
funo OU com a
funo NO, ou seja,
a sada da funo OU
invertida
S = (A+B) = A+B
= (A+B)
= (A+B)
Tabela verdade
A
S=A+B
0
34
Porta NO OU (NOR)
A porta NO OU (NOU) o bloco lgico que
executa a funo NO OU, ou seja, sua tabela
verdade
Representao
A
B
S=A+B
S=A+B
B
35
Porta NO OU (NOR)
A
B
C
S=A+B+C++N
36
A funo OU
Exclusivo fornece
1 na sada quando as
entradas forem
diferentes entre si e
0 caso contrrio
S =AB
= .B + A.
Tabela verdade
A
0
0
1
1
B
0
1
0
1
S=AB
0
1
1
0
37
S=AB
S=AB
38
S=AB
39
OU (OR)
NO (NOT)
Inversor
NE (NAND)
Smbolo Grfico
S=A.B
S=AB
B
0
1
0
1
S=A.B
0
0
0
1
S=A+B
S=A+B
A
0
0
1
1
B
0
1
0
1
S=A+B
0
1
1
1
S=
S=
S=A
S= A
A
0
1
S=
1
0
S=A.B
B
S=A.B
S=A.B
S=(A.B)
S= (A.B)
A
0
0
1
1
B
0
1
0
1
S=A.B
1
1
1
0
S=A+B
S=A+B
S=(A+B)
S= (A+B)
A
0
0
1
1
B
0
1
0
1
S=A+B
1
0
0
0
S=AB
A
0
0
1
1
B
0
1
0
1
S=AB
0
1
1
0
A
B
NOU (NOR)
XOR
S=AB
B
Tabela Verdade
A
0
0
1
1
Funo Algbrica
41
o circuito:
A
B
43
A
B
C
S1
(1)
(2)
44
A
B
C
S1=A.B
(1)
S=S1+C
(2)
45
S1=A.B
(1)
S=S1+C
(2)
46
A.B
B
C
S=A.B+C
(2)
47
Exerccio
Escreva
A
B
S
C
D
48
Soluo
(A+B)
B
S=(A+B).(C+D)
C
(C+D)
D
49
Exerccio
Determinar
a expresso booleana
caracterstica do circuito
A
B
50
Soluo
(A.B)
S=(A.B)+C+(C.D)
(C.D)
D
51
Seja a expresso
S = (A+B).C.(B+D)
S = (A+B) . C . (B+D)
53
Seja a expresso
S = (A+B).C.(B+D)
A
B
S1=(A+B)
S = (A+B) . C . (B+D)
B
D
S2=(B+D)
54
Seja a expresso
S = (A+B).C.(B+D)
A
B
S1=(A+B)
S = (A+B) . C . (B+D)
B
D
S2=(B+D)
S1
C
S2
S = S1 . C . S2
circuito completo :
S1=(A+B)
B
S = (A+B).C.(B+D)
C
S2=(B+D)
56
Exerccio
Desenhe
57
Soluo
A.B.C
B
C
S=(A.B.C)+(A+B).C
A+B
B
(A+B).C
C
58
Exerccio
Desenhe
59
Soluo
A.B
B
S=((A.B)+(C.D))
C
C.D
60
Expresses ou Circuitos
representados por Tabelas Verdade
Uma forma de estudar uma funo booleana
consiste em utilizar sua tabela verdade
Como visto anteriormente, h uma equivalncia
entre o circuito lgico e sua expresso
caracterstica
Podemos obter um circuito a partir de sua expresso
Podemos obter expresses a partir dos circuitos
Uma tabela verdade representa o comportamento
tanto do circuito como de sua expresso
caracterstica
61
62
Exemplo
Considere a expresso
S = A.B.C + A.D + A.B.D
Como h 4 variveis de
entrada (A, B, C, D), h
24=16 interpretaes
Variao 1 zero, 1 um
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
63
Exemplo
Considere a expresso
S = A.B.C + A.D + A.B.D
Como h 4 variveis de
entrada (A, B, C, D), h
24=16 interpretaes
Variao 1 zero, 1 um
Variao 2 zeros, 2 um
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
64
Exemplo
Considere a expresso
S = A.B.C + A.D + A.B.D
Como h 4 variveis de
entrada (A, B, C, D), h
24=16 interpretaes
Variao 1 zero, 1 um
Variao 2 zeros, 2 um
Variao 4 zeros, 4 um
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
65
Exemplo
Considere a expresso
S = A.B.C + A.D + A.B.D
Como h 4 variveis de
entrada (A, B, C, D), h
24=16 interpretaes
Variao 1 zero, 1 um
Variao 2 zeros, 2 um
Variao 4 zeros, 4 um
Variao 8 zeros, 8 um
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
66
Exemplo
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
A.B.C
A.D
A.B.D
67
Exemplo
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
A.B.C
A.D
A.B.D
1
1
68
Exemplo
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
A.B.C
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
A.D
A.B.D
69
Exemplo
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
A.B.C
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
A.D
A.B.D
1
1
1
1
70
Exemplo
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
A.B.C
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
A.D
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
1
A.B.D
71
Exemplo
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
A.B.C
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
A.D
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
1
A.B.D
1
1
72
Exemplo
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
A.B.C
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
A.D
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
1
A.B.D
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
73
Exemplo
A.B.C
A.D
A.B.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
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
A.B.C
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
A.D
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
1
A.B.D
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
1
1
1
1
1
74
Exemplo
A.B.C
A.D
A.B.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
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
A.B.C
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
A.D
0
0
0
0
0
0
0
0
0
1
0
1
0
1
0
1
A.B.D
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
S
0
0
0
0
0
0
0
0
0
1
0
1
0
1
1
1
75
Exerccio
Encontre a tabela
verdade da expresso
S = +B+A.B.C
76
Exerccio
Encontre a tabela
verdade da expresso
S = +B+A.B.C
A.B.C
77
Soluo
Encontre a tabela
verdade da expresso
S = +B+A.B.C
A.B.C
78
Exerccio
Montar
79
Exerccio
Montar
A.B.C
A.B.C
A.B.C
A.B.C
80
Soluo
Montar
A.B.C
A.B.C
A.B.C
A.B.C
1
81
Equivalncia de Expresses
Booleanas por Tabela Verdade
Sejam S1 e S2 duas expresses booleanas
S1 e S2 so equivalentes se e somente se para
todas as interpretaes possveis (linhas) na
tabela verdade ocorre S1=S2
Se S1S2 em pelo menos uma interpretao,
ento S1 e S2 no so equivalentes
82
Exerccio
S1 = A
S2 = A.(A+B)
A+B
S1
S2
83
Soluo
S1 = A
S2 = A.(A+B)
A+B
S1
S2
84
Exerccio
S1 = A
S2 = A.(1 + B)
S3 = A + A.B
1+B
A.B
S1
S2
S3
85
Soluo
S1 = A
S2 = A.(1 + B)
S3 = A + A.B
1+B
A.B
S1
S2
S3
Exerccio
S1 = A.(B + C)
S2 = A.B + A.C
A B C
0
B+C
A.B
A.C
S1
S2
87
Soluo
S1 = A.(B + C)
S2 = A.B + A.C
A B C
B+C
A.B
A.C
S1
S2
88
Exerccio
S1 = A+(B.C)
S2 = (A+B) . (A+C)
A B C
0
B.C
A+B
A+C
S1
S2
89
Soluo
S1 = A+(B.C)
S2 = (A+B) . (A+C)
A B C
B.C
A+B
A+C
S1
S2
90
Exerccio
S1 = (.)
S2 = (A.B)
A B
A.B
S1
S2
0 0
0 1
1 0
1 1
91
Soluo
S1 = (.)
S2 = (A.B)
A B
A.B
S1
S2
0 0
0 1
1 0
1 1
(.) (A.B)
92
93
94
Exemplo
A
partir do circuito:
A
B
S
B
C
95
Exemplo
A
partir do circuito:
(A+B)
B
S=(A+B).(B.C)
B
(B.C)
Extramos
S = (A+B) . (B.C)
96
Exemplo
A partir da expresso
S = (A+B) . (B.C)
Obtm-se a tabela
verdade, como
anteriormente
explicado
A+B
B.C
(B.C)
97
98
Inversor
S=
A
0
1
S
1
0
Ao interligar as
entradas de uma porta
NAND, obtm-se um
inversor
A
S=
B
S=A.B
B
A
0
0
1
1
B
0
1
0
1
S
1
1
1
0
A B
0 0
1 1
S
1
0
99
Inversor
S=
A
0
1
S
1
0
Ao interligar as
entradas de uma porta
NOR, obtm-se um
inversor
A
S=
B
A
S=A+B
B
A
0
0
1
1
B
0
1
0
1
S
1
0
0
0
A B
0 0
1 1
S
1
0
100
Porta E e inversores
Porta NOU
A
S
B
A
0
0
1
1
B
0
1
0
1
1
1
0
0
S=A+B
B
1
0
1
0
S
1
0
0
0
A
0
0
1
1
B
0
1
0
1
S=A+B
1
0
0
0
101
102
Nome
Bloco Equivalente
AND
NAND
A
S=A.B
S=(.)
S=A+B
B
NOR
S=+
B
B
A
OR
S=(+)
S=A.B
A
S=A+B
S=.
B
103
Exerccio
Prove,
A
B
A
S2=(.)
S1=A+B
B
104
Soluo
A
A
B
S1=A+B
A
S2=(.)
.
S1=
S2=
A+B
.
105
106