Derivação de Expressões Booleanas (Expressões booleana pela Tabela Verdade)
Derivação de Expressões Booleanas (Expressões booleana pela Tabela Verdade)
Podemos, ainda, obter expressões booleanas e circuitos lógicos a partir de tabelas verdade. Esse método é fundamental, pois, em muitos casos práticos, o comportamento desejado de um sistema digital é especificado diretamente por uma tabela verdade, que relaciona todas as possíveis combinações de entradas com as saídas correspondentes.
Há basicamente duas maneiras de se definir (ou descrever) uma função Booleana: descrevendo-se todas as situações das variáveis de entrada para as quais a função vale 1 ou, alternativamente, todas as situações em que a função vale 0. O primeiro método é conhecido por soma de produtos (SdP), enquanto que o segundo é chamado produto de somas (PdS). Qualquer função Booleana pode ser descrita por meio de soma de produtos ou por meio de produto de somas. Como as funções Booleanas só podem assumir um dentre dois valores (0 ou 1), basta usar-se um dos dois métodos para se encontrar uma equação para uma função
Soma de Produtos (SdP)
Dada uma função Booleana de
O procedimento consiste em analisar a tabela verdade e identificar todas as linhas em que a saída desejada é igual a 1 (verdadeira). Para cada uma dessas linhas, constrói-se um termo lógico (produto) que representa aquela combinação específica de entradas. Em seguida, todos esses termos são somados (adição lógica, OU) para formar a expressão booleana completa.
- Liste todas as combinações de entrada: Monte a tabela verdade com todas as possíveis combinações das variáveis de entrada.
- Identifique as linhas com saída 1: Observe em quais linhas a saída é igual a 1.
- Monte um termo para cada linha: Para cada linha com saída 1, escreva um termo AND (produto) usando as variáveis de entrada. Se a variável for 1, use-a normalmente; se for 0, use seu complemento (negação).
- Some todos os termos: A expressão booleana final será a soma (OR) de todos os termos obtidos.
Esse método é chamado de forma canônica de soma de produtos (SOP, do inglês Sum of Products).
Exemplo
Considere a seguinte tabela verdade para três variáveis (
A | B | C | S |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 |
0 | 1 | 0 | 1 |
0 | 1 | 1 | 0 |
1 | 0 | 0 | 1 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 0 |
1 | 1 | 1 | 1 |
As linhas em que
- (0, 0, 1):
- (0, 1, 0):
- (1, 0, 0):
- (1, 1, 1):
A expressão booleana será:
A fim de simplificar a notação, o símbolo da operação E pode ser omitido. Desta forma, a equação anterior pode ser reescrita de maneira mais concisa
Aplicação prática
Na prática, esse é o método mais comum para projetar circuitos lógicos a partir de requisitos funcionais, pois permite partir diretamente do comportamento desejado (tabela verdade) para a implementação física (circuito lógico). Após obter a expressão, pode-se simplificá-la usando as leis da álgebra Booleana, tornando o circuito mais eficiente.
Exercício
- Obtenha a expressão que executa a tabela verdade a seguir e desenhe o circuito lógico
A | B | S |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Produto de Somas (PdS)
O método de produto de somas (PdS) é uma alternativa ao soma de produtos para descrever funções booleanas a partir da tabela verdade. Nesse método, a expressão booleana é formada identificando todas as linhas em que a saída desejada é igual a 0 (falsa).
O procedimento consiste em:
- Liste todas as combinações de entrada: Monte a tabela verdade com todas as possíveis combinações das variáveis de entrada.
- Identifique as linhas com saída 0: Observe em quais linhas a saída é igual a 0.
- Monte um termo para cada linha: Para cada linha com saída 0, escreva um termo OR (soma) usando as variáveis de entrada. Se a variável for 0, use-a normalmente; se for 1, use seu complemento (negação).
- Multiplique todos os termos: A expressão booleana final será o produto (AND) de todos os termos obtidos.
Esse método é chamado de forma canônica de produto de somas (POS, do inglês Product of Sums).
Exemplo
Considere a seguinte tabela verdade para três variáveis (
A | B | C | S |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 |
0 | 1 | 0 | 1 |
0 | 1 | 1 | 0 |
1 | 0 | 0 | 1 |
1 | 0 | 1 | 0 |
1 | 1 | 0 | 0 |
1 | 1 | 1 | 1 |
As linhas em que
- (0, 0, 0):
- (0, 1, 1):
- (1, 0, 1):
- (1, 1, 0):
A expressão booleana será:
Note que a ordem de precedência de uma expressão em produto de somas é “primeiro cada soma deve ser avaliada, para só então avaliar-se o produto”. Isto significa que os parêntesis em torno de cada termo soma são obrigatórios! Repare também que os símbolos referentes à operação E (entre os termos soma) podem ser omitido
Aplicação prática
O método PdS é útil em situações onde é mais fácil identificar as condições em que a saída deve ser 0. Assim como no método SdP, a expressão obtida pode ser simplificada usando as leis da álgebra Booleana para otimizar o circuito lógico.
Exercício
- Obtenha a expressão que executa a tabela verdade a seguir e desenhe o circuito lógico
A | B | S |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Ou exclusivo
A porta lógica OU exclusivo (XOR, do inglês exclusive OR) realiza uma operação lógica especial: sua saída é 1 se, e somente se, o número de entradas em nível lógico 1 for ímpar (no caso de duas entradas, se as entradas forem diferentes). Para duas entradas
O símbolo da porta XOR é semelhante ao da porta OR, mas com uma linha adicional na entrada.
A tabela verdade da porta XOR para duas entradas é:
A | B | |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
A expressão booleana para a porta XOR de duas entradas é:
A porta XOR é muito utilizada em circuitos de soma, comparadores e sistemas onde é necessário detectar diferenças entre sinais.
Não OU exclusivo
A porta lógica NÃO OU exclusivo (XNOR, do inglês exclusive NOR) realiza a operação inversa da porta XOR. Sua saída é 1 se, e somente se, o número de entradas em nível lógico 1 for par (no caso de duas entradas, se as entradas forem iguais). Para duas entradas
O símbolo da porta XNOR é semelhante ao da porta XOR, mas com um pequeno círculo na saída, indicando a negação.
A tabela verdade da porta XNOR para duas entradas é:
A | B | |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
A expressão booleana para a porta XNOR de duas entradas é:
A porta XNOR é utilizada em comparadores de igualdade e circuitos onde é necessário detectar se dois sinais são iguais.
Leis Fundamentais e Propriedades da Álgebra Booleana
A álgebra Booleana é regida por um conjunto de leis e propriedades que definem o comportamento das variáveis e operações lógicas. Essas leis são fundamentais para simplificar expressões e projetar circuitos eficientes.
Sejam
Info
se
se
As operações elementares são: OU (adição lógica), E (multiplicação lógica) e complementação (negação). As principais propriedades são:
Adição lógica (OU):
Multiplicação lógica (E):
Complementação:
Comutatividade:
Associatividade:
Distributiva:
Essas leis permitem manipular e simplificar expressões Booleanas, facilitando o projeto de circuitos lógicos mais simples e eficientes.
Simplificação da expressão
Aplicando as propriedades de associatividade e distributiva da álgebra Booleana, é possível simplificar a equação acima. Por exemplo, ao agrupar e reorganizar os termos, podemos identificar fatores comuns e reduzir a expressão, tornando-a mais eficiente para implementação em circuitos lógicos. O uso dessas propriedades é fundamental para minimizar o número de portas lógicas necessárias e otimizar o projeto.
Vamos simplificar a expressão:
Agrupando termos semelhantes e aplicando as propriedades da álgebra Booleana, temos:
Observe que os termos podem ser agrupados em pares que diferem apenas por uma variável negada:
e (ambos têm ) e (ambos têm )
Fatorando
e :Note que:
(XNOR) (XOR)
Portanto, a expressão simplificada é:
Ou seja, a saída