Você está na página 1de 9

Tecnologia dos Computadores Prof.

Anibal Alberto Vilcapoma Ignacio

MODULO -I. ALGEBRA BOOLEANA Minimizao de Funes


Os circuitos digitais de computadores so projetados e contruidos baseado na algebra Boolena. O matemtico ingles George Boole propos os principios bsicos em 1854. Em 1938, Claude Shannon sugeriu que a lgebra booleana poderia ser usada para solucionar para solucionar problemas relativos ao projeto de circuitos de comutao de rels. Estas sugerencias foram usadas n anlise e projeto de circuitos eletroncos digitais. Na Anlise constitui uma forma economica de descrever a funao de um circuito digital e no projeto a lgebra booleana pode ser usada para desenvolver uma implementao simplificada de uma funao. A gebra booleana faz uso de vriveis e constantes formando um conjunto discreto e finito. Os valores das variveis e constantes unicamente podem asumir dois valores: sim/no, verdade/falso, 1/0. Operadores do algebra Booleana O trs principais operadores da lgebra booleana so os operadores NOT, AND e
OR.

O operador unrio NOT representado como . O resultado desta operao sobre uma varivel a inverso ou negao do valor da varivel. Isto , se a A = 1 ento = 0 e vice-versa. Seu simbolo a tabela verdade mostrado na figura 1. A tabela verdade a descrio dos possiveis valores de entrada junatamente com cada das saidas possiveis.

A 0 1 1 0

Figura 1- Operador NOT: simbolo e Tabela verdade O operador AND representado pelo smbolo , como em A B. O resultado da aplicao deste operador sobre variveis boolenas igual a 1 somente se todas as

variveis forem iguais a 1. Caso contrrio, o resultado 0. Esta operao conhecida como produto lgico. Seu simbolo a tabela verdade mostrado na figura 2.

A 0 0 1 1 Figura 2 Operador AND: simbolo e Tabela Verdade

B A.B 0 0 1 0 0 0 1 1

O operador OR representado pelo smbolo + , como em A + B. O resultado da aplicao deste operador sobre variveis boolenas igual a 1 se pelo menos uma das variveis for igual a 1. Caso contrrio, o resultado 0. Esta operao conhecida como soma lgica. A 0 0 1 1 Figura 3 Operador OR: simbolo e Tabela Verdade Alem destas operaes bsicas podemos encontrar outros operaes que so resultados destas operaes bsicas. Uma destas operaes a operao XOR, onde unicamente para valores de entradas iguais tem se o resultado como 0. Como pode ser visto na figura 4. A B XOR 0 0 0 0 1 1 1 0 1 1 1 0 Figura 4 Operador XOR: simbolo e Tabela Verdade Existem vrias leis descritas pela lgebra de Boole que so teis no tratamento das equaes lgicas, como por exemplo: Lei da identidade: A+0=A e A 1 = A; B A+B 0 0 1 1 0 1 1 1

Lei do zero e do um: A+1=1 e A 0 = 0; Lei da inverso: A+=1 e A = 0; Lei da comutatividade: A+B=B+A e A B = B A; Lei da associatividade: A + (B + C) = (A + B) + C e A (B C) = (A B) C; Lei da distributividade: A (B + C) = (A B) + (A C) e A + (B C) = (A + B) (A+ C). Alm dessas leis existem dois teoremas conhecidos como Teoremas de De Morgan, cuja formulao dada por: A+B=A B e AB = A+ B Qualquer conjunto de funes lgicas pode ser escrito como uma srie de equaes com uma sada do lado esquerdo de cada equao e com uma frmula lgica direita, relacionando as variveis da funo por meio dos trs operadores mencionados, NOT, AND e OR. Avaliao de Funes Booleanas Uma funo booleana uma expresso formada por sinais de entrada (chamadas variveis de entrada) ligados por conectivas lgicas, produzindo com resultado um nico "sinal de sada". Exemplo: S = A+B.C+ (A+D) A varivel S uma varivel de "sada" e as variveis A,B,C e D designam-se por variveis de "entrada". Cada valor de sada determinado univocamente a partir dos valores lgicos das variveis de entrada. A avaliao de uma funao booleana substituir variveis de entrada por 0 ou 1. Exemplo 1: F (A,B)=A+B

4 combinaes de valores de A,B uma linha para cada combinao A 0 0 1 1 B 0 1 0 1 F(A,B) 0 1 1 1

Exemplo 2: DeMorgan X 0 0 1 1 Y 0 1 0 1 X+Y 0 1 1 1 1 0 0 0

X +Y = X .Y

X +Y

X 0 0 1 1

Y 0 1 0 1

X. Y

1 1 0 0

1 0 1 0

1 0 0 0

As 2 tabelas-verdade so idnticas, portanto a igualdade das funes verdadeira Funes Booleanas e Circuitos Logicos. Circuito Lgico Os circuitos lgicos so implementaes de funes booleanas. Quando se deseja construir um circuito lgico relativamente simples, faz-se uso de um circuito integrado. Na figura 5 pode-se ver uma imagem de um Circuito Integrado.

Figura 5- Circuito Integrado Portas Logicas Portas lgicas so dispositivos que podem operar um ou mais sinais lgicos de entrada para produzir uma e somente uma sada, a qual dependente da funo implementada no circuito.

Figura 6- Portas Logicas

Onde x1,x2,...,xn podem tomar os valores 0 ou 1 . Um computador constituido por uma infinidade de circuitos lgicos, que executam as seguintes funes bsicas: a. realizam operaes matemticas b. controlam o fluxo dos sinais c. armazenam dados Naturalmente, a cada operao lgica estudada na lgebra de Boole est associada a respectiva porta lgica. Atraves de uma funo booleanas pode-se construir um circuito logico. Cada expreso que soma dentro de uma funo logica chamada de termo e cada componente que multiplica chamado de literal. Cada termo uma porta e cada literal uma entrada para uma porta. Podem tambem ser considerado como portas adicionais os inversores na entrada. Exemplo 3. Considere a seguinte funcao Boolena e contrua o circuito logico corespondente .
F ( X ,Y , Z ) = X .Y .Z + X .Y .Z + X .Z

Termo

Literais

O Circuito logico corresponde a 3 termos e 8 literais. O que origina 6, 3 portas de 3 entradas, 1 porta de 2 entradas e 2 portas de uma entrada. Como pode ser visto na Figura 7

Figura 7 Circuito logico Manipulao Algbrica com mtodo de simplificao. Uma forma de simplificar as funes booleanas atraves do uso de aximoss e teoremass. A reduo do nmeros de termos e/ou literais deve resultar num circuito com menos portas. Exemplo 4. Considerando o exemplo 3, pode ser simplificada a funo booleana atraves do uso de suas propriedades.
F ( X ,Y , Z ) = X .Y .Z + X .Y .Z + X .Z

Usando a lei distributiva , tem-se


F ( X ,Y , Z ) = X .Y ( Z + Z ) + X .Z

Usando a lei da inverso chamada tambem a propriedade do complemento temos:


F ( X ,Y , Z ) = X .Y ( 1 ) + X .Z F ( X ,Y , Z ) = X .Y + X .Z

Esta fune tem 2 termos e 4 literais, o que origina um circuito logico com 4 portas , 3 portas de 2 entradas e uma porta de 1 entrada. Como pode ser visto na figura 8

Figura 8- circuito simplificado

Mintermos e Maxtermos O mtodo para definir uma funo booleana atravs de uma tabela verdade a expreso algebrica da funo F igual a soma dos termos-produtos para os quais a saida igual 1. Cada Mintermo igual ao termo produto no qual cada variavel aparece exatamente 1 vez complementada ( Se o bit da tabela igual 0) ou no (se bit da tabela igual 1). A tabela verdade da funo com n variaveis tem 2n Mintermos. Uma forma de representar a funo booleana dada pela tabela verdade igual a soma logica dos Mintermos que produzem 1 na funo. Exemplo 5. Representar a funo booleana da seguinte Tabela verdade. X 0 0 0 0 1 1 1 1 Y 0 0 1 1 0 0 1 1 Z 0 1 0 1 0 1 0 1 F 1 0 1 0 0 1 0 1 MinTermos
X . .Z Y X . .Z Y

X . .Z Y X . .Z Y

X .Y .Z

A funo booleana F = X .Y .Z + X .Y .Z + X .Y .Z + X .Y .Z + X .Y .Z Os Maxtermos o termo-soma no qual cada variavel aparece no qual cada variavel aparece exatamente 1 vez complementada (se o bit da tabela igual a 1 ) ou no (se bit da tabela 0)

Exemplo 6. Representar a funo booleana da seguinte Tabela verdade. X 0 0 0 0 1 1 1 1 Y 0 0 1 1 0 0 1 1 Z 0 1 0 1 0 1 0 1 F 1 0 1 0 0 1 0 1


F

MaxTermos
X +Y + Z X X X X +Y + Z +Y + Z +Y + Z +Y + Z

0 1 0 1 1 0 1 0

A funo booleana
F = ( X +Y + Z ).( X +Y + Z ).( X +Y + Z ).( X +Y + Z ).( X +Y + Z ).( X +Y + Z )

Exemplo 7. Representar Tabela verdade, a funo booleana e o circuito logico do seguinte problema. Imaginemos um sistema de segurana de uma loja num centro comercial. H um sensor de contacto que indica que a porta est fechada. Existe outro sensor infravermelho que, ligado, indica que no h pessoas ou coisas a moverem-se no interior da loja. H, tambm, um alarme que accionado quando um dos dois sensores desligado. Isto , basta um nico sensor ser desactivado para soar o alarme. Denominando cada sensor pelos smbolos A e B: A = "sensor de contacto" , {1: porta fechada, 0:porta aberta} B = "sensor infravermelho", {1:No h pessoas,0:Existe pessoas} Temos: S=f(A,B), em que f a funo alarme. Sugerimos ento que tentes completar a tabela de verdade da funo S: A 0 0 1 1 B 0 1 0 1 S 1 1 1 0

A funo booleana seria:

F = A.B + A.B + A.B

O Circuito logico :
A B