Mapa de Karnaugh - Como fazer, tabela online e exercícios
Mapa de Karnaugh - Como fazer, tabela online e exercícios

Mapa de Karnaugh – Como fazer, tabela online e exercícios Deixe um comentário

Neste post, vamos explorar a técnica do Mapa de Karnaugh, uma ferramenta gráfica poderosa para simplificar funções lógicas e otimizar circuitos digitais. Iniciaremos com uma introdução ao conceito, explicando como transformar uma tabela verdade em um mapa bidimensional e como usar a ordem de código Grey para organizar as variáveis. 

Em seguida, demonstraremos como agrupar os valores no mapa para obter a expressão lógica simplificada. Para praticar e consolidar o aprendizado, apresentaremos uma série de exercícios, desde o básico até o mais avançado, que cobrem diferentes números de variáveis e cenários. 

O que é o Mapa de Karnaugh?

Quando trabalhamos com circuitos lógicos (ou programação com variáveis lógicas), em muitos casos é fácil construir uma tabela onde indicamos o resultado que desejamos para cada combinação das entradas. Esta tabela é chamada de tabela verdade. Uma forma de obter um circuito (ou uma função lógica) que forneça os resultados de uma forma otimizada é usando um Mapa de Karnaugh.

O Mapa de Karnaugh (também conhecido como Mapa de Veitch Karnaugh) é uma técnica gráfica que se vale da nossa capacidade de reconhecimento de padrões. É bem mais simples e menos sujeita a erros que a utilização direta das propriedades da lógica booleana.

Como fazer um Mapa de Karnaugh?

O primeiro passo é converter a tabela verdade em uma tabela de duas dimensões, onde as linhas e colunas representam as combinações das variáveis de entrada e o conteúdo de cada célula o resultado. Para isso agrupamos as variáveis de entrada de forma que o mapa de Karnaugh seja o mais próximo possível de um quadrado:

Como fazer um Mapa de Karnaugh?

Ao colocar as combinações das variáveis em cada linha ou coluna devemos colocá-las em uma ordem onde apenas uma variável muda de uma linha/coluna para outra. Isto é o chamado Código Grey de numeração binária. Por exemplo, para números de 2 bits, o código Grey é 00, 01, 11, 10.

Vamos tomar por exemplo o caso de termos 4 variáveis de entrada (A a D) e a seguinte tabela verdade:

Como fazer um Mapa de Karnaugh?

Vamos agrupar as variáveis duas a duas (AB e CD). O Mapa de Karnaugh fica assim:

variáveis duas a duas (AB e CD)

Como agrupar um Mapa de Karnaugh?

Agora vamos agrupar as células contendo 1, marcando os maiores retângulos possíveis que não contenham 0 e que tenham um número de células que seja potência de 2 (1, 2, 4, 8, etc). Neste agrupamento devemos considerar que a primeira linha é adjacente à última, assim como a primeira e a última coluna. É permitido que os retângulos se sobreponham.

Como agrupar um Mapa de Karnaugh?

Cada um destes retângulos corresponde a um termo mínimo (miniterm) da função lógica. Um miniterm é o E lógico (AND) das entradas (eventualmente invertidas). A função lógica é o OU lógico (OR) dos miniterms.

A construção dos miniterms é feita observando os valores das variáveis de entrada nos retângulos. Se uma variável aparece no retângulo com os dois valores (0 e 1), ela não aparece no miniterm. Se uma variável aparece apenas com 1, ela entra no miniterm normalmente. Se uma variável aparece apenas com 0, ela entra no miniterm invertida.

Aplicando isto ao nosso exemplo (~ indica negação e . indica E lógico):

  • Retângulo amarelo: AB=00/10, CD=00/01. A aparece com 0 e 1, B somente com 0, C somente com 0 e D com 0 e 1. Miniter = ~B.~C
  • Retângulo azul (sobreposto ao amarelo): AB=11/10, CD=01/11. A aparece somente com 1, B com 1 e 0, C com 0 e 1, D com 1. Miniterm = A.D
  • Retângulo vermelho: AB=00/01, CD=10. A aparece somente com 0, B aparece com 0 e 1, C somente 1 e D somente 0. Miniterm = ~A.C.~D

A função lógica fica  ~B.~C + A.D + ~A.C.~D

Mapa de Karnaugh: Tabela online

O processo acima parece muito complicado? Não tem problema, temos uma página que automatiza este processo.

Mapa de Karnaugh

Variáveis

Tabela da Verdade

A B C F(ABC)
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
Karnaugh Map
AB
00 01 11 10
C 0
1

No alto da página do nosso Mapa de Karnaugh Online você seleciona o número de variáveis de entrada (duas, três ou quatro). Clique nas células com os valores de saída da tabela verdade ou do mapa de Karnaugh para alterá-los entre 0 e 1.

A função lógica correspondente à tabela verdade será gerada automaticamente acima da calculadora do Mapa de Karnaugh. Se você mover o cursor do mouse para um dos termos, as células correspondentes na tabela verdade e no mapa de Karnaugh serão destacadas.

Mapa de Karnaugh: Exercícios

A prática com o Mapa de Karnaugh é essencial para dominar essa técnica de simplificação de expressões lógicas. Abaixo, você encontra alguns exercícios que variam de duas a seis variáveis de entrada, desafiando você a aplicar os princípios de agrupamento e simplificação do Mapa de Karnaugh para encontrar a função lógica correta. 

Exercício 1

Vamos começar simples, com apenas duas variáveis. Para deixar o exemplo mais concreto, considere que a variável A é um botão para solicitar ligar o motor de um braço mecânico (1 = ligar) e a variável B é um sensor de segurança que é 1 quanto tem algo na frente do braço e o motor não deve ser ligado. A saída da função é 1 quando o motor deve ser ligado.

Exercício 1

Resposta: A.~B

Exercício 2

Vamos considerar agora três variáveis de entrada.

Exercício 2

Resposta: A.B + B.C

Exercício 3

Agora que você já pegou o jeito, vamos passar para quatro variáveis.

Exercício 3

Resposta: A.C + ~A.~C  (B e D são desnecessários!)

Exercício 4

Este último é para os ninjas… uma tabela verdade com seis variáveis!

Exercício 4

Resposta: ~A.~B’ + ~A.D.~E + ~A.C.D + B.C.D.E.~’F

Observações Adicionais

A técnica pode ser extendida para quando a tabela de verdade contem posições onde o valor da saída não interessa (don’t care). Estas posições costuma ser marcadas no mapa de Karnaugh com ‘x’. Ao marcar os retângulos você pode incluir ou ignorar estas posições, buscando obter o maior retângulo possível.

Se ao invés de marcar os retângulos com valor 1 você marcar os retângulos com valor 0 você vai obter o inverso da função.

Os resultados obtidos estão na forma de uma “soma de produtos” (OU de termos compostos usando E). Eles podem ser convertidos em “produto de somas” (E de termos compostos usando OU). Uma forma de fazer isso é usar o mapa para obter o inverso da função e inverter a função usando as leis de De Morgan:

  • o inverso do E é o OU dos inversos dos termos
  • o inverso do OU é o E dos inversos dos termos

Pegando um exemplo simples com duas variáveis:

Observações Adicionais

Usando o Mapa de Karnaugh obtemos F(A,B) = A.B + ~A.~B. Agrupando os 0s, obtemos a função inversa: ~F(A,B) = ~A.B + A.~B. Invertendo este segundo resultado e aplicando De Morgan:

~(~F(A,B)) = ~(~A.B + A.~B)

F(A,B) = ~(~A.B) . ~(A.~B)

F(A,B) = (A + ~B) . (~A + B)

E então, gostou desta técnica? Pretende usá-la nos seus projetos? Conte para a gente nos comentários!


Se você tiver dúvidas, sugestões ou experiências para compartilhar, fique a vontade para deixar um comentário abaixo. E para não perder nenhum conteúdo como este, não deixe de nos seguir no Instagram.

Faça seu comentário

Acesse sua conta e participe