Você está na página 1de 8

TÓPICO 3 – ÁLGEBRA BOOLEANA E MINIMIZAÇÃO LÓGICA

Expressões booleanas, Diagramas Lógicos e Tabelas Verdade

Uma expressão booleana ou expressão algébrica booleana descreve através de uma equação
(como já vimos para o caso das portas lógicas) a relação lógica entre uma saída e diversas
entradas, através do uso de diversas portas lógicas cascateadas. Quando duas ou mais portas
lógicas são conectadas elas descrevem o que se chama de rede de portas lógicas ou um
circuito lógico combinacional. A saída do circuito depende da combinação lógica das suas
entradas. Note que existem diversas representações distintas para uma mesma expressão
lógica, entre as quais se destacam a representação esquemática (circuito), a expressão
booleana e a tabela verdade.

Diversas representações para as operações booleanas

Expressões booleanas a partir de diagramas lógicos

Para obter-se a expressão booleana equivalente a um diagrama lógico, devemos expressar as


relações obtidas como resultado a partir de cada porta, das entradas para a saída. Como
exemplo, seja o circuito abaixo:

Marcando as saídas parciais de cada porta lógica temos:


Y1
Y2
R

Escrevendo cada uma das expressões em termos da porta básica temos:


1 =   + 
2 = 
1 + 
. ̅

= 2
Fazendo a substituição de cada termo, obtemos a resposta final:



 +  + . ̅

= 

Re-escrevendo a expressão obtemos:

 +  +  ̅

= 

Diagramas Lógicos a partir de expressões booleanas

Para determinar o diagrama lógico a partir da expressão booleana deve-se aplicar as regras de
precedência ao mesmo. Por exemplo, seja a expressão a seguir:

 =  +  +  +  + 

Apesar da precedência normal ser:

1) Inversores
2) Portas E
3) Portas OU

O uso de parênteses, colchetes ou chaves altera essa ordem normal. Dessa forma, para a
expressão apresentada, temos que primeiro construir portas OU entre as entradas, na forma:

O circuito final é formado por uma porta E entre os resultados parciais obtidos:

Tabela verdade a partir de diagramas lógicos e expressões booleanas

Para derivar tabelas verdade a partir de diagramas ou expressões booleanas, é interessante


expressar os resultados parciais e ir evoluindo na expressão até o resultado final. Por exemplo,
para o diagrama abaixo:

Esse circuito pode ser descrito em termos de resultados parciais das portas na forma:

 = ̅ + 
 =  + 
 =  

Dessa forma, podemos produzir a seguinte tabela verdade:

ENTRADAS PARCIAIS RESULTADO


̅ 
A B C   Y1 Y2 Y
0 0 0 1 1 1 0 0
0 0 1 1 1 1 1 1
0 1 0 1 0 1 0 0
0 1 1 1 0 1 1 1
1 0 0 0 1 1 1 1
1 0 1 0 1 1 1 1
1 1 0 0 0 0 1 0
1 1 1 0 0 0 1 0

Obtenção de expressões booleanas a partir de tabelas verdade

Suponha que tenhamos um circuito desconhecido, acerca do qual queira se levantar a


expressão lógica ou mesmo um diagrama lógico equivalente (é importante notar que os
métodos aqui indicados não necessariamente vão ser idênticos ao circuito desconhecido 
isso se deve ao fato de haver diversas formas distintas de implementar uma função  apenas
conseguiremos produzir um circuito equivalente, ou seja, que produza as mesmas saídas dadas
as mesmas entradas).

O primeiro passo para fazer o levantamento do circuito é aplicar todas as possíveis entradas e
verificar as saídas produzidas para essas entradas. Suponha que no processo efetuado, tenha-
se obtido a tabela verdade a seguir:

ENTRADAS SAÍDA
A B C Y
0 0 0 1
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1

Observa-se para essa tabela verdade que Y está em nível ALTO:

1) Quando A, B e C estão todos BAIXOS


2) Quando A é BAIXO, B é ALTO e C é BAIXO
3) Quando A é ALTO, B e C são BAIXOS
4) Quando A, B e C são ALTOS

Cada uma dessas condições expressa um mintermo na saída da expressão booleana. Um


mintermo é um produto (AND) que inclui todas as variáveis. Os mintermos da tabela são,
portanto:
1 ̅̅
2 ̅̅
3 ̅
4 

A expressão que resulta na tabela verdade é, então, a soma de todas os mintermos individuais.
Essa forma de expressão é conhecida como soma de produtos (SDP).

 = ̅̅ + ̅̅ + ̅ + 

Para derivar uma expressão lógica na forma SDP pode-se seguir os seguintes passos:

1) Cada linha da tabela verdade que tenha uma saída em nível alto corresponde a um
mintermo da expressão lógica.
2) Para cada mintermo, escreva o mesmo usando a notação barrada (ex.: ̅ ), se o mesmo
for 0 e somente a variável lógica se o mesmo for 1. O mintermo é escrito como uma
função AND das variáveis lógicas.
3) Combine todos os mintermos usando uma função OU para tanto.

Também é possível obter uma expressão que descreva a tabela verdade na forma conhecida
como produto de somas (PDS). O produto de somas consiste em um número de maxtermos,
isto é, termos na forma de OU contendo todas as variáveis associadas à saída, que são unidos
através de uma porta AND. Para achar a forma PDS de Y, basta aplicar o teorema de De
Morgan a expressão escrita da forma SDP para a saída Y complementada (isto é, acha-se a
expressão para quando Y é 0).

Tomando o problema anterior, temos para :


1̅
2̅
3 
4 ̅
Unindo isso na forma SDP:
 = ̅ + ̅ +  + ̅

Aplicando o teorema de De Morgan:


 =  ̅ + ̅ +  + ̅

 = ̅   
̅  ̅ 
  
 =  +  + ̅  +  + ̅ ̅ +  + ̅ ̅ +  + 

Um procedimento para encontrar a mesma expressão é:

1) Cada linha na tabela verdade que gera uma saída BAIXA corresponde a um maxtermo
da expressão lógica.
2) Para cada maxtermo, escreva o mesmo usando a notação barrada (ex.: ̅ ), se o
mesmo for 1 e somente a variável lógica se o mesmo for 0. O maxtermo é escrito
como uma função OR das variáveis lógicas.
3) Una todos os maxtermos usando uma porta AND para tanto.

Teoremas da Álgebra Booleana

Propriedades Comutativa, Associativa e Distributiva


Funções OR e AND são tanto comutativas quanto associativas.

Comutativa: xy=yx; x+y=y+x


Associativa: (xy)z=x(yz)=y(xz); (x+y)+x=x+(y+z)=(x+z)+y

A propriedade distributiva permite fazer a distribuição da função AND ao longo de funções OR:

Distributiva: x(y+z)=xy+xz ou ainda (x+y)(w+z)=xw+xz+yw+yz

Exemplo: Transforme o circuito a seguir na forma PDS para a forma SDP através das
propriedades distributiva, comutativa e associativa:

Observando o circuito, vemos que  = ̅ + ̅ + . Usando a propriedade distributiva, a
expressão resulta em:
 = ̅̅ + ̅ + ̅ + 

Exercício: Transforme o circuito a seguir para a forma SDP.

Teoremas de única variável

1) Família AND/OR/XOR 0/1

Os teoremas do primeiro grupo podem ser gerados verificando o que ocorrer com a
variável x é uma entrada de uma porta AND/OR/XOR e 0/1 é a outra. Temos:

x.0=0
x+0=x
x⨁0=x
x.1=x
x+1=1
x⨁1=̅

Esses teoremas podem ser verificados através da tabela verdade da porta em questão.
Exemplo: x⨁1=̅

a (x) b (1) y=x⨁1


x=0
0 1 1
x=1
1 1 0

O que mostra que o teorema está correto para qualquer valor de x. Os demais
teoremas podem ser verificados de forma similar.

2) Família x AND/OR/XOR /̅

Os teoremas da segunda família são gerados combinando em uma expressão lógica x a


si próprio ou a si mesmo complementado.

x.x = x
x+x=x
x⨁x=0
. ̅ = 0
 + ̅ = 1
⨁̅ = 1

Novamente, pela aplicação da tabela verdade, podemos observar os teoremas em


questão. Fazendo isso para . ̅ = 0 e ⨁̅ = 1, temos:

a (x) b (̅ )  = . ̅
x=0
0 1 0
x=1
1 0 0

O que comprova que . ̅ = 0.

a (x) b (̅ )  = ⨁̅


x=0
0 1 1
x=1
1 0 1
O que comprova que ⨁̅ = 1.

3) Dupla inversão:

̅̅ = 

Teoremas de múltiplas variáveis

1) De DeMorgan:


.  = ̅ + 

 +  = ̅ . 

2) x+xy=x

Prova: x+xy=x(1+y)
=x.1
=x

Exercício: Simplifique as seguintes expressões:


a) = !" + ! resp.: K
b)  =  
+  +  
+  resp.: 
+
c)  = #$
+ #$ % + & + # + $ % + & + % + & resp.: S+T

3) (x+y)(x+z)=x+yz

Prova: (x+y)(x+z)=xx+xy+yx+yx
=(x+xy)+xz+yz
=x+xz+yz
=(x+xz)+yz
=x+yz

Exercício: Simplifique as expressões lógicas a seguir.


a) " = ' + ( ' + # 
b)  =  
+  +  
+  + 

4)  + ̅  =  + 

Prova: já que (x+y)(x+z)=x+yz


 + ̅  =  + ̅  + 
= 1.  +  =  + 

Exercício: Simplifique as expressões lógicas a seguir.


a)  = )  + )* , ,-./. )
 + *
b) # = $
 % + $ +
+ %̅&, ,-./. $
 % + &

c) 0 = 
!'!  + " + ' + !', ,-./. ! +"+'

Simplificação de expressões obtidas das tabelas verdade

Dois termos em uma expressão na forma SDP podem ser reduzidos caso os mesmos se
encontrem na forma:

1̅ + 1 = 1̅ + 1 = 

Dois termos em uma expressão na forma PDS podem ser reduzidos caso os mesmos se
encontrem na forma:
 +  + 1 +  + 1̅ =  +  + 11̅ =  + 

Exemplo: Seja a expressão na forma SDP:


 = ̅̅ + ̅ + ̅
= ̅ + ̅ + ̅
= 1. ̅ + ̅
= ̅ + ̅
Exemplo: Seja a expressão na forma PDS:
 =  +  + ̅  +  + ̅ +  + ̅ ̅ +  + ̅ +  + ̅ 
= 2 +  + ̅ ̅ +  + ̅ 32 +  + ̅ +  + 32̅ +  + ̅ ̅ +  + 3
= 2 + ̅ 32 + 32̅ + 3
OBS1: note que é possível repetir um termo mais de uma vez a fim de obter a máxima
simplificação. Isso não altera o resultado da expressão.
OBS2: caso sejam possíveis novas simplificações pela aplicação de teoremas booleanos, as
mesmas devem ser efetuadas.

Ex.: Mostre que a expressão anterior equivale a expressão SDP do exemplo imediatamente
superior.

Você também pode gostar