1. 11/12/13
1
Aula
2
–
Álgebra
Booleana
Disciplina:
Circuitos
Digitais
Prof.
Kelson
R.
T.
Aires
Fonte:
Transparências
do
Prof.
Ivan
S.
Silva
• Uma
álgebra
definida
por:
– Um
conjunto
de
operações
válidas
– Um
conjunto
de
valores
admissíveis
para
cada
variável
Álgebra
Booleana
Operações
Válidas
• Complemento
(NOT)
ou
Negação
ou
Inversão
– É
uma
operação
unária
que
tem
como
resultado
o
valor
oposto
ao
valor
da
variável
a
qual
é
aplicada
SÍMBOLO
A S
EXPRESSÃO
S = A
A
S
0
1
1
0
COMPORTAMENTO
EM
VHDL
S <= NOT A;
Operações
Válidas
• Operação
(AND)
ou
“E”
ou
“mulbplicação
lógica”
– Resulta
em
‘1’
se
e
somente
se
todas
as
variáveis
de
entrada
são
‘1’
SÍMBOLO
A
B
S
EXPRESSÃO
S = A . B
A
B
S
0
0
0
0
1
0
1
0
0
1
1
1
COMPORTAMENTO
EM
VHDL
S <= A AND B;
Operações
Válidas
• Operação
(OR)
ou
“OU”
ou
“adição
lógica”
– Resulta
em
‘1’
se
pelo
menos
uma
das
variáveis
de
entrada
é
‘1’
SÍMBOLO
A
B
S
EXPRESSÃO
S = A + B
A
B
S
0
0
0
0
1
1
1
0
1
1
1
1
COMPORTAMENTO
EM
VHDL
S <= A OR B;
Operações
Válidas
• Operações
NAND
– O
complemento
de
um
AND
SÍMBOLO
A
B
S
EXPRESSÃO
S= A . B
A
B
S
0
0
1
0
1
1
1
0
1
1
1
0
COMPORTAMENTO
EM
VHDL
S <= A NAND B;
2. 11/12/13
2
Operações
Válidas
• Operações
NOR
– O
complemento
de
um
OR
SÍMBOLO
EXPRESSÃO
COMPORTAMENTO
A
BS = A + B
A
B
S
0
0
1
0
1
0
1
0
0
1
1
0
EM
VHDL
S <= A NOR B;
Operações
Válidas
• Operações
NAND
e
NOR
– Por
razões
tecnológicas
é
mais
fácil
fazer
o
complemento
de
um
AND
ou
o
complemento
de
um
OR
que
estas
operações
A
S
B
A B
S=1
A
B
A B
NAND
AND
Operações
Válidas
• Operações
XOR,
ou
“OU
Exclusivo”
ou
“Disjunção
Exclusiva”
– Resulta
em
‘1’
se
e
somente
se
exatamente
uma
das
variáveis
de
entrada
tem
o
valor
‘1’
– EXPRESSÃO
GERAL:
(A.B)
+
(A.B)
=
A
⊕
B
• Veja:
hmp://pt.wikipedia.org/wiki/XOR
Operações
Válidas
• Operações
XOR,
“OU
Exclusivo”
ou
“Disjunção
Exclusiva”
SÍMBOLO
A
B
S
EXPRESSÃO
S = A ⊕ B
A
B
S
0
0
0
0
1
1
1
0
1
1
1
0
COMPORTAMENTO
EM
VHDL
S <= A XOR B;
Operações
Válidas
• Operações
XNOR,
ou
“Coincidência”
– Resulta
em
‘1’
se
e
somente
se
os
valores
de
todas
as
variáveis
de
entrada
são
idênbcos
– EXPRESSÃO
GERAL:
(A.B)
+
(A.B)
=
A
¤
B
• Veja:
hmp://pt.wikipedia.org/wiki/Porta_XNOR
Operações
Válidas
• Operações
XNOR,
ou
“Coincidência”
SÍMBOLO
A
B
S
EXPRESSÃO
SS = A ¤ B
A
B
S
0
0
1
0
1
0
1
0
0
1
1
1
COMPORTAMENTO
EM
VHDL
S <= A XNOR B;
3. 11/12/13
3
Circuitos
Digitais
-‐
UFPI
13
Porta
Símbolo
Expressão
de
saída
NOT
ou
Não
S=A
AND
ou
E
S=A.B
NAND
ou
Não
E
S=A.B
OR
ou
OU
S=A+B
NOR
ou
NOU
S = A + B
XOR
ou
OU
Exclusivo
S = A ⊕ B
Coincidência
S = A ¤ B
A
B
S
A S
A
B
S
A
B
S
A
B
S
A
B
S
A
B
S A ¤ B
=
A ⊕ B
Fonte:
Transparências
do
prof.
Ricardo
Brimo
(DIE/UFPI)
Postulados
e
Idenbdades
• Complementação
A
=
A
A
=
0
à
A
=
1
A=
1
à
A
=
0
• Adição
A
+
0
=
A
A
+
1
=
1
A
+
A
=
A
A
+
A
=
1
• Mulbplicação
A.0
=
0
A.1
=
A
A.A
=
A
A.A
=
0
Elemento
Neutro
Elemento
Neutro
Aritmébca
Booleana
• Adição
0
+
0
=
0
0
+
1
=
1
1
+
0
=
1
1
+
1
=
1
• Mulbplicação
0.0
=
0
0.1
=
0
1.0
=
0
1.1
=
1
Propriedades
da
Álgebra
de
Boole
• Comutabva
• Distribubva
A
.
B
=
B
.
A
A
+
B
=
B
+
A
A
⊕
B
=
B
⊕
A
A
.
(B
+
C
)
=
A
.
B
+
A
.
C
A
+
B
.
C
=
(A
+
B)
.
(A
+
C)
Propriedades
da
Álgebra
de
Boole
• Associabva
(
A
.
B
)
.
C
=
A
.
(
B
.
C
)
=
A
.
B
.
C
(
A
+
B
)
+
C
=
A
+
(
B
+
C
)
=
A
+
B
+
C
(
A
⊕
B
)
⊕
C
=
A
⊕
(
B
⊕
C
)
=
A
⊕
B
⊕
C
Teoremas
de
De
Morgan
• 1º
Teorema
:
A
.
B
=
A
+
B
A
B
A
.
B
A
+
B
0
0
1
1
0
1
1
1
1
0
1
1
1
1
0
0
4. 11/12/13
4
Teoremas
de
De
Morgan
• 2º
Teorema
:
A
.
B
=
A
+
B
A.B=
A
+
B
A.B=
A
+
B
Façamos
=
A
=
X
e
B
=
Y
X
.
Y
=
(X
+
Y)
Reescrevendo
em
termos
de
A
e
B
A
.
B
=
(A
+
B)
Do
1º
Teorema
2º
Teorema
Leis
da
Absorção
• A
+
A.B
=
A
Demonstração
A
+
A.B
=
A
A
(1
+
B)
=
A
A
(1)
=
A
A
=
A
• A
+A.B
=
A
+
B
Demonstração
A
+A.B
=
A
+
B
A
+A.B
=
A
+
B
A
.(A.B)
=
A
+
B
A
.(A+B)
=
A
+
B
A.B
=
A
+
B
A
+
B
=
A
+
B
Leis
da
Absorção
• (A
+
B).B
=
A.B
Demonstração
(A
+
B).B
=
A.B
A.B
+
B.B
=
A.B
A.B
+
0
=
A.B
A.B
=
A.B
Idenbdades
Auxiliares
A.B
+
A.B
=
A
A.(A
+
B)
=
A
(A
+
B)
.
(A
+
B)
=
A
(A
+
B)
.
(A
+
C)
=
A
+
B.C
Idenbdades
Auxiliares
A.B
+
A.B
=
A
A(B
+
B)
=
A
A
=
A
AA
+
AB
+
BA
+
BB
=
A
A
+
AB
+
BA
+
0
=
A
A
(B+1+B)=
A
A
=
A
(A
+
B)
.
(A
+
B)
=
A
A.(A
+
B)
=
A
A.A
+
AB
=
A
A
+
AB
=
A
A(
1
+
B)
=
A
A
=
A
(A
+
B)
.
(A
+
C)
=
A
+
B.C
(A.
A
+
A.
C
+
B.A
+
B.C)
=
A
...
(A
+
A.
C
+
B.A
+
B.C)
=
A
+B.C
A(1
+
B
+
C)
+
B.C=
A
+B.C
A
+
B.C=
A
+B.C
Avaliação
de
Expressões
Booleanas
• Criar
uma
tabela
verdade
para
a
expressão
• Uma
tabela
verdade
é
uma
tabela
que
para
cada
combinação
possível
de
valores
das
variáveis
de
entrada
mostra
o
resultado
da
expressão
– Idenbficar
as
variáveis
de
entrada
– Para
cada
variável
de
entrada,
desbnar
uma
coluna
mais
à
esquerda,
na
tabela-‐verdade
– Criar
colunas
à
direita,
conforme
a
ordem
de
precedência
das
operações
conbdas
na
equação
que
se
está
avaliando
5. 11/12/13
5
Avaliação
de
Expressões
Booleanas
• Ordem
de
Avaliação
de
Expressões
Booleanas
(Ordem
Precedência
dos
Operadores)
– Do
nível
de
parêntesis
mais
interno
para
o
nível
mais
externo
1.
Complemento
de
variável
individual
2.
Operação
“E”
3.
Operação
“OU”
• OBS:
complemento
de
expressão
deve
ser
analisado
assim
que
a
expressão
a
ser
complementada
for
avaliada.
Exemplo:
A
+
B
.
C
Avaliação
de
Expressões
Booleanas
• Construção
de
uma
Tabela-‐Verdade
– Com
n
entradas
uma
função
tem
2n
combinações
de
valores
possíveis.
• Avaliação
da
função
–
Atribuir
valores
as
variáveis
na
tabela
–
Avaliar
AND,
OR,
complemento
na
ordem
estabelecida
– Exemplo
-‐
DeMorgan:
X
+
Y
=
X
.
Y
X
Y
X
Y
X
.
Y
0
0
1
1
1
0
1
1
0
0
1
0
0
1
0
1
1
0
0
0
Funções
Booleanas
e
Circuitos
Lógicos
• Dada
uma
função
Booleana,
é
possível
representá-‐la
graficamente,
por
meio
de
uma
associação
de
portas
lógicas
• Esta
associação
chama-‐se
circuito
lógico
ou
digital
• Com
o
circuito
lógico
é
possível
implementar
fisicamente
funções
booleanas
Funções
Booleanas
e
Circuitos
Lógicos
• Pode-‐se
obter
um
circuito
da
seguinte
maneira:
– cada
termo
é
uma
porta
– cada
literal
é
uma
entrada
para
uma
porta
– portas
adicionais
:
inversores
na
entrada
– composição
dos
termos
(AND
ou
1
OR)
X
.
Y
.
Z
+
X
.
Y
.
Z
+
X
.
Z
Cada
ocorrência
de
variável
(complementada
ou
não)
literais
termo
Funções
Booleanas
e
Circuitos
Lógicos
F
Z
X
Y
X
.
Y
.
Z
+
X
.
Y
.
Z
+
X
.
Z
Cada
ocorrência
de
variável
(complementada
ou
não)
literais
termo
O
número
de
termos
e
literais
dá
uma
medida
aproximada
da
complexidade
do
circuito.
Funções
Booleanas
e
Circuitos
Lógicos
• Exercício
– Faça
a
tabela
verdade
correspondente
da
função
booleana
a
seguir
e
desenhe
o
circuito
lógico
que
a
representa
S
=
A
•
C
+
(B
•
C
+
A
•
B)
6. 11/12/13
6
Manipulações
Algébricas
• Tem
por
objebvo
simplificar
a
função
booleana
e
seu
circuito
lógico:
– Exemplo:
F
=
X
Y
Z
+
X
Y
Z
+
X
Z
lei
distribubva
F
=
X
Y
(
Z
+Z)
+
X
Z
complemento
F
=
X
Y
.
1
+
X
Z
elemento
neutro
F
=
X
Y
+
X
Z
2
termos
4
literais
Manipulações
Algébricas
• Não
existe
nenhuma
técnica
para
indicar
a
manipulação
algébrica
a
ser
usada
– Método
de
tentabvas
– Familiaridade
com
axiomas
e
teoremas
da
álgebra
booleana
Complemento
de
uma
função
• Usando
De
Morgan
exemplo:
F
=
X(YZ
+
YZ)
F
=
X(YZ
+
YZ)
F
=
X
+
(YZ
.YZ)
F
=
X
+
(Y
+
Z)
.
(Y
+
Z)
F
=
X
+
YY
+
YZ
+
ZY
+
ZZ
F
=
X
+
YZ
+
ZY
Complemento
de
uma
função
• Usando
a
tabela
verdade
X
Y
Z
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
YZ
YZ
1
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
YZ
+
YZ
1
0
0
1
1
0
0
1
F
0
0
0
0
1
0
0
1
F
1
1
1
1
0
1
1
0
Resta
saber
como
obter
a
função
e
o
circuito
a
parNr
da
tabela
Equivalência
entre
portas
lógicas
• Inversor
a
parbr
das
portas
NOR
e
NAND
E
S
0
1
1
0
E
S
E
S
0
1
1
0
E
S
Equivalência
entre
portas
lógicas
• Porta
OR
a
parbr
da
porta
NAND
e
inversores
A
B
S
A
B
A
B
0
0
0
0
0
1
1
1
1
0
1
1
1
1
1
1
BA+ BA*
7. 11/12/13
7
Equivalência
entre
portas
lógicas
• Porta
AND
a
parbr
da
porta
NOR
e
inversores
A
B
S
A
B
S
A
B
0
0
0
0
0
1
0
0
1
0
0
0
1
1
1
1
BA. BA+
Equivalência
entre
portas
lógicas
Porta
Lógica
Porta
Equivalente
Fonte:
Transparências
do
prof.
Ricardo
Brimo
(DIE/UFPI)