(valor 2,0 ) Aplique o Método de Minimização Tabular de Quine-McCluskey na lista de mintermo seguir e apresente a expressão simplificada (minimizada).
Passo 1
O enunciado pede: aplicar o Método de Minimização Tabular de Quine–McCluskey à função booleana dada por
Informações relevantes fornecidas (lista de mintermos):
. Vou usar a convenção usual de numeração de mintermos com
como o bit mais significativo e
como o menos significativo.
Passo 2
Primeiro passo prático: escrever cada mintermo em binário com 4 bits
. Isso é necessário porque o método de Quine–McCluskey trabalha com representações binárias e agrupa termos pelo número de uns.
As conversões são:
Explicação curta do porquê: cada mintermo é o número decimal correspondente ao padrão de bits
; por exemplo,
é
porque
.
Passo 3
Agrupo os mintermos pelo número de bits iguais a
(isso facilita encontrar pares que diferem em um só bit):
Grupo 0 (zero uns):
(minterm
).
Grupo 1 (um 1):
(minterm
).
Grupo 2 (dois 1s):
(minterm
),
(minterm
).
Grupo 3 (três 1s):
(minterm
),
(minterm
).
Grupo 4 (quatro 1s):
(minterm
).
Regra usada: só podem ser combinados vetores que pertençam a grupos adjacentes (diferença de 1 no número de uns), pois eles podem diferir em exatamente um bit.
Passo 4
Faço a primeira rodada de combinações: combino pares de grupos adjacentes que diferem em exatamente um bit. Quando combino dois termos que diferem em um bit, coloco um traço ``
’’ nesse bit; o traço significa “não importa” (variável eliminada).
Combinações possíveis e o que representam (entre chaves os mintermos cobertos):
-
Combinar
( ) com ( ) difere só em . Resultado: -
Combinar
( ) com ( ) difere só em . Resultado: -
Combinar
( ) com ( ) difere só em . Resultado: -
Combinar
( ) com ( ) difere só em . Resultado: -
Combinar
( ) com ( ) difere só em . Resultado:
Anotações didáticas:
- Sempre verificamos se há exatamente uma posição com 0/1 diferente; se sim, substituímos por ``
’’. - Cada combinação cobre os mintermos que eram cobertos pelos dois termos originais.
Passo 5
Tento combinar os termos gerados na rodada anterior (segunda rodada). A regra é a mesma: dois termos com traços podem ser combinados se eles diferem em exatamente um bit nas posições que não são já traço e são idênticos nos demais. Ao testar todas as combinações entre:
verifica-se que não existe nenhum par que difira em apenas uma posição além das que já são traço. Portanto não há combinações adicionais — isto significa que todos os termos obtidos na primeira rodada são implicantes primos.
Conclusão: os implicantes primos são:
Passo 6
Montamos a tabela (prime–implicant chart) que mostra quais implicantes primos cobrem quais mintermos. Colunas = mintermos; linhas = implicantes primos.
Cobertura:
Tabela (resumo):
Passo 7
Identificamos os implicantes primos essenciais: um implicante primo é essencial se existe pelo menos um mintermo que ele cobre e que nenhum outro implicante primo cobre.
Verificando coluna a coluna:
- Mintermo
é coberto somente por → é essencial. - Mintermo
é coberto somente por → confirma essencial. - Mintermo
é coberto somente por → é essencial. - Mintermo
é coberto somente por → é essencial. - Mintermo
é coberto somente por → é essencial. - Para os mintermos
e existem múltiplas coberturas, mas como já selecionamos , e , todos os mintermos ficam cobertos: -
é coberto por e (já selecionados), -
é coberto por (já selecionado).
-
Portanto, os implicantes essenciais que formam uma cobertura mínima são:
O implicante
não é necessário, pois todos os mintermos já estão cobertos pelos essenciais.
Passo 8
Traduzo cada implicante primo selecionado para a forma algébrica usando variáveis literais
(lembre: bit
corresponde à variável sem barra; bit
corresponde à variável negada
). A posição dos bits é
.
-
significa . Em expressão: . -
significa . Em expressão: . -
significa . Em expressão: . -
significa . Em expressão: .
Somando os produtos (OR entre implicantes) obtemos a expressão minimizada final: