LISTA DE EXERCCIOS
CIRCUITOS DIGITAIS
NATAL-RN, 2017
Lista de questes feitas
Q1 Q10 Q19
Q2 Q11 Q23
Q3 Q12 Q24
Q4 Q13 Q25
Q5 Q14 Q26
Q6 Q15 Q36
Q7 Q16 Q37
Q8 Q17 Q38
Q9 Q18
Q1. No registrador de carga paralela, quando o load for 0, a sada mantm seu
valor anterior, j quando o load for 1, a sada receber o valor atual da entrada.
Alm disso, quando o clear for 1, a sada ser zero independentemente de
qualquer outro valor. Vale tambm salientar que os valores do load e do clear s
sero passados adiante para o registrador na subida do clock.
Entradas Sadas
CLR CMPLT LOAD S1 S0 Operao
0 0 0 0 0 Manter valor presente
0 0 1 0 1 Carregar entradas
1 X X 1 0 Apresentar 0000
0 1 X 1 1 Apresentar complemento do registro atual
L0 Operao
0 Manter valor presente
1 Salvar
3. Conectando as entradas dos MUXs com os flip-flops e montando
circuito:
4. Criando linhas de mapa de controle:
Entradas Sadas
R S L0 Operao
1 X 0 Manter valor presente
0 1 1 Carregar entradas
L0 = R*S
Q4.
Q7.
Q8.
A temperatura T de 8
bits, que sai do sensor,
entra no somador e
compensada (somada)
de acordo com o valor
desejado, atravs do
acionamento das chaves
a, b e c.
Q9.
Q10.
Raciocnio:
Cada comparador individual (estgio) deve, primeiramente, levar em
considerao a comparao do estgio anterior. Se a sada da comparao do
estgio anterior for out_gte = 1 e out_lte = 1, indicando que o par de bits igual,
ento deve-se comparar os valores de a e b atuais. Caso contrrio, se o estgio
anterior indicar que existe um valor maior que o outro (out_gte = 1 e out_lte = 0,
por exemplo), esta sada da comparao deve se propagar at o final do
comparador, independentemente dos demais bits que estavam esperando para
serem comparados.
Q11.
Q16. Decimal:
a) 011111111
Primeiro bit 0 => positivo. Basta converter normalmente:
011111111 = 255.
b) 111111111
Primeiro bit 1 => negativo. Inverte todos os bits e soma 1, depois converte o valor
obtido e acrescenta o sinal negativo:
111111111 => 000000000 + 1 = 000000001 = -1
c) 100000000
100000000 => 011111111 + 1 = 100000000 = -256
d) 110000000
110000000 => 001111111 + 1 = 010000000 = -128
e) 111111110
111111110 => 000000001 + 1 = 000000010 = -2
Q17. Complemento de 2 de 8 bits:
a) 6
Nmero positivo: basta converter normalmente por divises sucessivas por 2
(agrupando os restos do ltimo para o primeiro) e adicionar um bit 0 na frente
representando o sinal positivo. Neste caso, completa-se com zeros at que se
tenha 8 bits.
6/2 = 3, R = 0 1/2 = 0, R = 1
3/2 = 1, R = 1 6 = 00000110
b) 26
26/2 = 13, R = 0 3/2 = 1, R = 1
13/2 = 6, R = 1 1/2 = 0, R = 1
6/2 = 3, R = 0 26 = 00011010
c) -8
Nmero negativo: converte normalmente utilizando o mesmo procedimento
descrito anteriormente, depois completa-se os bits com 0 at completar os 8 bits
e encontra-se seu complemento de 2, invertendo os bits e somando 1.
8/2 = 4, R = 0 8 = 00001000
4/2 = 2, R = 0 Comp. de 2: 11110111 + 1 = 11111000
2/2 = 1, R = 0 -8 = 11111000
1/2 = 0, R = 1
d) -30
30/2 = 15, R = 0 1/2 = 0, R = 1
15/2 = 7, R = 1 30 = 00011110
7/2 = 3, R = 1 Comp. de 2: 11100001 + 1 = 11100010
3/2 = 1, R = 1 -30 = 11100010
e) -60
60/2 = 30, R = 0 1/2 = 0, R = 1
30/2 = 15, R = 0 60 = 00111100
15/2 = 7, R = 1 Comp. de 2: 11000011 + 1 = 11000100
7/2 = 3, R = 1 -60 = 11000100
3/2 = 1, R = 1
f) -90
90/2 = 45, R = 0 1/2 = 0, R = 1
45/2 = 22, R = 1 90 = 01011010
22/2 = 11, R = 0 Comp. de 2: 10100101 + 1 =
11/2 = 5, R = 1 10100110
5/2 = 2, R = 1 -90 = 10100110
2/2 = 1, R = 0
Q18.
Dividindo o projeto em etapas para facilitar no desenvolvimento:
1. Definir quais entradas e sadas so necessrias ao subtrator completo:
Entradas: a e b os nmeros a serem subtrados (a - b), e wi o valor
emprestado para coluna direita.
Sadas: s o resultado da subtrao e wo o valor que foi emprestado pela
coluna esquerda.
2. Criar tabela verdade afim de descrever o comportamento esperado do
subtrator:
a b wi s wo
0 0 0 0 0
0 0 1 1 1
0 1 0 1 1
0 1 1 0 1
1 0 0 1 0
1 0 1 0 0
1 1 0 0 0
1 1 1 1 1
Q19.
Dividindo o projeto em etapas para facilitar o desenvolvimento:
1. Definir entradas e sadas do sistema:
Entradas: A que representa um nmero binrio com sinal de 8 bits.
Sadas: Q que representa o valor absoluto de A, um nmero binrio sem sinal
de 8 bits.
2. Capturar comportamento do sistema e criar equaes para as sadas:
Quando o bit mais significativo de A for 0, A ser positivo e, portanto, Q = A.
Mas quando o bit mais significativo de A for 1, A ser negativo e, portanto, Q
= complemento de 2 de A.
3. Projetar circuito:
Q23.
Q24.
Q26.
Raciocnio: basta coloca DEMUX 1x6 e,
a partir dos seletores a, b e c escolher
para qual das sadas se deseja mandar
a entrada I. A sada escolhida ter o
deslocador apropriado para realizar a
devida multiplicao.
OBS: cada deslocamento de 1 posio
para esquerda, equivale a uma
multiplicao por 2.
Q36.
Em circuitos digitais, dois critrios importantes so considerados como
avaliadores de qualidade do circuito: atraso (delay) e tamanho (size).
Otimizao: quando se consegue projetar um circuito que realiza a mesma
tarefa de outro, mas que seja melhor em ambos os critrios citados acima ou
pelo menos melhor em um e igual no outro. Por exemplo, um circuito com menos
atrasos de portas lgicas e menos entradas de portas.
Tradeoff: quando se consegue projetar um circuito que realiza a mesma tarefa
de outro, mas que melhore em um dos critrios e piore no outro. Por exemplo,
um circuito com menos entradas de portas, porm, com mais atrasos de portas
lgicas.
Q37.
F(a; b; c) = abc + abc + abc + abc
a) Mtodos algbricos:
F = abc + abc + abc + abc
F = abc + abc + abc + abc + abc + abc
F = ac(b + b) + bc(a + a) + ab(c + c)
F = ab + ac + bc
OBS: repetir um termo na equao booleana no altera a expresso.
b) Mapa K:
F = ab + ac + bc
Q38.
F(a; b; c; d) = abc + abcd + abd
F = abd + bc
OBS: quando o literal estiver faltando no produto, coloca-se 1 no mapa para
todos os valores do literal faltante.