Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Álgebra booleana Programação Variáveis booleanas I = idade > 18 P = peso < 100 Equação IF = I + (I.P) ( idade > 18 || (idade > 18 && peso < 100) ) IF = I.1 + I.P (AND: X.1 = X) IF = I.(1 + P) (Distributividade) IF = I.(1) (OR: X + 1 = 1) IF = I (AND: X.1 = X) if ( idade > 18 || (idade > 18 && peso < 100) ) printf(“...”); True (1) or False (0) Álgebra booleana Programação if ( idade > 18 || (idade > 18 && peso < 100) ) printf(“...”); if ( idade > 18 ) printf(“...”); Equivalentes Álgebra booleana Programação Variáveis booleanas D0 = (digito == 0) (digito != 0) ↔ !(digito == 0) !D0 = (digito != 0) T = tempo > 100 Equação IF = D0 + (!D0.T) ( digito == 0 || (digito != 0 && tempo > 100) ) IF = (D0 + !D0).(D0 + T) (distributividade: X + Y.Z = (X+Y).(X+Z) ) IF = (1).(D0 + T) (OR: X + !X = 1) IF = D0 + T (AND: X.1 = X) if ( digito == 0 || (digito != 0 && tempo > 100) ) printf(“fim”); True (1) or False (0) Álgebra booleana Programação if ( digito == 0 || (digito != 0 && tempo > 100) ) printf(“fim”); if (digito == 0 || tempo > 100) ) printf(“fim”); Equivalentes Álgebra booleana Derivação de equações booleanas Até agora Obtenção de tabelas verdade a partir de equações booleanas Obtenção de circuitos lógicos a partir de equações booleanas e vice-versa A partir da tabela verdade é possível obter a equação booleana que ela define através de dois métodos Soma de produtos Exemplo: F = A.B + !A.C + B.!C.D Produto de somas Exemplo: F = (X + Y).(!X + Y + Z).(!Y + Z) Qualquer função booleana pode ser descrita por meio de soma de produtos ou produto de somas Álgebra booleana Derivação de equações booleanas Soma de produtos Para cada linha da tabela verdade onde a saída é 1, cria-se um termo produto (AND entre todas as variáveis de entrada) Em cada termo produto as variáveis de entrada iguais a 0 aparecem negadas e aquelas iguais a 1 aparecem não negadas Em seguida todos os temos obtidos são somados (OR) Exemplo A B C F 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 Equação boolena: F = !A.B.!C + !A.B.C + A.!B.C + A.B.!C → !A.B.!C → !A.B.C → A.!B.C → A.B.!C Álgebra booleana Derivação de equações booleanas Produto de somas Para cada linha da tabela verdade onde a saída é 0, cria-se um termo soma (OR de todas variáveis de entrada) Em cada termo soma as variáveis de entrada iguais a 1 aparecem negadas e aquelas iguais a 0 aparecem não negadas Em seguida todos os temos são multiplicados (AND) Exemplo A B C F 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 Equação booleana: F = (A+B+C).(A+B+!C).(!A+B+C).(!A+!B+!C) → A+B+C → A+B+!C → !A+B+C → !A+!B+!C Álgebra booleana Derivação de equações booleanas Derivar as expressões por soma de produtos e produto de somas A B C F 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 1 A B F 0 0 0 0 1 1 1 0 1 1 1 0 Soma de produtos Saídas = 1 Variáveis = 0 aparecem negadas na expressão Produto de somas Saídas = 0 Variáveis = 1 aparecem negadas na expressão Álgebra booleana Derivação de equações booleanas Derivar as expressões por soma de produtos e produto de somas A B F 0 0 0 0 1 1 1 0 1 1 1 0 → !A . B → A . !B → A + B → !A + !B F = (A + B).(!A + !B) F = !A.B + A.!B Equações equivalentes F = (A + B).(!A + !B) F = (A + B).!A + (A + B).!B (Distributividade) F = !A.(A + B) + !B.(A + B) (Comutatividade) F = !A.A + !A.B + !B.A + !B.B (Distributividade) F = 0 + !A.B + !B.A + 0 (AND: X . !X = 0) F = !A.B + !B.A (OR: X + 0 = X) F = !A.B + A.!B (Comutatividade) Álgebra booleana Derivação de equações booleanas Derivar as expressões por soma de produtos e produto de somas A B F 0 0 0 0 1 1 1 0 1 1 1 0 → !A . B → A . !B → A + B → !A + !B F = (A + B).(!A + !B) F = !A.B + A.!B Equações equivalentes F = !A.B + A.!B F = (!A .B + A ).(!A.B + !B) (Distributividade) F = (A + !A.B). (!B + !A.B) (Comutatividade) F = (A + !A).(A + B).(!B + !A).(!B + B) (Distributividade) F = (1).(A + B).(!B + !A).(1) (OR: X + !X = 1) F = (A + B).(!B + !A) (AND: X .1 = X) F = (A + B).(A + !B) (Comutatividade) Álgebra booleana Derivação de equações booleanas Derivar as expressões por soma de produtos e produto de somas A B C F 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 1 → !A . !B . !C → !A . !B . C → !A . B . !C → !A . B . C → A . B . !C → A . B . C F = !A.!B.!C + !A.!B.C + !A.B.!C + !A.B.C + A.B.!C + A.B.C → !A + B + C → !A + B + !C F = (!A + B + C).(!A + B + !C) Equações equivalentes Álgebra booleana Derivação de equações booleanas Derivar as expressões por soma de produtos e produto de somas A B C F 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 1 → !A . !B . !C → !A . !B . C → !A . B . !C → !A . B . C → A . B . !C → A . B . C Visto que as equações obtidas pelos dois métodos são equivalentes equivalentes, dependendo da quantidade de 1s e 0s na coluna de saída, pode-se optar por um ou outro a fim de obter uma equação menor Poucos 1s: soma de produto Poucos 0s: produto de somas → !A + B + C → !A + B + !C Álgebra booleana Projeto de circuitos Em geral, os problemas de projeto são apresentados através de uma descrição verbal A fim de criar um circuito para resolver um determinado problema, o primeiro passo é traduzir a descrição verbal para uma tabela verdade A tabela verdade permite que o projetista examine todas a combinações de entradas e as saídas correspondentes Circuito IN0 IN1 INn OUT0 OUT1 OUTm ... ... Álgebra booleana Projeto de circuitos Baseado em tabela-verdade A tabela verdade é usada para descrever o comportamento do circuito Tabela verdade Equação booleana Especificação Circuito lógico Soma de produtos ou produto de somas Álgebra booleana Projeto de circuitos Igualdade de 2 números de 2 bits A: A1 A0 B: B1 B0 Igual ← 1 quando A = B, senão 0 = Iguais A B 2 2 Álgebra booleana Projeto de circuitos Igualdade de 2 números de 2 bits A1 A0 B1 B0 Iguais 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 Álgebra booleana Projeto de circuitos Igualdade de 2 números de 2 bits A1 A0 B1 B0 Iguais 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 → !A1.!A0.!B1.!B0 → !A1.A0.!B1.B0 Iguais = !A1.!A0.!B1.!B0 + !A1.A0.!B1.B0 + A1.!A0.B1.!B0 + A1.A0.B1.B0 → A1.!A0.B1.!B0 → A1.A0.B1.B0 Álgebra booleana Projeto de circuitos Igualdade de 2 números de 2 bits Iguais = !A1.!A0.!B1.!B0 + !A1.A0.!B1.B0 + A1.!A0.B1.!B0 + A1.A0.B1.B0 Álgebra booleana Projeto de circuitos Igualdade de 2 números de 2 bits Logisim Álgebra booleana Projeto de circuitos Detector de número de 0s par em um número de 4 bits A: A3 A2 A1 A0 Par0 ← 1 quando A tiver um número par de zeros #0s par Par0 A 4 Álgebra booleana Projeto de circuitos Detector de número de 0s par em um número de 4 bits A3 A2 A1 A0 Par0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 Álgebra booleana Projeto de circuitos Detector de número de 0s par em um número de 4 bits A3 A2 A1 A0 Par0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 1 0 1 0 0 0 0 1 0 1 1 0 1 1 0 1 0 1 1 1 0 1 0 0 0 0 1 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 1 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 → !A3.!A2.!A1.!A0 → !A3.!A2.A1.A0 → !A3.A2.!A1.A0 → !A3.A2.A1.!A0 → A3.!A2.!A1.A0 → A3.!A2.A1.!A0 → A3.A2.!A1.!A0 Par0 = !A3.!A2.!A1.!A0 + !A3.!A2.A1.A0 + !A3.A2.!A1.A0 + !A3.A2.A1.!A0 + A3.!A2.!A1.A0 + A3.!A2.A1.!A0 + A3.A2.!A1.!A0 + A3.A2.A1.A0 → A3.A2.A1.A0 Álgebra booleana Projeto de circuitos Detector de número de 0s par em um número de 4 bits Par0 = !A3.!A2.!A1.!A0 + !A3.!A2.A1.A0 + !A3.A2.!A1.A0 + !A3.A2.A1.!A0 + A3.!A2.!A1.A0 + A3.!A2.A1.!A0 + A3.A2.!A1.!A0 + A3.A2.A1.A0 Álgebra booleana Projeto de circuitos Detector de número de 0s par em um número de 4 bits Logisim Álgebra booleana Projeto de circuitos Baseado em tabela-verdade Adição da simplificação ao fluxo de projeto Tabela verdade Equação booleana Especificação Circuito lógico Simplificação Álgebra booleana Projeto de circuitos Detector de número signed (complemento de 2) ≥ 5 A: A3 A2 A1 A0 A é um número binário em complemento de 2 MaiorIgual ← 1 quando A ≥ 5 ≥ 5 MaiorIgual A 4 Álgebra booleana Projeto de circuitos Detecção de maioria O sistema tem 4 entradas (v1, v2, v3, v4) Maioria ← 1 quando a maioria das entradas é igual a 1 Maioria v1 v2 v3 v4
Compartilhar