⚡ álgebra de boole e circuitos lógicos
⚡ álgebra de boole e circuitos lógicos
A Álgebra de Boole, desenvolvida por George Boole no século XIX, é a base matemática para o projeto e análise de circuitos digitais. Ela opera com valores binários (0 e 1, ou Falso e Verdadeiro) e operações lógicas (AND, OR, NOT). Os circuitos lógicos implementam fisicamente essas operações através de portas lógicas, formando a base de todos os computadores modernos.
📜 postulados e operações básicas
A álgebra booleana é definida sobre um conjunto \(B = \{0, 1\}\) com as operações:
- AND (produto lógico, · ): \(0 \cdot 0 = 0,\; 0 \cdot 1 = 0,\; 1 \cdot 0 = 0,\; 1 \cdot 1 = 1\).
- OR (soma lógica, +): \(0 + 0 = 0,\; 0 + 1 = 1,\; 1 + 0 = 1,\; 1 + 1 = 1\).
- NOT (complemento, ¬ ou '): \(\overline{0} = 1,\; \overline{1} = 0\).
Essas operações obedecem a propriedades como comutatividade, associatividade, distributividade, identidade e complemento.
🔌 portas lógicas fundamentais
Os circuitos digitais são construídos com portas lógicas, que implementam as operações booleanas. As principais são:
AND
Saída = 1 só se ambas entradas forem 1.
\(A \cdot B\)
OR
Saída = 1 se pelo menos uma entrada for 1.
\(A + B\)
NOT
Inverte a entrada (1 → 0, 0 → 1).
\(\overline{A}\)
NAND
AND negado: \(\overline{A \cdot B}\).
NOR
OR negado: \(\overline{A + B}\).
XOR
OU exclusivo: \(A \oplus B\).
XNOR
Equivalência: \(\overline{A \oplus B}\).
Todas as portas podem ser combinadas para realizar qualquer função booleana.
🧮 expressões booleanas e circuitos
Uma expressão booleana (ex.: \(S = A \cdot B + \overline{C}\)) pode ser diretamente convertida em um circuito com portas lógicas. Por exemplo, a expressão \(S = (A \land B) \lor \neg C\) corresponde a:
Conecte A e B a uma porta AND; a saída dessa porta e a entrada C (passando por um inversor) vão para uma porta OR. A saída final é S.
O processo inverso (extrair a expressão de um circuito) também é direto.
📊 tabelas-verdade e simplificação
Toda função booleana pode ser especificada por uma tabela-verdade. A partir dela, obtemos expressões em soma de produtos (DNF) ou produto de somas (CNF). Essas expressões podem ser simplificadas usando os postulados da álgebra de Boole ou mapas de Karnaugh.
Exemplo (majoritário de 3 entradas):
| A | B | C | S |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 0 |
| 0 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 |
| 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 |
Expressão mínima (por Karnaugh):
\(S = AB + AC + BC\).
Circuito: três portas AND e uma porta OR de 3 entradas.
🗺️ mapa de Karnaugh (K-map)
O mapa de Karnaugh é um método gráfico para simplificar expressões booleanas de até 6 variáveis. Ele organiza as combinações de entrada em uma grade onde células adjacentes diferem em apenas uma variável, permitindo agrupar termos e eliminar variáveis.
Exemplo para a função majoritária (3 variáveis): O mapa 2x4 (ou 4x2) permite agrupar os 1s em três pares, resultando nos termos \(AB\), \(AC\) e \(BC\).
\(S = AB + AC + BC\)
⚙️ circuitos combinacionais vs. sequenciais
- Circuitos combinacionais: a saída depende apenas das entradas atuais (ex.: somadores, multiplexadores, decodificadores). São implementados com portas lógicas sem realimentação.
- Circuitos sequenciais: a saída depende das entradas atuais e do estado anterior (memória). Incluem flip-flops, registradores e contadores.
A álgebra de Boole é suficiente para descrever circuitos combinacionais; para sequenciais, adicionam-se elementos de memória e realimentação.
💡 aplicações no mundo real
- Projeto de CPUs: unidades lógicas e aritméticas (ULAs), decodificadores de instrução.
- Memória RAM: células de armazenamento baseadas em flip-flops.
- Circuitos de controle: semáforos, elevadores, máquinas de estados.
- FPGAs e CPLDs: dispositivos programáveis que implementam funções booleanas.
- Criptografia: cifras de bloco e funções hash usam operações booleanas.
🔗 leis da álgebra de boole
Leis básicas:
\(A + 0 = A\)
\(A \cdot 1 = A\)
\(A + 1 = 1\)
\(A \cdot 0 = 0\)
\(A + A = A\)
\(A \cdot A = A\)
\(A + \overline{A} = 1\)
\(A \cdot \overline{A} = 0\)
Leis de Morgan:
\(\overline{A + B} = \overline{A} \cdot \overline{B}\)
\(\overline{A \cdot B} = \overline{A} + \overline{B}\)
Dupla negação:
\(\overline{\overline{A}} = A\)
Comentários
Postar um comentário