Ficha 01 · Numeração, portas lógicas, Boole
- Conversões
- Portas
- Tabelas verdade
- Simplificação
Parte I · Numeração
Exercício 1 · Conversões (15 pts)
Converte:
a) 25 decimal → binário b) 11010110 binário → decimal c) 27 decimal → hexadecimal d) AB hex → binário e decimal e) 11111111 binário → hex e decimal
a) 25 = 11001 (16+8+1) b) 11010110 = 128+64+0+16+0+4+2+0 = 214 c) 27 = 1Ah → 1B hex (1·16 + 11 = 27) d) AB = 10101011 binário = 10·16+11 = 171 decimal e) 11111111 = FF hex = 255 decimal (máximo de 8 bits unsigned)
Exercício 2 · Tamanhos (5 pts)
a) Quantos valores diferentes pode representar 1 byte? b) E 2 bytes (1 word)?
a) 1 byte = 8 bits = 2⁸ = 256 valores (0 a 255 unsigned; −128 a +127 signed). b) 2 bytes = 16 bits = 2¹⁶ = 65 536 valores (0 a 65 535 unsigned; −32 768 a +32 767 signed).
Parte II · Portas lógicas
Exercício 3 · Tabelas verdade (15 pts)
Completa a tabela verdade para Y = (A · B) + C:
| A | B | C | A·B | Y |
|---|---|---|---|---|
| 0 | 0 | 0 | ? | ? |
| 0 | 0 | 1 | ? | ? |
| 0 | 1 | 0 | ? | ? |
| 0 | 1 | 1 | ? | ? |
| 1 | 0 | 0 | ? | ? |
| 1 | 1 | 0 | ? | ? |
| 1 | 1 | 1 | ? | ? |
| A | B | C | A·B | Y |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 1 |
| 0 | 1 | 0 | 0 | 0 |
| 0 | 1 | 1 | 0 | 1 |
| 1 | 0 | 0 | 0 | 0 |
| 1 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 1 |
Y = 1 quando A AND B = 1, OU C = 1.
Exercício 4 · Identificar porta (10 pts)
Para cada tabela verdade, identifica a porta lógica:
a) A=0,B=0→0; A=0,B=1→1; A=1,B=0→1; A=1,B=1→0. b) A=0,B=0→1; A=0,B=1→0; A=1,B=0→0; A=1,B=1→0. c) A=0,B=0→0; A=0,B=1→0; A=1,B=0→0; A=1,B=1→1.
a) XOR (saída 1 se entradas diferentes). b) NOR (NOT OR — saída 1 só se ambas 0). c) AND (saída 1 só se ambas 1).
Parte III · Boole
Exercício 5 · Simplificação (15 pts)
Simplifica usando álgebra de Boole:
a) Y = A + A·B b) Y = A · (A + B) c) Y = A·B + A·/B d) Y = (A + B) · (A + /B)
a) Absorção: A + A·B = A · (1 + B) = A · 1 = A.
b) Absorção: A · (A + B) = A·A + A·B = A + A·B = A.
c) Distributiva + complemento: A·B + A·/B = A·(B + /B) = A · 1 = A.
d) Distributiva: (A + B)·(A + /B) = A·A + A·/B + A·B + B·/B = A + A·(B+/B) + 0 = A + A = A.
Todas simplificam para apenas A → 0 portas necessárias!
Exercício 6 · De Morgan (10 pts)
Aplica De Morgan a:
a) /(A · B · C) b) /(A + /B)
a) /(A · B · C) = /A + /B + /C
b) /(A + /B) = /A · //B = /A · B
Útil para converter em portas universais (só NAND ou só NOR).
Parte IV · Aplicação
Exercício 7 · Implementar (10 pts)
Tens só portas NAND disponíveis (chip 7400, 4× NAND). Como implementas:
a) NOT b) AND c) OR
a) NOT: ligar as 2 entradas do NAND juntas. - NAND(A,A) = /(A·A) = /A.
b) AND: NAND seguido de NOT (= 2× NAND). - AND(A,B) = NOT(NAND(A,B)) = NAND(NAND(A,B), NAND(A,B)).
c) OR: aplicar NOT às entradas + NAND. - OR(A,B) = NAND(/A, /B) = NAND(NAND(A,A), NAND(B,B)). - Por De Morgan: NAND(/A, /B) = /(/A · /B) = A + B ✓.
Com 1 chip 7400 (4 NANDs) consegue-se implementar qualquer função simples.
Parte V · Cenário
Exercício 8 · Circuito real (10 pts)
Projecta um circuito lógico (descreve em palavras) que ligue uma luz quando: - Botão A está premido E - O sensor de presença B detecta movimento - MAS desligue se o interruptor de segurança C estiver activo (= override).
Expressão Y = ?
Expressão:
Y = A · B · /C
Significado: - A = 1 (botão premido) - B = 1 (movimento detectado) - C = 1 (interruptor segurança activo) → /C = 0 → Y = 0 (luz desliga).
Implementação com chips: - 1 chip 7404 (NOT) para inverter C → /C. - 1 chip 7408 (AND) com 3 entradas A, B, /C.
OU mais económico: - 1 chip 7411 (3× AND de 3 entradas) — basta 1 das 3 portas. - 1 inversor (parte do 7404).
Resposta funcional: Y = A · B · /C.
Exercício 9 · Microcontrolador vs discreto (10 pts)
Quando preferes microcontrolador (Arduino) vs lógica digital discreta?
Microcontrolador: - Quando há mais de 3-4 entradas/saídas ou lógica complexa. - Quando o comportamento pode mudar (configuração, modos). - Quando precisa de tempo (delays, temporizadores). - Quando precisa interface (LCD, botões, USB). - Quando precisa comunicação (WiFi, Bluetooth, RS485). - Para protótipos e iterações rápidas. - Para produtos em pequenas séries.
Lógica discreta (7400, 4000 series): - Quando velocidade > 100 MHz (microcontroladores ficam atrás). - Aplicações ultra-simples (1 porta para activar relé com 2 sensores). - Sistemas de segurança certificados (lógica mais auditável que software). - Aplicações onde não pode haver falha de software (lógica fixa). - Aprendizagem — entender o que faz o microcontrolador internamente.
Hoje em dia: 95% das aplicações usam microcontrolador. Lógica discreta sobrevive em nichos.
Parte VI · Conceitos
Exercício 10 · Combinacional vs sequencial (5 pts)
Para cada componente, indica se é combinacional ou sequencial:
a) Adicionador binário. b) Flip-flop D. c) Multiplexer 4-para-1. d) Contador 4 bits. e) Descodificador BCD para 7 segmentos.
a) Combinacional — saída depende só das entradas (A, B). b) Sequencial — saída depende de D atual + estado anterior (memória). c) Combinacional — saída só depende das entradas + selector. d) Sequencial — conta no tempo (memória interna). e) Combinacional — para cada combinação BCD há saída fixa.