Exercício 1: Elabore a tabela-verdade para um meio somador, considerando as entradas A e B e as saídas S O M A e C A R R Y. Com base na tabela-verdade, projete um circuito lógico que implemente o funcionamento do meio somador.
Passo 1
O enunciado pede duas coisas claras:
Construir a tabela-verdade de um meio somador (half-adder) com entradas \,A e \,B e saídas \,\text{SOMA} e \text{CARRY}.
Projetar um circuito lógico que implemente esse comportamento.
Informações relevantes e pressupostos (tudo que o enunciado dá ou que é óbvio neste contexto):
As entradas \,A e \,B são sinais binários que podem valer apenas \,0 ou \,1.
O meio somador soma apenas essas duas entradas (não há bit de transporte de entrada).
A saída \text{SOMA} é o bit de menor peso do resultado da soma binária de \,A e \,B.
A saída \text{CARRY} é o bit de transporte (carry) gerado pela soma de \,A e \,B.
Passo 2
Vamos construir a tabela-verdade. Para duas entradas binárias existem 2^2=4 combinações possíveis. Vou listar todas e determinar a \text{SOMA} e o \text{CARRY} pensando na adição binária simples (0+0=0, 0+1=1, 1+0=1, 1+1=10 — aqui o resultado "10" tem soma 0 e carry 1).
(A,B)=(1,1) → 1+1=10 em binário → soma 0, carry 1.
Passo 3
A partir da tabela-verdade vamos escrever as expressões booleanas. Regra prática: faça soma das minterms (linhas onde saída = 1) ou reconheça padrões conhecidos.
Para \text{SOMA}: as linhas com saída \,1 são (A,B)=(0,1) e (1,0). Em forma de soma de produtos isso dá
\text{SOMA} = \overline{A}B + A\overline{B}.
Aqui \overline{A} significa NOT A, o símbolo + é OR, e a justaposição (ou \cdot) indica AND.
Para \text{CARRY}: a única linha com saída \,1 é (A,B)=(1,1). Logo
\text{CARRY} = A B.
Passo 4
Uma observação importante e útil na prática: a função
\text{SOMA} = \overline{A}B + A\overline{B}
é exatamente a definição booleana do operador XOR (exclusive OR). Em símbolo:
\text{SOMA} = A \oplus B.
O XOR é 1 quando exatamente uma das entradas é 1 (e não ambas).
Resumo das funções finais:
\text{SOMA} = A \oplus B = \overline{A}B + A\overline{B}, \qquad \text{CARRY} = A B.
Passo 5
Projeto de circuito - versão direta usando portas padrão:
Usar uma porta XOR para gerar \text{SOMA}: ligar \,A e \,B à entrada da porta XOR; a saída da XOR é \text{SOMA}.
Usar uma porta AND para gerar \text{CARRY}: ligar \,A e \,B à entrada da porta AND; a saída é \text{CARRY}.
Em palavras (conexões):
Entrada \,A → entra em XOR e em AND.
Entrada \,B → entra em XOR e em AND.
Saída da XOR = \text{SOMA}.
Saída da AND = \text{CARRY}.
Essa é a implementação clássica e a mais simples conceitualmente.
Passo 6
Projeto de circuito - implementação com portas básicas \text{NOT}, \text{AND} e \text{OR} (caso não se disponha de uma porta XOR pronta). Vou mostrar passo a passo como montar a expressão \text{SOMA}=\overline{A}B + A\overline{B}:
Gerar \overline{A} com uma porta NOT aplicada em \,A.
Gerar \overline{B} com uma porta NOT aplicada em \,B.
Gerar X = A\overline{B} com uma porta AND recebendo A e \overline{B}.
Gerar Y = \overline{A}B com uma porta AND recebendo \overline{A} e B.
Gerar \text{SOMA} com uma porta OR que recebe X e Y: \text{SOMA}=X+Y.
Paralelamente:
Gerar \text{CARRY} com uma porta AND simples que recebe A e B.
Conexões resumidas:
\,A → NOT → \overline{A}.
\,B → NOT → \overline{B}.
(A, \overline{B}) → AND → termo A\overline{B}.
(\overline{A}, B) → AND → termo \overline{A}B.
(A\overline{B},\; \overline{A}B) → OR → \text{SOMA}.
(A,B) → AND → \text{CARRY}.
Passo 7
Como checar rapidamente (testando algumas entradas):
Se (A,B)=(1,1): \text{SOMA}=A\oplus B=1\oplus1=0, \text{CARRY}=1\cdot1=1. Confere com a tabela.
Se (A,B)=(0,1): \text{SOMA}=0\oplus1=1, \text{CARRY}=0\cdot1=0. Confere.
Dica final de estudo: memorize que o meio somador tem SOMA = XOR e CARRY = AND. Na prova, a partir da tabela-verdade derive diretamente as expressões (como fiz aqui) e desenhe o circuito com as portas correspondentes — isso é rápido e seguro.
Funções booleanas/circuito: \text{SOMA} = A \oplus B = \overline{A}B + A\overline{B} \text{CARRY} = A B
Implementação sugerida:
Versão simples: \text{SOMA} por uma porta XOR recebendo A,B; \text{CARRY} por uma porta AND recebendo A,B.
Versão com portas básicas: gerar \overline{A},\overline{B} (NOT), calcular A\overline{B} e \overline{A}B (2 ANDs) e ORar os dois termos para obter \text{SOMA}; usar um AND direto para \text{CARRY}.