Você está na página 1de 9

Mapa de Karnaugh

Introduo
No captulo anterior vimos toda a lgebra de Boole e tambm como simplificarmos as funes usando seus teoremas e propriedades. Agora estudaremos uma nova metodologia para conseguirmos fazer as mesmas simplificaes ou redues de funes lgicas. Esta nova metodologia foi criada com o intuito de tornar mais simples o nosso trabalho. Veitch e Karnaugh, foram dois estudiosos do sculo passado que tornaram possvel a simplificaes de funes lgicas por simples observao visual da tabela verdade, quando esta est transcrita em mapas especialmente criados para este procedimento.

Endereamento de um Mapa de Karnaugh


O mapa de Karnaugh nada mais que uma tabela verdade escrita de uma forma diferente. Ele composto pelo um nmero de clulas igual ao nmero de linhas da tabela verdade e, portanto, tem 2n clulas, onde n o nmero de variveis que compem a funo. Ento antes de mais nada temos que saber como que se transcreve uma tabela para um mapa de Karnaugh e tambm que saber como que este mapa. Acredito que todos ns saibamos como jogar um jogo chamado Batalha Naval que tem o seguinte aspecto:
A B C D E F 1 2 3 4 5 6

* * * *

* *

Se sabemos jogar Batalha naval, sabemos que a fileira vertical composta por quatro asteriscos tem os seguintes endereos: B2, B3, B4 e B5 Por analogia, as fileiras compostas por trs asteriscos em diagonal e a fileira composta por dois asteriscos na horizontal tem, respectivamente os seguintes endereos: D4, E3 e F2 E6 e F6 e

Se entendemos esta sistemtica de endereamento podemos verificar que num mapa de Karnaugh o processo muito parecido. Observe o exemplo de um Mapa K de quatro variveis:

A C D

00

01 11

10

00 01 11 10

O endereo da clula : A = 1, B = 0, C = 0 e D = 0 O endereo da clula : A = 1, B = 0, C = 1 e D = 0 e, finalmente, o endereo da clula : A = 0, B = 1, C = 0 e D = 1 Observe a maneira particular que colocamos os valores em binrio. Eles no esto na ordem que estamos acostumados a usa-lo e esta justamente a maneira particular que caracteriza o mapa de Karnaugh. Para exemplificarmos o endereamento de um mapa K fica mais fcil e mais claro iniciarmos com um mapa de quatro variveis, mas didaticamente vamos estudar primeiro os mapas de 2 e 3 variveis para ento chegarmos o de 4.

Mapa K de 2 Variveis
Uma mapa de Karnaugh de duas variveis tem o seguinte aspecto e conforme a sistemtica de endereamento vista anteriormente teria a seguinte transcrio da sua respectiva tabela verdade:

Tabela Verdade

Mapa de Karnaugh

A B S 0 0 0 0 1 1 1 0 1 1 1 1
B 0 1 A 0 0 1 1 1 1

Analisando um mapa K detalhadamente podemos identificar regies onde A sempre 0, onde B sempre 0, onde A sempre 1 e onde B sempre 1, conforme ilustrado abaixo:

A=0
B 0 1 A 0 1 B 0 1 A

A=1
0 1

B=0
B 0 1 A 0 1 B 0 1 A

B=1
0 1

Se voltarmos ao primeiro exemplo do mapa de Karnaugh de 2 variveis podemos entender como esta metodologia funciona. Observe que as regies em que a funo tem como resultado o valor 1 so as regies em que A = 1 ou em que B = 1 e isso nos d a simplificao de Karnaugh, ou seja: S=A+B Percebemos, ento que esta a prpria funo OU e j deveramos esperar por isso, pois a tabela verdade a tabela da funo OU.

A B S 0 0 0 0 1 1 1 0 1 1 1 1 S=A+B
Vamos analisar agora o caso da funo E. Temos a sua tabela verdade e a respectiva transcrio para o mapa de Karnaugh:
B 0 1 A 0 0 1 1 1 1

A B S 0 0 0 0 1 0 1 0 0 1 1 1
B 0 1 A 0 0 0 1 0 1

Pelo mapa K observamos que nica clula em que a funo apresenta como sada o valor 1 justamente a intercesso das regies em que A = 1 e B = 1, ento dizemos que S = A B.

Exerccios:
Escrever as funes representadas pelas tabelas verdade abaixo: a) b)

A B S 0 0 1 0 1 1 1 0 1 1 1 0

A B S 0 0 1 0 1 0 1 0 0 1 1 0

c)

A B S 0 0 0 0 1 1 1 0 1 1 1 0

d)

A B S 0 0 1 0 1 0 1 0 0 1 1 1

Mapa de Karnaugh de 3 Variveis


Podemos analisar tambm funes de trs variveis atravs dos mapas K, e para isso basta usarmos dois mapas de duas variveis associados convenientemente. Temos ento duas formas de associ-los que so completamente equivalentes:
B 00 C 0 1 A BCA 10 00 01 11 10 0 1

01

11

A partir deste instante temos que definir alguns parmetros para prosseguirmos os nossos estudos. So eles: 1) Adjacncia Consideraremos duas clulas de um mapa de Karnaugh adjacentes se, e somente se, as variveis que a endeream apresentem apenas uma mudana de valor. Exemplos:

BCA 00 01 11 10

As clulas e so adjacentes pois para A = 0, B = 0 e C = 0 e para , A = 1, B = 0 e C = 0. Percebemos ento que apenas A apresentou mudana em seu valor. As clulas e no so adjacentes pois para A = 0, B = 1 e C = 1 e para , A = 1, B = 1 e C = 0. Percebemos ento que A e C apresentaram mudanas em seus valores.

Exerccios:
Dado mapa de Karnaugh anterior, indicar se as clulas listadas abaixo so adjacentes ou no, justificando a sua resposta: a) e b) e c) e d) e

1) Enlace Enlace o agrupamento que fazemos no mapa K afim de visualizarmos as clulas adjacentes. De cada enlace teremos uma expresso booleana correspondente e estes nos daro o resultado do mapa que a funo simplificada. Os enlaces s podem agrupar um nmero de clulas que seja igual a uma potncia de dois ou seja 1 ( 20 ), 2 ( 21 ), 4 ( 22 ), 8 ( 23 ) etc. Um mapa de Karnaugh de 3 variveis na sua forma horizontal pode ter apenas os seguintes enlaces:

Enlaces de 1 clula
A C 0 1 B 00

01

11

10

Enlaces de 2 clulas
A C 0 1 B 00 A 01 11 10 C 0 1 B 00 A 01 11 10 C 0 1 B 00 01 11 10

Enlaces de 4 clulas
A C 0 1 B 00 A 01 11 10 C 0 1 B 00 01 11 A 10 C 0 1 B 00 01 11 10

Enlace de 8 clulas
A C 0 1 B 00 01 11 10

Podemos concluir ento que cada enlace define uma regio onde as variveis de endereamento apresentam uma propriedade em comum. Portanto para resolvermos um mapa de Karnaugh devemos seguir os seguintes passos: 1) Identificar as clulas cujos valores so 1 2) Fazermos os enlaces permitidos ( observando as adjacncias e o nmero de clulas do enlace ) 3) Deduzirmos a expresso booleana para cada enlace e agruparmos essas expresses atravs da funo OU. Exemplo: Deduzir a funo booleana que representa a tabela verdade abaixo usando o mapa de Karnaugh:

A B C S 0 0 0 0 0 0 1 0 1 0 1 0 1 1 1 1 0 1 1 1
A C __ S = AC + AC + B 0 1

A C 0 1

B 00 1 0

01 1 1

11 1 1

10 0 1

1 0 0 1 0 1 1 1 0 1 1 1

B 00 1 0

01 1 1

11 1 1

10 0 1

Exerccios:
Deduzir as funes booleanas representadas pelas tabelas verdade a seguir: a)

A 0 0 0 0 1 1 1 1

B 0 0 1 1 0 0 1 1

C 0 1 0 1 0 1 0 1

S 1 1 0 0 0 0 1 1

b)

A 0 0 0 0 1 1 1 1

B 0 0 1 1 0 0 1 1

C 0 1 0 1 0 1 0 1

S 0 0 0 1 1 0 1 0

c)

A 0 0 0 0 1 1 1 1

B 0 0 1 1 0 0 1 1

C 0 1 0 1 0 1 0 1

S 1 1 0 1 1 1 0 1

Mapa de Karnaugh de 4 Variveis


Podemos analisar tambm funes de quatro variveis atravs dos mapas K, e para isso basta usarmos dois mapas de trs variveis associados convenientemente.
A C D B 00 01 11 10

00 01 11 10

As regras de adjacncias e de enlaces para o mapa de Karnaugh de 4 variveis continuam sendo as mesmas j que estas regras valem para mapas com qualquer nmero de clulas. Por isso, neste caso no vamos analisar todos os tipos de enlaces possveis, pois podemos correr o risco de criar vcios aos alunos que passariam a procurar esta referncia ao invs de deduzir quais enlaces so vlidos a partir da anlise de cada caso. Para ilustrar o procedimento da resoluo segundo Karnaugh em um mapa de 4 variveis citaremos um exemplo: Dada a tabela verdade abaixo, deduza a funo booleana utilizando o mapa K:

Observaes importantes: Para no cometermos erros no momento de fazermos os enlaces, devemos observar duas regras: 1) Fazer primeiro os enlaces com maior nmero de clulas, pois caso contrrio corremos o risco de fazermos agrupamentos que poderiam ser substitudos por um maior. 2) Verificar se em cada enlace existe pelo menos uma clula que pertena a apenas um enlace, pois corremos o risco de fazermos enlaces redundantes, ou seja, enlaces perfeitamente dispensveis.

A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

S 1 1 1 0 0 1 0 0 1 1 1 0 0 1 0 1

A C D

00 1 1 0 1

01 11 0 1 0 0 0 1 1 0

10 1 1 0 1

00 01 11 10

S = BD + CD + ABD

Obs. O termo BD devido ao grupo formado pelos quatro

cantos.

Exerccios:
Deduzir as funes booleanas representadas pelas tabelas verdade a seguir: a) b) A B C D S c) A B C D S A B C D S
0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 0 0 1 1 0 0 1 0 0 1 0 0 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 0 0 1 1 0 0 1 0 0 1 0 0 1 1 0 1 1 1 1 1 0 1 1 0 0 1 1 0

0 0 0 0

0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0

0 0 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 0 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1

Exerccios de fixao
Fazer os enlaces e deduzir as funes booleanas nos mapas de Karnaugh representados abaixo: a)
A

B 0 1

0 1 0

1 0 1

b)

B 0 1

0 1 0

1 1 0

c)

B 0 1

0 0 1

1 1 0

d)

BCA 00 01 11 10

e)
0 0 1 1 1 1 1 1 1 0

B 00 C 0 1 1 1

f)
01 1 0 11 0 1 10 1 0

BCA 00 01 11 10

0 0 0 1 1

1 1 0 0 1

g)
C

A D

h)
00 0 1 1 1 01 11 0 1 1 1 1 1 0 0 10 1 1 0 0 C

A D

00 0 1 1 0

01 11 1 1 1 1 1 1 1 1

10 1 0 0 1

i)
C

A D

00 1 1 0 1

01 11 1 1 0 1 0 0 1 0

10 1 1 0 1

00 01 11 10

00 01 11 10

00 01 11 10