0% acharam este documento útil (0 voto)
61 visualizações144 páginas

Manual - Completo - Sistemas Digitais - (11a - 12a)

O documento é um manual sobre sistemas digitais, abordando a diferença entre sistemas analógicos e digitais, suas características, componentes e exemplos práticos. Ele também discute sistemas de numeração, incluindo decimal, binário, octal e hexadecimal, além de métodos de conversão entre esses sistemas. O objetivo é fornecer uma compreensão profunda do funcionamento e aplicação dos sistemas digitais.

Enviado por

akiala320
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
61 visualizações144 páginas

Manual - Completo - Sistemas Digitais - (11a - 12a)

O documento é um manual sobre sistemas digitais, abordando a diferença entre sistemas analógicos e digitais, suas características, componentes e exemplos práticos. Ele também discute sistemas de numeração, incluindo decimal, binário, octal e hexadecimal, além de métodos de conversão entre esses sistemas. O objetivo é fornecer uma compreensão profunda do funcionamento e aplicação dos sistemas digitais.

Enviado por

akiala320
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

INSTITUTO MÉDIO INDUSTRIAL SIMIONE MUCUNE

ÁREA DE FORMAÇÃO: ELECTRICIDADE


CURSOS: ELECTRÓNICA E TELECOMUNICAÇÕES & ELECTRÓNICA E
AUTOMAÇÃO

MANUAL DE SISTEMAS
DIGITAIS

2023
17
Capítulo I – Sistemas Analógicos versus Sistemas Digitais

Introdução

Os circuitos electrónicos podem ser divididos em duas grandes categorias: digitais e analógicos.
A electrónica digital envolve grandezas com valores discretos e a electrónica analógica envolve
grandezas com valores contínuos.

Hoje em dia, o termo digital tornou-se parte do nosso vocabulário diário devido ao modo intenso
pelo qual os circuitos e as técnicas digitais passaram a ser amplamente utilizados em quase todas
as áreas: computadores, automação, robôs, tecnologia e ciência médica, transportes,
telecomunicações, exploração espacial e assim por diante. Nesta cadeira de Sistemas Digitais,
estás a ponto de iniciar uma fascinante viagem educacional na qual os princípios, os conceitos e
as operações fundamentais que são comuns nos sistemas digitais, desde uma simples chave
liga/desliga até ao mais complexo computador.

O objectivo da cadeira é dotá-lo de um profundo conhecimento do funcionamento de todos os


sistemas digitais e torná-lo capaz de aplicar esses conhecimentos na análise e manutenção de
qualquer sistema digital.

Noções básicas

Um Componente é cada uma das partes que constituem um dispositivo. Os componentes mais
comuns são: a resistência, o capacitor, a bobine, etc.

Um dispositivo é um circuito constituído por vários componentes que realiza uma operação ou
concretiza uma tarefa electrónica. São exemplos de dispositivos digitais: um contador, um
codificador, um descodificador, etc.

Um sistema é uma associação de dispositivos e/ou componentes todos eles interligados, para
alcançar um determinado objectivo. São exemplos de sistemas um relógio digital, um gravador de
voz, uma máquina calculadora, etc.

1.1. Grandezas analógicas e digitais

Uma grandeza analógica é aquela que apresenta valores contínuos. A maioria daquilo que se pode
medir quantitativamente na natureza se encontra na forma analógica. Por exemplo, a temperatura
do ar, varia numa faixa contínua de valores. Durante um determinado dia, a temperatura não passa,
digamos, de 21ºC para 22ºC instantaneamente; ela passa por toda uma infinidade de valores

18
intermediários. Se fizermos um gráfico da temperatura em um dia de verão típico, teremos uma
curva contínua e de variação suave similar à curva mostrada na Figura 1.1. Outros exemplos de
grandezas analógicas são tempo, pressão, distância e som.

Figura 1.1- Gráfico de uma grandeza analógica (temperatura versus tempo)

Uma grandeza digital é aquela que apresenta valores discretos, ou seja, varia de valor por saltos.
Devido a essa natureza não há muitas dificuldades quando se faz a leitura de uma quantidade
digital, ao passo que o valor de uma quantidade analógica apresenta muitas vezes uma
interpretação livre. Em circuitos digitais, dois níveis de tensão diferentes são usados para
representar, 1 é representado pela tensão maior a qual chamamos de nível ALTO, e o 0 é
representado
1.5 pelo nível de tensão menor o nível BAIXO. A Figura 1.2 abaixo mostra o exemplo
de um sinal digital.

1
V

0.5

0
0 2 4 6 8 10 12 14 16 18 20
t

Figura 1.2 – Exemplo de sinal digital

1.2. Sistemas analógicos e digitais

Um sistema analógico é uma combinação de que manipulam quantidades físicas que são
representadas na forma analógica. Os sistemas analógicos mais conhecidos são: amplificador de
áudio, dimmer (regulador de luminosidade), relógio com ponteiros.

19
A Figura 1.3 mostra um diagrama básico de um amplificador de áudio, onde as ondas sonoras, que
são de natureza analógica, são captadas por um microfone1 e convertidas em uma pequena tensão
analógica denominada sinal de áudio. Essa tensão varia continuamente de acordo com as
variações no volume e na frequência do som e é aplicada na entrada de um amplificador. A saída
do amplificador, que é uma reprodução ampliada da tensão de entrada, é enviada para o alto-
falante. O alto-falante converte o sinal de áudio amplificado de volta para o formato de ondas
sonoras com um volume muito maior que as ondas sonoras originais captadas pelo microfone.

Figura 1.3 Sistema básico de um amplificador de áudio

Um Sistema digital é uma combinação de dispositivos projectados para manipular informação


lógica ou quantidades físicas que são representadas no formato digital. Os sistemas digitais mais
comuns são: as calculadoras, os computadores digitais, os relógios digitais e o sistema de telefonia.

Considerar o exemplo de uma calculadora manual ilustrado na Figura 1.4, o dispositivo de entrada
(à esquerda) da calculadora é um teclado. Entre o teclado e a Unidade Central de Processamento
(CPU), há um codificador, que traduz o número decimal pressionado no teclado para o código
binário. A CPU realiza a sua operação em binário e produz o resultado em código binário. O
descodificador traduz o código binário da CPU para o código decimal que é visualizado no ecrã
(display). O codificador e descodificador deste sistema são tradutores electrónicos de códigos. O
codificador pode ser considerado como tradutor da linguagem humana para a linguagem da

1
Transdutor é todo dispositivo capaz de converter uma forma de energia em outra. O microfone e o alto-falante são
dois transdutores electromecânicos. Enquanto o LED e o fototransistor são dois tipos de transdutores ópticos

20
máquina. O descodificador faz o oposto, ou seja traduz da linguagem da máquina para linguagem
humana.

CPU

Figura 1.4 Diagrama básico de uma calculadora manual

1.3. Vantagens e desvantagens dos sistemas digitais em relação aos sistemas analógicos

Vantagens dos sistemas digitais

1. Os sistemas digitais são geralmente mais fáceis de serem projectados.


2. O armazenamento de informação é mais fácil.
3. Os circuitos digitais são menos afectados por ruído.
4. As operações podem ser programadas.

Desvantagens dos sistemas digitais

1. O mundo real é quase totalmente analógico.


2. Processar sinais digitalizados leva tempo.

Referências bibliográficas

[1] R. J. Tocci, N. S. Widmer e G. L. Moss, Sistemas Digitais: Princípios e Aplicações, 10ª ed.,
São Paulo - Brasil: Pearson Prentice Hall, 2007.

[2] T. L. Floyd, Sistemas Digitais: Fundamentos e Aplicações, 9ª ed., Porto Alegre - Brasil:
Bookman, 2007.

[3] R. L. Tokheim, Principios Digitales, 3ª ed., Espanha, Madrid: McGraw Hill.

[4] I. V. Idoeta e F. G. Capuano, Elementos de Electrónica Digital, 35ª, Ed., São Paulo-Brasil:
Erica.

21
Capítulo II – Sistemas de Numeração

2.1 Sistemas de numeração

Há muitos sistemas de numeração em uso na tecnologia digital. Os sistemas numéricos mais


comuns são: decimal, binário, octal e hexadecimal. O sistema decimal é obviamente o mais
conhecido, por ser uma ferramenta que usamos todos os dias.

Sistema decimal

O sistema decimal é composto por 10 símbolos. Esses 10 símbolos são: 0, 1, 2, 3, 4, 5, 6, 7,8 e 9.


Esses 10 símbolos fazem do sistema decimal um sistema de base 10.

Sistema binário

No sistema binário há apenas dois símbolos ou valores possíveis para os dígitos: 0 e 1. Cada dígito
de um número binário denomina-se Bit, abreviatura de Binary Digit. Esses dois dígitos fazem do
sistema binário um sistema de base dois.

Bit mais significativo (Most Significant Bit - MSB) é o bit mais à esquerda de um número binário.
Enquanto, o bit menos significativo (Least Significant Bit – LSB) é o bit mais à direita de um
número binário. Exemplo: 101010

MSB LSB

Sistema octal

O sistema octal é composto por 8 símbolos. Esses 8 símbolos são 0, 1, 2, 3, 4, 5, 6 e 7. Esses 8


símbolos fazem do sistema octal um sistema de base 8.

Sistema hexadecimal

O sistema numérico hexadecimal usa a base 16. Ele utiliza os algarismos de 0 a 9 mais as letras A
(10), B (11), C (12), D (13), E (14) e F (15).

22
2.2. Conversão de sistemas numéricos

2.2.1. Conversão de decimal inteiro para binário

Para converter um número inteiro de decimal para binário realizam-se divisões sucessivas por 2,
até que o último quociente seja inferior a 2. O número binário será formado pelo último quociente,
que será o bit mais significativo (MSB) e os restos de cada divisão.

EXEMPLO 2.1 Converter 4310 para binário.


Solução:
43 2 O número binário equivalente será 101011.
1 21 2
1 10 2 ∴4310 = 1010112
0 5 2
1 2 2
0 1 MSB

EXEMPLO 2.2 Converter 132 para binário.


Solução:
132 2
0 66 2
0 33 2
1 16 2∴13210 = 100001002
0 8 2
0 4 2
0 2 2
0 1 MSB

2.2.2. Conversão de um número decimal fraccionário para binário

Para converter em binário um número decimal fraccionário multiplica-se este por dois. A parte em
decimal do resultado multiplica-se novamente por dois, e assim sucessivamente até se obtenha a
precisão desejada na parte fraccionária, isto é até atingir zero. O número binário será formado pela
sucessão das partes inteiras resultantes dos produtos.

23
EXEMPLO 2.3 Converter 0,562510 para binário.
Solução:
0,5625 x 2 = 1,125
0,125 x 2 = 0,25 Logo: 0,562510 = 0,10012
0,25 x 2 = 0,5
0,5 x 2 = 1

EXEMPLO 2.4 Converter 8,37510 em binário.


Solução:
O número 8,375 = 8 + 0,375

Parte inteira Parte fraccionária

Primeiramente, vamos transformar a parte inteira do número, como já explicado anteriormente:


8 2 ∴ 810 = 10002
0 4 2
0 2 2
0 1

O passo seguinte é a transformação da parte fraccionária. Para tal, utilizaremos a regra que consiste
na multiplicação sucessiva. Temos, então:

0,375 x 2 = 0,75
0,75 x 2 = 1,5 Assim sendo, podemos escrever: 0,37510 = 0,0112
0,5 x 2 = 1

Para completamos a conversão, efectuamos a composição da parte inteira com a fraccionária:


∴8,37510 = 1000,0112

EXEMPLO 2.5 Converter 0.310 para binário.


Solução:

0,3 x 2 = 0,6
0,6 x 2 = 1,2
0,2 x 2 = 0,4
0,4 x 2 = 0,8
0,8 x 2 = 1,6
0,6 x 2 = 1,2

24
Podemos notar que o número 1,2 voltou a aparecer, logo se trata de continuamos o processo,
teremos a mesma sequência já vista até aqui. Este caso equivale a uma dízima infinita. Logo,
temos:
0,310 = 0,010011…2

2.2.3. Conversão de binário para decimal

O valor decimal de um número binário pode ser determinado somando-se pesos de todos os bits
que são 1 (um) e descartando todos os pesos dos bits que são 0 (zero).

EXEMPLO 2.6 Converta o número binário 110110 para decimal.


Solução:
25 24 23 22 21 20

1 1 0 1 1 0 = 1.25 + 1.24 +0.23 +1.22 + 1.21 + 0.20 = 32 + 16 + 4 + 2 = 54

∴1101102 = 5410

EXEMPLO 2.7 Converta 10111,0112 para decimal.


Solução:
24 23 22 21 20 2-1 2-2 2-3

1 0 1 1 1 , 0 1 1 = 1.24 + 0.23+1.22 + 1.21 + 1.20 + 0.2-1+1.2-2 +1.2-3

= 16 + 0 + 4 + 2 + 1 + 0 + 0,25 + 0,125 = 23,375


2.2.4. Conversão de decimal para octal

Para passar um número inteiro de decimal para octal realizam-se divisões sucessivas por 8, até que
o último quociente seja inferior a 8. O número octal será formado pelo último quociente, que será
o dígito mais significativo e os restos de cada divisão.

EXEMPLO 2.8 Converter 10110 para octal.


Solução:
101 8
5 12 8 ∴ 10110 = 1458
4 1

25
EXEMPLO 2.9 Converter 34210 para octal.
Solução:
342 8
6 42 8 ∴ 34210 = 5268
2 5

2.2.5. Conversão de um número decimal fraccionário para octal

Para converter em octal um número decimal fraccionário multiplica-se este por 8. A parte em
decimal (fraccionária) do resultado multiplica-se novamente por 8, e assim por diante até que se
obtenha a precisão desejada.

EXEMPLO 2.10 Converta o numero 0.71 em octal.

Solução:
0,71 x 8 = 5,68
0,68 x 8 = 5,44
0,44 x 8 = 3,52 ∴0,7110 = 0,553418
0,52 x 8 = 4,16
0,16 x 8 = 1,28

EXEMPLO 2.11 Converta o número 719,3210 em octal.

Solução:

719,32 = 719 + 0,32


719 8
7 89 8 ∴ 71910 = 13178
1 11 8
3 1
0,32 x 8 = 2,56
0,56 x 8 = 4,48
0,48 x 8 = 3,84
0, 84 x 8 = 6,72 ∴ 0,3210 = 0,243658
0,72 x 8 = 5,76

∴ 719,3210 = 1317,243658

2.1.1. Conversão de octal para decimal

Um número octal pode ser facilmente convertido para o seu equivalente decimal multiplicando-se
cada dígito pelo seu posicional.

26
EXEMPLO 2.12 Converter o número 1448 em decimal.

Solução:

82 81 80

1 4 4 = 1.82 + 4.81 + 4.80 = 64 + 32 + 4 = 100

∴ 1448 = 10010
EXEMPLO 2.13 Converter o número 172,148 em decimal.
Solução:
82 81 80 8-1 8-2

1 7 2 , 1 4 = 1.82+7.81 + 2.80 + 1.8-1 +4.8-2

= 64 + 7.8 + 2.1 + 1.0,125 + 4.0,015625 = 122,187510

2.2.6. Conversão de um número decimal para hexadecimal

A conversão de decimal em hexadecimal pode ser feita usando divisões sucessivas por 16, até que
o último quociente seja inferior a 16.

EXEMPLO 2.14 Converter o número 42310 em hexadecimal.


Solução:
423 16
7 26 16 ∴ 42310 = 1A716
A 1

EXEMPLO 2.15 Converter 3578.2510 em Hexadecimal.

Solução:
3578,25 = 3578 + 0,25
3578 16 0,25 x 16 = 4
A 223 16 0,2510 = 0,416
F D

357810 = DFA16 ∴ 3578,2510 = DFA,416


2.2.7. Conversão de hexadecimal para decimal

27
Um número hexadecimal pode ser convertido para o seu equivalente decimal multiplicando-se
cada dígito hexadecimal pelo seu peso posicional.
EXEMPLO 2.16 Converta A8516 em decimal.
Solução:
162 161 160

A 8 5 = 10.162 + 8.161 + 5.160 = 10.256 + 8.16 + 5.1 = 269310

EXEMPLO 2.17 Converta B2F8,0A16 em decimal.


Solução:
163 162 161 160 16-1 16-2

B 2 F 8 , 0 A = 11.163 +2.162 + 15.161 + 8.160 + 0.16-1 + 10.16-2

∴B2F8,0A16 = 45816,0390610
2.2.7. Conversão de binário para hexadecimal

O número binário é organizado em grupos de 4 bits, e cada grupo é convertido no dígito


hexadecimal equivalente. Os zeros são acrescentados, quando necessário, para completar um
grupo de 4 bits.

EXEMPLO 2.18 Converta 1010100000102 em hexadecimal.

Solução:

101010000010 8421
1010 = A (10)
A 8 2 1000 = 8
0010 = 2 ∴1010100000102 =A8216
EXEMPLO 2.19 Converta 100111010.112 em hexadecimal.
Solução:
0001 0011 1010,1100 8421
0001= 1
1 3 A ,C 0011= 3
1010 = A (10)
1100 = C (12)
∴000100111010,11002 = 13A,C16
2.2.8. Conversão de hexadecimal para binário

Cada dígito é convertido no seu equivalente binário de 4 bits.


28
EXEMPLO 2.20 Converta 9F216 em binário.
Solução:
9 F 2 8421
9=1001
1001 1111 0010 F=1111
2=0010
∴9F216 = 1001111100102

EXEMPLO 2.21 Converta A,D016 em binário.


Solução:
A , D 0 8421
A=1010
1010 1101 0000 D=1101
0=0000
∴A,D016 = 1010,110100002

2.3. Códigos Digitais

Quando números, letras ou palavras são representadas por um grupo especial de símbolos diz-se
que estão codificados. Ao grupo desses símbolos chamam-se código. Códigos digitais são
combinações de dígitos binários que representam, números, letras e símbolos.

2.3.1. Decimal Codificado em Binário (Binary Coded Decimal - BCD)

Se cada dígito de um número decimal for representado pelo seu equivalente binário de 4 bits, o
resultado será um código denominado decimal codificado em binário (BCD ou BCD8421). O
código BCD representa, então, cada dígito de um número decimal por um número binário de 4
bits. Evidentemente, são usados apenas os números de binários de 4 bits, entre 0000 (zero) e 1001
(nove). O código BCD não usa os números 1010 (dez), 1011 (onze), 1100 (doze), 1101 (treze),
1110 (cartoze) e 1111 (quinze), ou seja não usa os números maiores que 1001 (nove). Se qualquer
um desses números de 4 bits proibidos aparecer alguma vez em uma máquina que use o código
BCD, é, geralmente, uma indicação de que ocorreu algum erro.

EXEMPLO 2.22 Converta 45 decimal em BCD.


Solução:
4 5 (Decimal)

0100 0101 (BCD)

29
4510 = 0100 0101 (BCD)

EXEMPLO 2.23 Converta 170 decimal em BCD.


Solução:
1 7 0 (Decimal)

0001 0111 0000 (BCD)

17010 = 0001 0111 0000 (BCD)

2.3.2. Conversão de BCD para Decimal

O número BCD é organizado em grupos de 4 bits, e cada é grupo é convertido no dígito decimal
equivalente. É proibido acrescentar bits em um grupo que não está completo.

EXEMPLO 2.24 Converta 0110 1001 0001 (BCD) para decimal.

Solução:
0110 1001 0001 (BCD)

6 9 1 (Decimal)

011010010001 (BCD) = 69110

EXEMPLO 2.25 Converta 01111000,0101 (BCD) para decimal.

Solução:
0111 1000, 0101 (BCD)

7 8 , 5 (Decimal)

01111000,0101(BCD) = 78,510

30
2.3.3. Código Gray

O código Gray é um código que apresenta uma mudança de um único bit quando se passa de uma
palavra do código para a seguinte na sequência.

Conversão de binário para o código Gray


1. O bit mais significativo (mais à esquerda) no número binário é o mesmo que o
correspondente no código Gray.
2. Da esquerda para a direita, some cada par de bits vizinhos no código binário para obter o
próximo bit do código Gray.
Tabuada em Gray
0+1=1
1+0=1
0+0=0
1+1=0

EXEMPLO 2.26 Converta o número binário 11011 para o código Gray.


Solução:
1 + → 1 + → 0 + →1 + →1 (Binário)

1 0 1 1 0 (Gray)

Conversão de Gray para binário

1. O bit mais significativo (mais à esquerda) no código Gray é o mesmo que o correspondente
no número binário.
2. Some cada bit do código binário gerado do código Gray na próxima posição adjacente.

EXEMPLO 2.27 Converta o código Gray 10110 para binário.


Solução:
1 0 1 1 0 (Gray)

1 1 0 1 1 (Binário)

31
2.3.4. Códigos alfanuméricos

Para nos comunicarmos, não usamos apenas números, mas também letras e outros símbolos. No
sentido rigoroso, os códigos alfanuméricos representam números e caracteres alfabéticos (letras).
Entretanto, a maioria desses códigos representa também outros caracteres, como símbolos e várias
instruções necessárias para transmissão de informações. O ASCII é o código alfanumérico mais
comum e é abordado a seguir.

2.3.4.1.O código ASCII

ASCII é a abreviação de American Standard Code for Information Interchange (Código Padrão
Americano para Troca de Informações). O código ASCII (pronunciado “askii”), é um código
alfanumérico aceite universalmente e usado na maioria dos computadores e outros equipamentos
electrónicos. A maioria dos teclados de computadores é padronizada com o código ASCII.

Quando digitamos uma letra, um número ou um comando de controlo, o código ASCII


correspondente é enviado para o computador. O ASCII, também é usado para a transferência de
informação entre um computador e dispositivos externos, como por exemplo uma impressora ou
um outro computador.

O ASCII tem 128 caracteres e símbolos representados por um código de 7 bits. Na verdade, o
código ASCII pode ser considerado um código de 8 bits com o MSB sempre 0. Esse código de 8
bits vai de 00 até 7F em hexadecimal.

EXEMPLO 2.28 Consulte a tabela do código ASCII para encontrar os seguintes símbolos:
a) Barra invertida (\);
b) K;
c) e;
Solução:
Símbolo Decimal Binário Hexadecimal
\ 92 101 1100 5C
K 75 100 1011 4B
e 101 110 0101 65

32
2.4 Aritmética binária
A aritmética binária é essencial em todos os computadores digitais e em outros tipos de sistemas
digitais. Para entender os sistemas digitais, temos que saber os fundamentos das operações de
soma, subtracção, multiplicação e divisão em binário.
2.4.1 Adição binária
As regras básicas para adição de dígitos binários (bits) são:

a) 0 + 0 = 0
b) 0 + 1 = 1
c) 1 + 0 = 1
d) 1 + 1 = 0 e vai 1
e) 1 + 1 + 1 = 1 e vai 1

EXEMPLO 2.29 Efectue as seguintes adições de números binários:

a) 10102 + 10112 b) 111.112 +101.12

Solução:

10102 + 10112= 101012


1 1 1 1
1 1 1 1 1, 1 1
1 0 1 0
+ 1 0 1, 1
+ 1 0 1 1
1 0 1 0 1 1 1 0 1, 0 1

b) 111,112 +101,12= 1101,012

2.4.2 Complemento de 1 e de 2 de números binários

Complemento de 1
O complemento de 1 (C1) de um número binário é determinado substituindo cada 0 por 1 e cada 1
por 0, conforme ilustrado a seguir.

1 1 0 12 (Número binário)

C1 = 0 0 1 0

33
Complemento de 2
Complemento de 2 (C2) de um número binário é obtido somando 1 ao LSB do complemento de
1, conforme mostra a equação abaixo:
C2 = C1 + 1

EXEMPLO 2.30Achar o complemento de 2 do número 11012 .


Solução:
1 1 0 1
C2 = C1 + 1 = 0010 + 1
C1 = 0 0 1 0
C2 = 00112
2.4.3 Números Sinalizados

Os sistemas digitais, como o computador, têm que ser capazes de operar com números positivos e
negativos. Um número binário sinalizado é constituído de duas informações: sinal e magnitude.

O sinal indica se um número é positivo ou negativo e a magnitude é o valor do número.

Os números inteiros podem ser representados em binário nas seguintes formas: sinal-magnitude
e complemento de 2.

O bit de sinal

O bit de sinal (BS) é o bit mais à esquerda em um número binário sinalizado, o qual nos diz se o
número é positivo ou negativo. Um bit de sinal 0 indica um número positivo e um bit de sinal 1
indica um número negativo.

Representação de números sinalizados usando a forma sinal-magnitude

Quando um número binário sinalizado é representado na forma sinal-magnitude, o bit mais à


esquerda é o bit de sinal e os restantes são os bits de magnitude. Os bits de magnitude estão na
forma de binário verdadeiro, tanto para os números positivos quanto para os números negativos.

EXEMPLO 2.31 Represente cada um dos seguintes números decimais na forma sinal-magnitude.
Use um total de 7 bits incluído o bit de sinal: a) +45; b) -45

Solução:

34
a) +45

Convertendo o número 45 decimal para


b) -45
binário temos: 1011012 .
1 1 0 1 1 0 1 = -4510
0 1 0 1 1 0 1 = +4510
BS (-) Bits de Magnitude
BS (+) Bits de Magnitude

Representação de números sinalizados usando a forma de complemento de 2

Os números positivos na forma de complemento de 2 são expressos da mesma forma que as


representações sinal-magnitude. Os números negativos são expressos em complemento de 2 dos
números positivos correspondentes.

EXEMPLO 2.32 Represente cada um dos seguintes números decimais na forma complemento de
2. Use um total de 7 bits incluído o bit de sinal: a) +13; b) -13

Solução:

a) +13

Convertendo 1310 par binário temos: 1101. Para se representar -13 usando o
complemento de 2, devemos expressar a sua
Uma vez que o equivalente binário só possui magnitude na forma de C2.
4 bits, devemos acrescentar mais 2 bits para
Primeiramente, determinamos o C1 do
completar a magnitude. Lembrando de que número binário.
reservamos sempre um bit para o bit de sinal.
0 0 1 1 0 1

0 0 0 1 1 0 1 = +1310 C1 = 1 1 0 0 1 0

BS (+) Bits de Magnitude

Em seguida, determinamos o C2:

b) -13
C2 = C1 + 1 = 110010 + 1 = 110011

35
Finalmente temos a representação do número 1 1 1 0 0 1 1 = -1310
dado na forma de C2
BS Bits de Magnitude na
(-) forma de C2

2.4.4 Subtracção binária


As quatro regras básicas para subtracção de bits são:
a) 0–0=0
b) 1–1=0
c) 1–0=1
d) 0 – 1 = 1 Empresta 1

Subtracção binária usando o complemento de 2


Para subtrair utilizando o método de complemento de 2 deve-se seguir os passos a seguir:

1. O diminuendo e o diminuidor devem ter o mesmo número de bits;


2. Calcular o complemento de 2 do diminuidor;
3. Adicionar o diminuendo ao complemento de 2 do diminuidor
4. Retirar o bit mais à esquerda do resultado da soma da subtracção, de forma a obtemos o
resultado da subtracção (só aplicamos esse passo quando o diminuendo for maior que o
diminuidor).

EXEMPLO 2.33 Realize as seguintes subtracções usando o método de complemento de 2:


a) 100102 - 10102 b) 1002 - 10012
Solução:
CASO 1 Diminuendo maior que o diminuidor
a) 100102 - 10102
100102 - 10102 100102 - 010102
Diminuendo Diminuidor
1. Passo: Igualar a quantidade de bits do
diminuendo e do diminuidor

36
2. Passo: Achar o complemento de 2 do
diminuidor:

010102
C1= 10101
C2 = 10101 + 1 = 10110

3. Passo: Adicionar o diminuendo ao


complemento de 2 do diminuidor:
100102 + 101102

∴ 100102 + 101102= 110002

4. Retirar o MSB do resultado desta soma,


para que se obtenha o resultado.

1 1 1

1 0 0 1 0

1 0 1 1 0
+
1 0 1 0 0 0

37
CASO 2 Diminuendo menor que o diminuidor
b) 1002 - 10012
Podemos observar que o diminuidor é maior
Solução:
1. Passo: 01002 - 10012
2. Passo:
10012 C2 = C1+ 1 = 0110 + 1
C1= 01102 C2 = 0111

3. Passo: 01002 + 01112


Uma vez que, o diminuendo é menor que o diminuidor o resultado será negativo e estará
representado na forma de complemento de 2.

1
0 1 0 0
+ 0 1 1 1
1 0 1 1
BS Magnitude na forma de C2
(-)
Referências Bibliográficas

[1] R. J. Tocci, N. S. Widmer e G. L. Moss, Sistemas Digitais: Princípios e Aplicações, 10ª ed.,
São Paulo - Brasil: Pearson Prentice Hall, 2007.

[2] T. L. Floyd, Sistemas Digitais: Fundamentos e Aplicações, 9ª ed., Porto Alegre - Brasil:
Bookman, 2007.

[3] R. L. Tokheim, Principios Digitales, 3ª ed., Espanha, Madrid: McGraw Hill.

[4] I. V. Idoeta e F. G. Capuano, Elementos de Electrónica Digital, 35ª, Ed., São Paulo-Brasil:
Erica.

[5] J. W. Bignell e R. Donovan, Eletrônica Digital, 5ª, Ed., Brasil: Cengage Learning, 2010.

38
Capítulo III – Portas Lógicas

3.1. Portas lógicas

Portas lógicas são circuitos electrónicos básicos que possuem uma ou mais entradas e uma única
saída. Nas entradas e na saída, podemos associar estados “0” ou “1”, ou seja, variáveis lógicas. Em
electrónica digital, quando utilizamos portas lógicas, atribuímos às entradas e às saídas valores de
tensão. Nos circuitos exemplos de portas lógicas, associaremos ao 5 V o estado “1” e ao 0 V, o
estado “0”.

As portas lógicas não possuem memória, isto é, não guardam informação e os valores das saídas
dependem apenas dos valores das entradas. Todos os circuitos digitais tais como codificadores,
contadores, microprocessadores são construídos utilizando três portas lógicas básicas que são: a
porta NOT, a porta OR e a porta AND.

3.2. Tabela de Verdade

A tabela de verdade (TV) é uma tabela que apresenta uma enumeração completa de todos os
casos possíveis das combinações dos valores de entradas e os respectivos valores de saídas.
A TV pode ser usada para estudar o comportamento e/ou construir o circuito lógico. O número
total de combinações possíveis de entradas binárias para uma função booleana é determinado pela
seguinte fórmula:
𝑀 = 2𝑛 (3.1)

onde M é o número de combinações de entrada possíveis e n é o número de variáveis de entrada.


Nota:
1 𝟎=1
2 𝟏=0
3 1+1=1

Os exemplos a seguir mostram a construção de tabelas de verdade a partir de funções lógicas.

39
EXEMPLO 3.1: Construir a tabela de verdade para cada uma das funções lógicas:
a) 𝐹(𝐴,𝐵) = 𝐴𝐵 + 𝐴̅ ; b) 𝐹(𝐴,𝐵,𝐶) = 𝐴̅𝐵𝐶 + 𝐴̅. 𝐵𝐶̅ + 𝐴𝐶
Solução:
a) 𝐹(𝐴,𝐵) = 𝐴𝐵 + 𝐴̅, podemos observar que se trata de uma função com duas variáveis (A e
B), ou seja n = 2. Aplicando a equação 3.1 temos: 𝑀 = 22 = 4 (𝑐𝑎𝑠𝑜𝑠 𝑝𝑜𝑠𝑠í𝑣𝑒𝑖𝑠)
2 1
A B F 1ºcaso: A = 0; B = 0
𝐹 = 0.0 + 0̅ = 0 + 1 = 1
0 0 1
2ºcaso: A = 0; B = 1
0 1 1 𝐹 = 0.1 + 0̅ = 0 + 1 = 1
3ºcaso: A = 1; B = 0
1 0 0 𝐹 = 1.0 + 1̅ = 0 + 0 = 0
1 1 1 4ºcaso: A = 1; B = 1
𝐹 = 1.1 + 1̅ = 1 + 0 = 1

b) 𝐹(𝐴,𝐵,𝐶) = 𝐴̅𝐵𝐶 + 𝐴̅. 𝐵𝐶̅ + 𝐴𝐶

1º Caso: A = 0; B = 0; C = 0
A B C F
𝐹 = 0̅. 0.0 + 0̅. 0. 0̅ + 0.0 = 1.0.0 + 1.0.1 + 0 = 0
2º Caso: A = 0; B = 0; C = 1 0 0 0 0
𝐹 = 0̅. 0.1 + 0̅. 0. 1̅ + 0.1 = 0.0.1 + 1.0.0 + 0 = 0
0 0 1 0
3º Caso: A = 0; B = 1; C = 0
𝐹 = 0̅. 1.0 + 0̅. 1. 0̅ + 0.0 = 1.0.0 + 1.1.1 + 0 = 1 0 1 0 1

4º Caso: A = 0; B = 1; C = 1 0 1 1 1
𝐹 = 0̅. 1.1 + 0̅. 1. 1̅ + 0.1 = 1.1.1 + 1.1.0 + 0 = 1
1 0 0 0
5º Caso: A = 1; B = 0; C = 0
𝐹 = 1̅. 0.0 + 1̅. 0. 0̅ + 1.0 = 0.0.0 + 0.0.1 + 0 = 0 1 0 1 1
6º Caso: A = 1; B = 0; C = 1
1 1 0 0
𝐹 = 1̅. 0.1 + 1̅. 0. 1̅ + 1.1 = 0.0.1 + 0.0.0 + 1 = 1
1 1 1 1
7º Caso: A = 1; B = 1; C = 0
𝐹 = 1̅. 1.0 + 1̅. 1. 0̅ + 1.0 = 0.1.0 + 0.1.0 + 0 = 0
8º Caso: A = 1; B = 1; C = 1
𝐹 = 1̅. 1.1 + 1̅. 1. 1̅ + 1.1 = 0.1.1 + 0.1.0 + 1 = 1

40
3.3. Formas canónicas de uma função lógica

Chama-se forma canónica a toda soma-de-produtos ou produto-de-somas nas quais aparecem


todas as variáveis em cada um dos termos que constituem a expressão, em forma directa ou negada.
São exemplos de formas canónicas as seguintes funções:

̅ 𝑪 + 𝑨𝑩
𝑭𝟏 = 𝑨𝑩𝑪 + 𝑨𝑩 ̅𝑪̅
̅ + 𝑪). (𝑨
𝑭𝟐 = (𝑨 + 𝑩 ̅+𝑩 ̅ ). (𝑨 + 𝑩 + 𝑪
̅ +𝑪 ̅)
As funções do tipo 𝑭𝟏 , recebem o nome de Mintermos ou soma-de-produtos padrão e as funções
do tipo de 𝑭𝟐 , denominam-se Maxtermos ou produto-de-somas padrão.

3.3.1 Forma de obter a função lógica a partir da Tabela de Verdade

Os mintermos obtém-se somando-se todos os produtos lógicos que dão à função lógica o valor l.
Enquanto, os maxtermos obtém-se multiplicando todas as somas lógicas que dão à função lógica
o valor lógico 0.

EXEMPLO 3.2: Obter os mintermos e os maxtermos da TV a seguir.

A B C F Solução:

0 0 0 1 Forma de mintermos:
𝐹 = 𝐴̅𝐵̅ 𝐶̅ + 𝐴̅𝐵 𝐶̅ + 𝐴𝐵̅ 𝐶 + 𝐴𝐵𝐶̅
0 0 1 0
Forma de maxtermos:
0 1 0 1
𝐹 = (𝐴 + 𝐵 + 𝐶̅ ). (𝐴 + 𝐵̅ + 𝐶̅ )(𝐴̅ + 𝐵 + 𝐶)(𝐴̅ + 𝐵̅ + 𝐶̅ )
0 1 1 0

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 0

41
3.4. Portas lógicas
3.4.1. Porta lógica NOT (Inversora)

A porta lógica NOT é a mais simples. Nela, a saída é igual ao complemento da entrada. A
Figura 3.1 mostra o símbolo, a TV e a expressão lógica ou expressão booleana.

Figura 3.1 Símbolo, expressão booleana e tabela verdade da porta NOT

3.4.2. Porta lógica OR

A porta OR (OU, em português) possui duas ou mais entradas. A saída sempre será igual a
“1” quando uma das entradas for igual a “1” (Figura 3.2). A saída será “0” somente se todas as
entradas forem “0”.

Figura 3.2 Símbolo, expressão booleana e tabela verdade da porta OR

3.4.3. Porta lógica AND

A porta AND (E) possui uma ou mais entradas e sua saída será “1” somente quando todas as
entradas forem iguais a “1” (ver Figura 3.3).

Figura 3.3 Símbolo, expressão booleana e tabela verdade da AND

42
EXEMPLO 3.3: Desenhe o diagrama do circuito para expressão: 𝒀 = 𝑨𝑪 + 𝑩𝑪 + 𝑨𝑩𝑪.

Solução:

𝒀 = 𝑨𝑪 + 𝑩𝑪 + 𝑨𝑩𝑪

EXEMPLO 3.4: Desenhe o diagrama do circuito que implemente a função lógica:


𝑿 = (𝑨 + 𝑩)(𝑩 + 𝑪)
Solução:

𝑿 = (𝑨 + 𝑩)(𝑩 + 𝑪)

̅̅̅̅̅̅̅̅̅̅̅̅̅
Problema relacionado. Implemente o circuito da expressão booleana: 𝐙 = [𝐃 + (𝐀 + 𝐁)𝐂]

3.4.4. Porta NOR

A porta NOR corresponde à uma porta OR com a saída invertida (Figura 3.4). A saída será “1”
somente se todas as entradas forem “0”.

Observe que a “bolinha” no símbolo nega a saída, equivalente à barra na expressão booleana,
indicando que a porta NOR tem uma saída que corresponde ao complemento da saída da porta OR.

43
Figura 3.4 Símbolo, expressão booleana e tabela verdade da NOR

3.4.5. Porta NAND

A porta NAND corresponde a uma porta AND com uma saída invertida (ver Figura 3.5). A saída
será “0” somente se todas as entradas forem “1”.

Figura 3.5 Símbolo, expressão booleana e tabela verdade da NAND


3.4.6. Porta Exclusive-OR

A porta Exclusive-OR (XOR) possui uma ou mais entradas e fornecerá uma saída igual a “1”
somente quando as entradas forem diferentes (Figura 3.6).

Figura 3.6 Símbolo, expressão booleana e tabela verdade da XOR

44
3.4.7. Porta Exclusive-NOR

A porta Exclusive-NOR (XNOR), também chamada de COINCIDÊNCIA, é equivalente a uma


porta XOR com a saída invertida (Figura 3.7). A saída será “1” se as entradas forem iguais.

A B Y

0 0 1

0 1 0

Figura 3.7 Símbolo, tabela verdade e expressão booleana da porta XNOR 1 0 0

1 1 1

EXEMPLO 3.5: Para cada uma das expressões a seguir, desenhar o circuito lógico:

̅̅̅̅̅̅̅̅
a) 𝐹 = (𝐴 ⊕ 𝐵)𝐶 + 𝐴̅(𝐵 ⊕ 𝐶 ) + ̅̅̅̅̅̅
𝐴𝐵𝐶

𝐴 + 𝐵 + 𝐶 + ̅̅̅̅̅̅
b) 𝑍 = ̅̅̅̅̅̅̅̅̅̅̅̅̅̅ 𝐴̅𝐵 𝐶̅ + ̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝐴𝐵̅ 𝐶̅ + 𝐴𝐷 ̅
Solução:

a) 𝐹 = (𝐴 ⊕ 𝐵)𝐶 + 𝐴̅(̅̅̅̅̅̅̅̅ ̅̅̅̅̅̅


𝐵 ⊕ 𝐶 ) + 𝐴𝐵𝐶

45
𝐴 + 𝐵 + 𝐶 + ̅̅̅̅̅̅
b) 𝑍 = ̅̅̅̅̅̅̅̅̅̅̅̅̅̅ 𝐴̅𝐵 𝐶̅ + ̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝐴𝐵̅ 𝐶̅ + 𝐴𝐷 ̅

A B C D

3.5. Circuitos Integrados

Todas as portas lógicas que foram estudadas, estão disponíveis na forma de circuitos integrados.
Um circuito integrado (CI) é um circuito electrónico construído totalmente em um único e
pequeno chip de silício. Todos os componentes que formam o circuito (transistores, diodos,
resistores e capacitores) são partes integrais de um único chip. Os Sistemas digitais têm sido por
muitos anos incorporados porque os CIs apresentam: tamanho reduzido, alta confiabilidade,
baixo custo e baixo consumo.

Os CIs digitais podem ser divididos em duas grandes categorias: funções lógicas fixas e funções
lógicas programáveis. No caso dos dispositivos de funções lógicas fixas, as funções são
estabelecidas pelo fabricante e não podem ser alteradas.

3.5.1. Encapsulamento de Circuitos Integrados

Os encapsulamentos de circuitos integrados são classificados de acordo com a forma com que são
montados nas placas de circuito impresso como dispositivos com pinos que passam através de

46
furos. O tipo mais comum de encapsulamento é o DIP (Dual –In-line Package), mostrado na
Figura 3.8, no qual os pinos estão dispostos em linhas paralelas. Os pontos de conexão do chip são
interligados aos pinos no encapsulamento para permitir as ligações de entrada e saída com o mundo
externo.

Figura 3.8 Vista em corte dum tipo de CI com o chip e encapsulamento de CI do tipo DIP

Cada pino no CI desempenha uma função específica por isso é importante fazer-se a identificação
correcta dos mesmos. Por isso, tem-se um círculo ou um pequeno corte ao lado do pino 1, e a
contagem é feita no sentido anti-horário, conforme ilustra a Figura 3.9.

Figura 3.9 Numeração dos pinos para encapsulamentos de CI do tipo DIP

Os fabricantes de CIs fornecem diagramas de pinos semelhantes ao da Figura 3.10 para um


CI 7408, verificamos que este CI é formado por quatro portas AND de duas entradas.

Figura 3.10 Diagrama de pinos do CI 7408

47
A Figura 3.10 mostra a numeração dos pinos do CI 7408 de 1 a 14 no sentido anti-horário. As
conexões de alimentação são GND (pino 7) e Vcc (pino 14). Os pinos restantes são as entradas e
as saídas das quatros portas AND. O CI 7408 faz parte de uma família de dispositivos lógicos, ele
é um dos muitos dispositivos da família lógica de lógica transistor-transistor (TTL) que
actualmente são os mais populares. Geralmente, os dispositivos TTL uma alimentação de 5 Volts.
A Figura 3.11 mostra um diagrama de conexões que tem como elemento principal o CI 7408. As
conexões, positiva (Vcc) e negativa (GND) da alimentação são feitas nos pinos 14 e 7,
respectivamente. Os comutadores de entrada (A e B) se conectam nos pinos 1 e 2 do CI 7408.
Observamos que, se um comutador “estiver em cima”, se aplica um nível lógico 1 (+5V) na entrada
da porta AND. A direita, um díodo emissor de luz (LED) e um resistor de 150 Ω estão ligados a
terra. Se a saída no pino 3 estiver em nível ALTO (+5V), fluirá uma corrente através do LED. Se
o LED emite luz, indica que temos um nível ALTO na saída da porta AND.

Figura 3.11 Conexão da porta AND utilizando o CI 7408

A tabela de verdade abaixo mostra o resultado da operação do circuito AND de duas entradas. O
LED acende somente quando os nomes comutadores (A e B) estiverem em nível ALTO (+5V).
Entradas Saídas

A B Tensão LED

GND GND GND Apagado

GND 5V GND Apagado

5V GND GND Apagado

5V 5V Aproximadamente 5V Aceso

48
Para ajudar-nos a identificar um CI utilizamos uma folha de dados (data sheet) que consiste de
uma página de informações que mostra, o diagrama lógico, a numeração dos pinos, as condições
recomendadas de operação, as características eléctricas, dentre outras propriedades do CI.

Os tipos de configurações de portas tipicamente disponíveis na forma de CIs são identificados


pelos dois últimos dígitos na designação da série. Por exemplo, 7404 é um CI contendo seis
inversores de baixa potência. Algumas das configurações de portas lógicas e os seus dígitos padrão
de identificação são:

 Quatro portas NAND de 2 entradas – 7400


 Quatro portas NOR de 2 entradas – 7402
 Seis inversores – 7404
 Quatro portas AND de 2 entradas – 7408

Figura 4.12 Diagramas de configuração de pinos para algumas configurações de CIs de funções lógicas fixas comuns

Para além da família lógica TTL, há uma família de CIs mais moderna denominada CMOS
(Complementary Metal-Oxide Semiconductor), que tem ganhado popularidade devido ao baixo
consumo de potência, imunidade ao ruído e outros factores. Todas as portas lógicas (NOT, AND,
OR, NAND, NOR, XOR e XNOR) estão disponíveis na forma de CIs do tipo DIP em dispositivos
CMOS.
Uma vantagem da tecnologia TTL é que ela não é sensível à descarga electrostática como CMOS,
portanto, é mais prática para uso na maioria dos laboratórios de experimentação e prototipagem
porque não precisamos nos preocupar com precauções para manuseio dos dispositivos.

49
3.5.2. Precauções no Manuseio de Dispositivos CMOS

Devido à sua estrutura particular, os dispositivos CMOS são muito sensíveis à carga estática e
podem ser danificados por descarga electrostática se não for manuseado adequadamente. As
precauções a seguir devem ser tomadas quando se trabalha com dispositivos CMOS:

 Dispositivos CMOS devem ser transportados e armazenados em espuma condutiva.


 Todos os instrumentos e bancadas metálicas usados em testes devem ser aterrados.
 O pulso da pessoa que manuseia o dispositivo deve ser aterrada através um fio com um
resistor de alto valor.
 Não remova um dispositivo CMOS (ou qualquer outro dispositivo no que diz respeito
a esse assunto) de um circuito enquanto este estiver energizado.
3.5.3. Classificação de complexidade para CIs de funções fixas

Os CIs digitais de funções fixas são classificados de acordo com suas complexidades. Eles são
apresentados aqui a partir da função menos complexa até a mais complexa. As figuras de
complexidade mais comuns são:

1. Integração em pequena escala (SSI – Small-Scale Integration) descreve os CIs de função


fixa que têm até dez circuitos de portas equivalentes em um único chip e eles incluem
portas básicas e flip-flops.
2. Integração em escala média (MSI – Medium-Scale Integration) descreve os circuitos
integrados que têm de 10 a 100 portas equivalentes num chip. Eles incluem funções lógicas
tais como codificadores, decodificadores, contadores, registradores, multiplexadores,
circuitos aritméticos, memórias de pequena capacidade entre outros circuitos.
3. Integração em escala ampla (LSI – Large-Scale Integration) é uma classificação de CIs
com complexidades de 100 a 10.000 portas equivalentes por chip, que incluem memórias.

3.6. Universalidade das portas lógicas NAND e NOR

É possível implementar qualquer expressão usando apenas portas NAND e nenhum outro tipo de
porta. Isso porque as portas NAND, em combinações apropriadas, podem ser usadas para

50
implementar cada uma das operações booleanas NOT (INVERSOR), OR e AND. Isso é
demostrado na Figura 3.13.

Figura 3.13 As portas NAND podem ser usadas para implementar qualquer função booleana.

De modo, similar, notamos que as portas NOR podem ser associadas para implementar qualquer
operação boolena. Isso é demostrado na Figura 3.14.

Figura 3.14 As portas NOR podem ser usadas para implementar qualquer função booleana.

51
Capítulo IV - Álgebra de Boole

Em lógica, há apenas duas condições possíveis para qualquer entrada ou saída: verdadeira e falsa.
O sistema binário de numeração utiliza apenas dois dígitos, 1 e 0, por isso é perfeito para
representar relações lógicas. O modo como tomamos decisões lógicas com base em circunstâncias
verdadeiras ou falsas é conhecido como lógica Booleana, e o sistema que emprega símbolos e
operações para descrever essas decisões é chamado de álgebra de Boole2. O principal objectivo
dessas expressões lógicas é descrever o relacionamento entre as entradas (circunstâncias) e as
saídas do circuito lógico (as decisões).

Variáveis booleanas são variáveis que apresentam apenas dois estados: verdadeiro (V) ou falso
(F), ou mais comummente 0 (zero) ou 1 (um). Por exemplo, uma lâmpada pode ser considerada
uma variável booleana, pois apresenta dois estados: acesa (1) ou apagada (0).

A álgebra Booleana tem apenas três (3) operações lógicas básicas que são: OR, AND e a NOT.
Os operadores lógicos mais importantes são: + (soma lógica ou operador OR) e . (produto lógico
ou operador AND). Por outro lado, as funções booleanas são expressões cujos resultados
apresentam apenas dois estados: 1 ou 0.

4.1. Leis e Regras da Booleana


Assim como em outras áreas da matemática, existem certas regras bem desenvolvidas e leis que
têm que ser seguidas para aplicar adequadamente a álgebra Booleana. As mais importantes são
apresentadas a seguir.

Lei Comutativa
A+B=B+A
A.B = B.A
Lei Associativa
A + (B + C) = (A + B) + C
A (BC) = (AB) C
Lei Distributiva
A (B + C) = AB + AC

2
A álgebra de Boole é a matemática dos Sistemas Digitais

52
Regras da Álgebra Booleana
Adição
1 𝟎=1
2 𝟏=0
Produto
3 𝐴̿ = A
1 A.A = A
4 A+A=A
2 A. A = 0
5 A+𝐀=1
3 A.1 = A
6 A+1=1
4 A.0 = 0
7 A+0=A

Leis de Absorção
1) A + AB = A
Demonstração:
A + AB = A (1 + B) = A c.q.d
2) A + 𝐴.B = A + B
3) 𝐴 + AB = 𝐴 + B

Teoremas de DeMorgan
Teorema 1: O complemento de um produto de variáveis é igual a soma dos complementos das
variáveis.
a) ̅̅̅̅̅̅̅
𝐴 . 𝐵 = 𝐴̅ + 𝐵̅
Teorema 2: O complemento de uma soma de variáveis é igual ao produto do complemento das
variáveis.
b) ̅̅̅̅̅̅̅̅
𝐴 + 𝐵 = 𝐴̅. 𝐵̅
EXEMPLO 4.1: Aplique os teoremas de DeMorgan nas expressões: ̅̅̅̅̅̅
𝑋𝑌𝑍, ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝑋 + 𝑌 + 𝑍 e
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅ + 𝑌̅ + 𝑍̅.
𝑋
Solução:
̅̅̅̅̅̅̅̅
𝑋. 𝑌. 𝑍 = 𝑋̅ + 𝑌̅ + 𝑍̅
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝑋 + 𝑌 + 𝑍 = 𝑋̅. 𝑌̅. 𝑍̅
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅ + 𝑌̅ + 𝑍̅ = 𝑋̿. 𝑌̿. 𝑍̿ = 𝑋𝑌𝑍
𝑋

53
Ao aplicarmos a álgebra Booleana, muitas vezes temos que reduzir uma determinada expressão
para a sua forma mais simples ou transformá-la em um formato mais conveniente a fim de
implementar a expressão mais eficientemente. A abordagem feita nesta secção usa as leis básicas,
regras e teoremas da álgebra Booleana para manipular e simplificar uma expressão.

EXEMPLO 4.2: Simplifique cada expressão, utilizando as leis, regras e teoremas de DeMorgan
da álgebra Booleana.
a) ̅̅̅̅̅̅
𝐴 ∙ 𝐵 + 𝐴̅ ∙ 𝐵 + 𝐶̅
b) 𝑋̅ + 𝑋 ∙ 𝑌 ∙ 𝑍̅ + 𝑌̅
Solução:
a) ̅̅̅̅̅̅
𝐴 ∙ 𝐵 + 𝐴̅ ∙ 𝐵 + 𝐶̅ = 𝐴̅ + 𝐵̅ + 𝐴̅𝐵 + 𝐶̅
= 𝐴̅ + 𝐴̅𝐵 + 𝐵̅ + 𝐶̅ = 𝐴̅(1 + 𝐵) + 𝐵̅ + 𝐶̅ = 𝐴̅ + 𝐵̅ + 𝐶̅ = ̅̅̅̅̅̅
𝐴𝐵𝐶

b) 𝑋̅ + 𝑋 ∙ 𝑌 ∙ 𝑍̅ + 𝑌̅,
aplicando a lei de absorção (3) na expressão temos: 𝑋̅ + 𝑋 ∙ 𝑌 ∙ 𝑍̅ = 𝑋̅ + 𝑌 ∙ 𝑍̅
= 𝑋̅ + 𝑌 ∙ 𝑍̅ + 𝑌̅, voltando aplicar a lei de absorção (3) obtemos: 𝑋̅ + 𝑌 ∙ 𝑍̅ = 𝑋̅ + 𝑍̅
= 𝑋̅ + 𝑍̅ + 𝑌̅ = ̅̅̅̅̅̅
𝑋𝑌𝑍

4.2. Simplificação de circuitos lógicos

Podemos usar os teoremas e as regras da álgebra booleana, para simplificar circuitos lógicos, para
tal devemos obter a expressão booleana do circuito lógico e em seguida reduzi-la a uma forma
mais simples que contenha um menor número de termos ou variáveis. Essa nova expressão pode,
então, ser usada na implementação de um circuito equivalente ao circuito original, mas que contém
menos portas lógicas e conexões.

EXEMPLO 4.3: Simplifique o circuito lógico abaixo.

54
Solução:

1º Passo: Obter a expressão para a saída usando do circuito lógico:

̅̅̅̅̅̅
𝑍 = 𝐴𝐵𝐶 + 𝐴 ∙ 𝐵̅ (𝐴 ̅ ∙ 𝐶̅ )

2º Passo: Simplificar a expressão booleana:

𝑍 = 𝐴𝐵𝐶 + 𝐴 ∙ 𝐵̅ (𝐴̿ + 𝐶̿ ) = 𝐴𝐵𝐶 + 𝐴 ∙ 𝐵̅ (𝐴 + 𝐶) = 𝐴𝐵𝐶 + 𝐴 ∙ 𝐵̅ + 𝐴𝐵̅ 𝐶

𝑍 = 𝐴𝐶(𝐵 + 𝐵̅ ) + 𝐴𝐵̅ = 𝐴𝐶(1) + 𝐴𝐵̅ = 𝐴𝐶 + 𝐴𝐵̅ = 𝐴(𝐶 + 𝐵̅ )

Esse resultado não tem como ser mais simplificado. A implementação do circuito é mostrada na
figura abaixo. Como podemos ver o circuito simplificado é bem mais simples que o circuito
original.

55
EXEMPLO 4.4: Simplifique o circuito lógico abaixo.

A B C

Solução:

1º Passo: Obter a expressão para a saída usando do circuito lógico:

̅ ∙ 𝐶̅ + 𝐴̅ ∙ 𝐵̅ ∙ 𝐶 + 𝐴̅ ∙ 𝐵 ∙ 𝐶̅ + 𝐴̅ ∙ 𝐵 ∙ 𝐶 + 𝐴 ∙ 𝐵 ∙ 𝐶
̅∙𝑩
𝑌= 𝑨

2º Passo: Simplificar a expressão booleana:

Y = 𝐴 ∙ 𝐵 (𝐶 + 𝐶) + 𝐴 ∙ 𝐵(𝐶 + 𝐶) + 𝐴𝐵𝐶, C+𝐶=1

Y = 𝐴 ∙ 𝐵 + 𝐴 ∙ 𝐵 + 𝐴𝐵𝐶 = 𝐴 ∙ (𝐵 + 𝐵) + 𝐴𝐵𝐶 B+𝐵=1

𝑌 = 𝐴 + 𝐴𝐵𝐶 , aplicando a lei de absorção (3) temos:

𝑌 = 𝐴 + 𝐵𝐶

56
Esse resultado não tem como ser mais simplificado. Portanto, o circuito simplificado é mostrado
na figura abaixo, é bem mais simples que o circuito original.

A B C

57
4.3 Projectando circuitos lógicos

Qualquer problema lógico pode ser resolvido, usando o seguinte procedimento passo a passo:

 Interpretar o problema e construir uma TV para descrever o seu funcionamento;


 Escrever a expressão da soma-de-produtos (mintermos) para a saída;
 Simplificar a expressão de saída, se possível;
 Implementar o circuito para a expressão final (simplificada).

EXEMPLO 4.5: Projecte um circuito lógico com três entradas, A, B e C, cuja saída será nível
ALTO apenas quando a maioria das entradas for nível ALTO.

Solução:

1º Passo: Interpretar o problema e construir a TV.

A B C X 2º Passo: Retirar os mintermos para a saída

0 0 0 0 𝑋 = 𝐴̅ ∙ 𝐵 ∙ 𝐶 + 𝐴 ∙ 𝐵̅ ∙ 𝐶 + 𝐴 ∙ 𝐵 ∙ 𝐶̅ + 𝐴 ∙ 𝐵 ∙ 𝐶

0 0 1 0
3º Passo: Simplificar a expressão booleana:
0 1 0 0
𝑋 = 𝐴̅ ∙ 𝐵 ∙ 𝐶 + 𝐴 ∙ 𝐵̅ ∙ 𝐶 + 𝐴 ∙ 𝐵(𝐶̅ + 𝐶)
0 1 1 1
𝑋 = 𝐴̅ ∙ 𝐵 ∙ 𝐶 + 𝐴 ∙ 𝐵̅ ∙ 𝐶 + 𝐴 ∙ 𝐵 = 𝐴̅ ∙ 𝐵 ∙ 𝐶 + 𝐴(𝐵̅𝐶 + 𝐵)
1 0 0 0
𝑋 = 𝐴̅ ∙ 𝐵 ∙ 𝐶 + 𝐴(𝐶 + 𝐵) = 𝐴̅ ∙ 𝐵 ∙ 𝐶 + 𝐴𝐶 + 𝐴𝐵 = 𝐶(𝐴̅ ∙ 𝐵 + 𝐴) + 𝐴𝐵
1 0 1 1

1 1 0 1 𝑋 = 𝐶(𝐵 + 𝐴) + 𝐴𝐵 = 𝐵𝐶 + 𝐴𝐶 + 𝐴𝐵

1 1 1 1 4º Passo: Implementar o circuito para a expressão final:

58
EXEMPLO 4.6: Num escritório há um aparelho de AC, o escritório pertence a três pessoas, o
chefe e duas secretarias. O AC só é ligado se pelo menos duas pessoas estiverem de acordo.
Projecte esse circuito lógico.

Solução:

1º Passo: Interpretar o problema e construir a TV.

Sejam as variáveis booleanas A, B e C tais que: A B C X

 A – Chefe; B e C – Secretarias; 0 0 0 0
 A = B = C = 1 (Sim)
 A = B = C = 0 (Não) 0 0 1 0
 X = 1 (AC ligado)
 X = 0 (AC desligado) 0 1 0 0

2º Passo: Retirar os mintermos para a saída


0 1 1 1

𝑋 = 𝐴̅ ∙ 𝐵 ∙ 𝐶 + 𝐴 ∙ 𝐵̅ ∙ 𝐶 + 𝐴 ∙ 𝐵 ∙ 𝐶̅ + 𝐴 ∙ 𝐵 ∙ 𝐶
1 0 0 0
Simplificando a expressão booleana obtemos:
1 0 1 1
𝑋 = 𝐵𝐶 + 𝐴𝐶 + 𝐴𝐵

Implementando o circuito da expressão simplificada temos: 1 1 0 1

1 1 1 1

59
4.4 Método de mapa de Karnaugh

O mapa (ou diagrama) de Karnaugh é uma forma ordenada utilizada para simplificar uma
expressão lógica, que geralmente produz um circuito com configuração mínima. É construído com
base na tabela verdade e pode ser facilmente aplicado em funções envolvendo duas a seis variáveis.

a) Mapa de Karnaugh de duas variáveis

b) Mapa de Karnaugh de 3 variáveis

c) Mapa de Karnaugh de 4 variáveis

60
3.6.1. Regras para simplificação de funções lógicas usando o mapa de Karnaugh

1. Analisar a TV ou a função lógica na forma canónica;


2. Construir o mapa de Karnaugh de acordo com o número de variáveis da função lógica ou
da TV;
3. Preencher com o valor lógico 1, as células (quadrículos) cujo o seu correspondente na TV
possuí o valor 1;
4. Formar grupos de 1s quadrículos ou células adjacentes. A quantidade de 1s nos grupos
deve ser uma potência de base 2 (por exemplo: 1, 2, 4, 8, ...). Uma célula com o valor
lógico 1, poderá fazer parte de vários grupos.
5. Simplificar as variáveis nos agrupamentos tendo em conta a seguinte regra:
 Se num grupo os bits de uma variável não mudarem de valor, a variável permanerá no
grupo. Caso contrário, a variável será eliminada do grupo.
6. Formar a soma OR de todos os termos gerados por cada grupo.

EXEMPLO 4.7: Simplifique a seguinte função usando o mapa de Karnaugh:

̅∙𝑩
𝑭𝑨𝑩𝑪 = 𝑨 ̅+𝑨
̅ ∙𝑪 ̅∙𝑩
̅ ∙𝑪+𝑨 ̅+𝑨
̅∙𝑩∙𝑪 ̅∙𝑩∙𝑪+𝑨∙𝑩
̅ ∙𝑪+𝑨∙𝑩∙𝑪

Solução: Podemos escrever a função lógica na seguinte forma: 𝑭𝑨𝑩𝑪 = ∑(𝟎, 𝟏, 𝟐, 𝟑, 𝟓, 𝟕). Agora,
preenchemos o mapa de Karnaugh de acordo com a função lógica, e em seguida simplificamos a
mesma.

̅+𝑪
𝑭𝑨𝑩𝑪 = 𝑮𝟏 + 𝑮𝟐 = 𝑨

61
EXEMPLO 4.8: Simplifique a seguinte função usando o mapa de Karnaugh:

𝑭𝑨𝑩𝑪𝑫 = ∑(0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 13, 15 )

̅ +𝑨
𝑭𝑨𝑩𝑪 = 𝑮𝟏 + 𝑮𝟐 + 𝑮𝟑 = 𝑩 ̅𝑪 + 𝑫

3.6.2. Condições de irrelevância (don’t care)

Alguns circuitos lógicos podem ser projectados de forma que existam certas condições de entradas
para as quais não existem níveis de saída especificados, geralmente porque essas condições de
entradas nunca ocorrerrão. Em outras palavras, existem certas combinações para os níveis de
entrada em que é irrelevante (don´t care) se a saída é nível ALTO (1) ou BAIXO (0). Observa a
tabela de verdade abaixo.

A B C Z

0 0 0 0 0

1 0 0 1 0

2 0 1 0 0

3 0 1 1 x

4 1 0 0 x

5 1 0 1 1

6 1 1 0 1

7 1 1 1 1

62
Nesse caso, a saída Z não é especificada nem como 0 nem como 1, nas posições 3 e 4. Em vez de
níveis, um x é mostrado nessas posições. O x representa a condição de irrelevância (don´t care).
Mediante a decisão do projectista a variável x poderá assumir a valor lógico 0 ou 1 para qualquer
condição de irrelevância, podendo isso gerar uma expressão de saída mais simples. Nesse exemplo
assumimos X3= 0 e X4 = 1, para obtemos o melhor agrupamento no mapa de Karnaugh. Assim
teremos: Z = A.

63
Capítulo V - Circuitos Combinacionais

Circuitos combinacionais (ou circuitos combinatórios) são aqueles cujas saídas dependem apenas
da combinação dos valores das entradas em determinado instante. Neste capítulo serão estudados
os principais circuitos combinacionais utilizados em sistemas digitais: codificadores,
decodificadores, multiplexadores, demultiplexadores e circuitos aritméticos.

5.1 Codificadores

Os sistemas digitais trabalham com informações representadas por níveis lógicos zeros (0) e uns
(1), conhecidos como bits (dígitos binários). Portanto, todas as informações correspondentes a
sinais de som, vídeo e teclado (números e letras), por exemplo, devem ser convertidas em bits para
que sejam processadas por um sistema digital. Devido ao número de códigos diferentes criados
para a representação de grandezas digitais, surge há necessidade de se desenvolver circuitos
electrónicos capazes de converter um código em outro.

Um codificador é um circuito lógico que aceita um nível activo em uma das suas entradas
representando um dígito, tal como um dígito decimal ou octal e o converte em uma saída
codificada, tal como binário ou BCD. Um codificador tem um certo número de linhas de entrada,
em que só uma delas é activada por vez, e produz um código de saída de N bits, dependendo de
qual entrada está activada.

A Figura 5.1 mostra o diagrama geral para um codificador com M entradas e N saídas. Nesse caso,
as entradas são activas em nível ALTO, o que significa que estão normalmente em nível BAIXO.

Figura 5.1 Diagrama geral de um codificador

64
Pode-se determinar o número de saídas (N) de um codificador a partir do número de entradas (M),
conforme mostra a equação 5.1:

𝑀 = 2𝑁 (5.1)

Alguns codificadores que serão vistos como por exemplo, o codificador decimal para BCD (10
entradas e 4 saídas), não obedecem a equação 5.1.

EXEMPLO 5.1: Projectar um codificador de 4 entradas e duas saídas (codificador 4/2).

Solução:

a) Símbolo lógico b) TV

E A0 Entradas Saídas
n
t O1 Saídas A0 A1 A2 A3 O1 O0
A1
r N Bits
a A2 O0 1 0 0 0 0 0
d
a A3 0 1 0 0 0 1
s
Codificador 0 0 1 0 1 0
4/2

c) Funções lógicas: O1 = A2 + A3; O0 = A1 +A3; 0 0 0 1 1 1


d) Circuito lógico

A2
O1
A3

O0
A1

5.1.1 Codificador com prioridade

Se observarmos com cuidado o circuito do codificador apresentado no Exemplo 5.1,


reconheceremos as seguintes limitações: se mais do que duas entradas forem activadas
simultaneamente, a saída será imprevisível ou então não aquela que esperávamos. Essa
ambiguidade é resolvida estabelecendo uma prioridade de modo que apenas uma entrada seja
codificada, não importando quantas estejam activas em determinado instante.

65
Para isso, devemos utilizar um codificador com função de prioridade. O codificador de prioridade
funciona da seguinte maneira: se duas ou mais entradas forem activadas ao mesmo tempo, a
entrada mais elevada vai ter prioridade. Por exemplo, quando teclamos as entradas 3 e 5 em
simultâneo, o código de saída será 1012 (5).

Exemplo de circuito integrado 74147: codificador com prioridade decimal-BCD. A Figura 5.2
identifica o símbolo lógico do CI 74147 e a tabela verdade correspondente.

Figura 5.2 Símbolo lógico

Observando a tabela verdade do circuito integrado da Figura 5.2, concluímos que nove linhas de
entrada activas em nível baixo representam os números decimais de 1 a 9. A saída do CI sugerido
é o código BCD invertido, correspondente à entrada de maior prioridade. Caso todas as entradas
estejam inactivas em nível ALTO, então as saídas estarão todas em nível ALTO. As saídas ficam
normalmente em nível alto quando nenhuma entrada está activa (Figura 5.2). Lembrando de que,
x representa don´t care (termo de irrelevância).

66
Tabela 1 Codificador de prioridade CI 74147
Entradas Saídas

̅1
A ̅2
A ̅3
A ̅4
A ̅5
A ̅6
A ̅7
A ̅8
A ̅9
A ̅3
O ̅2
O ̅1
O ̅0
O

1 1 1 1 1 1 1 1 1 1 1 1 1

X X X X X X X X 0 0 1 1 0

X X X X X X X 0 1 0 1 1 1

X X X X X X 0 1 1 1 0 0 0

X X X X X 0 1 1 1 1 0 0 1

X X X X 0 1 1 1 1 1 0 1 0

X X X 0 1 1 1 1 1 1 0 1 1

X X 0 1 1 1 1 1 1 1 1 0 0

X 0 1 1 1 1 1 1 1 1 1 0 1

0 1 1 1 1 1 1 1 1 1 1 1 0

EXEMPLO 5.2: Determine os estados das saídas do CI 74147 - Codificador com prioridade
quando 𝐴̅5, 𝐴̅7 e 𝐴̅3 estiverem em BAIXO e todas as outras entradas estiverem em ALTO.

Solução:

A Tabela de Verdade do CI 74147 mostra que, quando 𝐴̅7 está BAIXO, os níveis de 𝐴̅5 e 𝐴̅3
não importam. Assim, saídas serão 1000, ou seja 𝑂̅3 = 1, 𝑂̅2 = 0, 𝑂̅1 = 0, 𝑂̅0 =
0, respectivamente o inverso de 0111(7).

Problema relacionado. Determine os estado das saídas do CI 74147 quando 𝐴̅4, 𝐴̅2 e 𝐴̅8 ,
estiverem em nível lógico 0 e as restantes entradas em nível lógico 1.

67
5.2. Display de 7 segmentos

Como podemos ver na Figura 5.3, o display de 7 segmentos é formado, na realidade por oito LEDs
separados (sete segmentos e um ponto decimal). O formato de display de sete segmento é utilizado
para exibir qualquer número de 0 a 9 ou algumas letras. Esse dispositivo é muito utilizado em
electrónica já que permite mostrar números ou dados provenientes de algum processo.

Figura 5.3 Símbolo lógico e diagrama de pinagem de um display de 7 segmentos

Há dois tipos de display de 7 segmentos de LED: ânodo comum e cátodo comum. Como podemos
observar na Figura 5.4, o ânodo comum tem todos os ânodo dos sete segmentos conectados entre
si, e da mesma forma, quando se trata de um display do tipo cátodo comum todos os cátodos são
conectados uns aos outros.

Figura 5.4 Ânodo Comum


Quando queremos, por exemplo, acender o número “0”, polarizamos diretamente os LEDs
(segmentos) que formam o dígito “0” no display, ou seja, os segmentos a, b, c, d, e, f, para ser
possível visualizar o dígito, conforme ilustrado na Figura 5.5.

68
Figura 5.5 Representação dos dígitos de 0 - 9

Figura 5.5 Representação do display mostrando o na maior parte das aplicações com displays
requer que trabalhemos com o código decimal (BCD). Uma possibilidade é utilizar o CI 4511 (ou
CI7447), que é um decodificador BCD – 7 segmentos. A Figura 5.6 mostra a representação dos
pinos desse circuito e a tabela verdade detalhada.

Figura 5.6 Representação dos pinos CI 4511 e a tabela verdade detalhada.

69
Para os códigos binários correspondentes aos dígitos maiores do que 9, todas as saídas são
colocadas em nível “0” e, consequentemente, todos os segmentos do display ficam apagados.

5.3 Decodificador

Um decodificador é um circuito lógico que aceita um conjunto de entradas que representa um


número binário e activa somente uma saída que corresponde ao número da entrada. Em outras
palavras, um circuito decodificador analisa as suas entradas, determina qual número binário está
presente e activa a saída correspondente a esse número; todas as outras saídas permanencem
desactivadas. O diagrama para um decodificador geral com N entradas e M saídas é mostrado na
Figura 5.7. Como cada uma das entradas pode ser 0 ou 1, há 2𝑁 combinações ou códigos de
entrada. Para cada uma destas combinções de entrada, apenas umas das saídas M estará activa
(ALTO); todas as outras estarão em BAIXO.

𝑀 = 2𝑁 (5.2)

Figura 5.7 Diagrama geral de um decodificador


EXEMPLO 5.3: Projectar um decodificador de duas entradas e 4 saídas (decodificador 2/4).

O3 Entradas Saídas

A Decode O2 A B O0 O1 O2 O3
Entradas
N 2:4 Saídas
0 0 1 0 0 0
B M
O1
0 1 0 1 0 0
O0
1 0 0 0 1 0

1 1 0 0 0 1

a) Símbolo lógico b) TV
̅∙𝐵
c) Funções lógicas: 𝑂0 = 𝐴 ̅ ∙ 𝐵; 𝑂2 = 𝐴 ∙ 𝐵
̅; 𝑂1 = 𝐴 ̅; 𝑂3 = 𝐴 ∙ 𝐵

70
d) Circuito lógico

5.3.1 Decodificador de BCD para 7 segmentos

O decodificador de BCD para 7 segmentos aceita o código BCD em suas entradas e fornece saídas
para accionar displays de 7 segmentos para produzir uma leitura decimal. O diagrama lógico para
um decodificador de 7 segmentos básico é mostrado na Figura 5.8.

Figura 5.8 Símbolo lógico

5.3.2 Decodificador de BCD para 7 segmentos (CI 7447)

O CI 74LS47 é um exemplo de um CI que decodifica uma entrada BCD e acciona um display de


7 segmentos. Além dessa capacidade de decodificação e accionamento de segmento, o CI 7447
tem algumas características adicionais conforme indicado no símbolo lógico e o diagrama de pinos
visto na Figura 5.9.

71
Figura 5.9 Diagrama de pinos e símbolo lógico

Conforme indicado pelos pequenos círculos no símbolo lógico, todas as saídas (de a até g) são
activas em nível baixo, bem como as funções (teste de lâmpada - ̅̅
𝐿𝑇̅̅), 𝑅𝐵𝐼
̅̅̅̅̅ (entrada de
̅̅̅̅̅̅). As saídas podem
̅̅̅ /𝑅𝐵𝑂
apagamento) e (entrada de apagamento/saída de apagamento – 𝐵𝐼
accionar directamente um display de 7 segmentos do tipo ânodo comum.

̅̅̅̅) - quando um nível BAIXO é aplicado na entrada ̅𝐿𝑇


Teste de Lâmpada (𝐿𝑇 ̅̅̅ e 𝐵𝐼 ̅̅̅̅̅̅for nível
̅̅̅ /𝑅𝐵𝑂
ALTO, todos os 7 segmentos do display são ligados. O teste de lâmpada é usado para verificar se
algum segmento está queimado.

5.3.3 Decodificador de BCD para Decimal

A Figura 5.10 (a) mostra o diagrama lógico para o decodificador BCD para decimal (CI 7442), ou
seja, é um decodificador que possui 4 entradas e 10 saídas. Cada saída vai para nível BAIXO
apenas quando a entrada BCD correspondente é aplicada. Por exemplo, 𝑂̅8 irá para nível BAIXO
apenas quando for DCBA = 1000 ou seja D=1, C=0, B=0, A=0.
Para as combinações de entrada que forem inválidas para BCD, nenhuma das saídas será activada.

72
a) Símbolo lógico

Por outro lado, esse decodificador pode ser usado para implementar funções lógicas de 1, 2 e 3
variáveis. Por exemplo, quando usamos o CI 7442 para implementar Entradas Saída Activa
uma função de 3 variáveis devemos conectar a entrada BCD mais D C B A
significativa em nível BAIXO e as restantes são conectadas as 0 0 0 0 ̅0
O
variáveis booleanas. As saídas do decodificador são conectadas ̅1
0 0 0 1 O
numa porta NAND de acordo com a função booleana na forma
0 0 1 0 ̅2
O
canónica ou TV. Um exemplo ajudará a esclarecer essa aplicação.
0 0 1 1 ̅3
O
0 1 0 0 ̅4
O
0 1 0 1 ̅5
O
0 1 1 0 ̅6
O
0 1 1 1 ̅7
O
1 0 0 0 ̅8
O
1 0 0 1 ̅9
O
1 0 1 0 Nenhuma
1 0 1 1 Nenhuma
1 1 0 0 Nenhuma
1 1 0 1 Nenhuma
1 1 1 0 Nenhuma
1 1 1 1 Nenhuma

73
EXEMPLO 5.4 Implemente a seguinte função lógica 𝐹𝐴𝐵𝐶 = ∑(1,3,6,7), usando o CI 7442.
Compare esse método com uma implementação que usa portas lógicas discretas.

Solução:
Observe a partir da função lógica FABC é nível 1, nas posições 1, 3, 6 e 7. Isso significa que as
saídas do decodificador 4/10 - CI 7442, devem ser conectadas numa porta NAND uma vez que as
saídas desse decodificador são activas em nível BAIXO. Em relação as entradas BCD, conecta-se
a entrada mais significativa em nível BAIXO e as restantes são ligadas as variáveis booleanas,
conforme mostra a Figura abaixo.

0
1
D (MSB)
2

GND 3
Fabc
A C 4
CI 7442
B B 5

6
C A
7

8
9

Podemos obter a expressão de saída do circuito:


̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅̅̅̅̅̅̅̅̅
𝐹𝐴𝐵𝐶 = (𝐴 ̅̅̅̅̅̅̅̅̅
̅ ∙ 𝐵̅ ∙ 𝐶) ∙ (𝐴 ̅̅̅̅̅̅̅̅̅
̅ ∙ 𝐵 ∙ 𝐶) ∙ (𝐴 ∙𝐵∙𝐶 ̅ ) ∙ (𝐴
̅̅̅̅̅̅̅̅̅
∙ 𝐵 ∙ 𝐶), usando o teorema de DeMorgan
temos:
̅̅̅̅̅̅̅̅̅̅̅̅̅
̅ ∙ 𝐵̅ ∙ 𝐶 ) + ̅̅̅̅̅̅̅̅̅̅̅̅̅
̅̅̅̅̅̅̅̅̅̅ ̅ ∙ 𝐵 ∙ 𝐶 ) + ̅̅̅̅̅̅̅̅̅̅̅̅̅
̅̅̅̅̅̅̅̅̅̅ ̅̅̅̅̅̅̅̅̅̅
𝐹𝐴𝐵𝐶 = (𝐴 (𝐴 (𝐴 ∙ 𝐵 ∙ 𝐶̅ ) + ̅̅̅̅̅̅̅̅̅̅̅̅̅
(̅̅̅̅̅̅̅̅̅̅
𝐴 ∙ 𝐵 ∙ 𝐶)
𝐹𝐴𝐵𝐶 = 𝐴̅ ∙ 𝐵̅ ∙ 𝐶 + 𝐴̅ ∙ 𝐵 ∙ 𝐶 + 𝐴 ∙ 𝐵 ∙ 𝐶̅ + 𝐴 ∙ 𝐵 ∙ 𝐶

A implementação dessa função com portas lógicas necessitaria de quatro portas AND de 3
entradas, uma porta OR de 4 entradas e três inversores, a menos que essa expressão possa ser
simplificada. Portanto, quando implementamos funções lógicas usando o CI 7442 reduzimos
bastante o número de portas lógicas (CIs), tornando mais muito fáceis as alterações de projectos.

Problema relacionado: Use o CI 7442 para implementar a seguinte expressão:


𝐹𝐴𝐵𝐶 = ∑(0,4,5,7)

74
5.4 Multiplexadores e Demultiplexadores
5.4.1 Multiplexadores

Um sistema de som moderno pode ter uma chave que selecciona música de uma das quatro fontes:
compact disc (CD), DVD, rádio ou uma pendrive ligada na entrada USB. Essa chave selecciona
um dos sinais electrónicos dessas quatro fontes e envia para o amplificador de potência e alto-
falantes. Em outras palavras, isso é o que um multiplexador (MUX) faz: selecciona um dos
diversos sinais de entrada e o envia para a saída.

Um multiplexador ou selector de dados é um circuito lógico que recebe diversos dados digitais
de entrada e selecciona um deles, em um determinado instante, para transferi-lo para a saída. O
envio do dado de entrada desejado para saída é controlado pelas entradas de selecção.

A relação entre as entradas de selecção (n) e as entradas de dados (m) é mostrada na equação
abaixo.
𝑚 = 2𝑛 (5.3)

EXEMPLO 5.5 Projectar um multiplexador de 2 entradas de selecção.

Solução: Uma vez que temos duas entradas de selecção (n = 2), a partir equação 5.3 podemos
determinar o número de entradas de dados (m):

𝑚 = 2𝑛 = 22 = 4 (𝐸𝑛𝑡𝑟𝑎𝑑𝑎𝑠 𝑑𝑒 𝑑𝑎𝑑𝑜𝑠)

a) Símbolo lógico b) TV

MUX
Entradas de Saída de
D0
selecção de dados dados
Entradas D1
de Dados S1 S0 Y
(m) D2 Saídas de
Y 0 0 D0
Dados
D3
0 1 D1
S1 S0
1 0 D2

1 1 D3
Entradas de Selecção (n)

c)Função lógica: 𝐘 = 𝐒̅𝟏 ∙ 𝐒̅𝟎 ∙ 𝐃𝟎 + 𝐒̅𝟏 ∙ 𝐒𝟎 ∙ 𝐃𝟏 + 𝐒𝟏 ∙ 𝐒̅𝟎 ∙ 𝐃𝟐 + 𝐒𝟏 ∙ 𝐒𝟎 ∙ 𝐃𝟎

75
d)Diagrama lógico
S1 S0

D0

D1
Y

D2

D3

5.4.1.1 Multiplexador de dados de 8 entradas (CI 74151)

A Figura 5.11 (a) mostra o diagrama lógico para o multiplexador de oito entradas de dados – CI
74151. Esse MUX tem uma entrada de habilitação 𝐸̅ (ENABLE) e fornece ambas saídas, normal
(Y) e invertida (𝑌̅). Quando 𝑬
̅ = 𝟎, as entradas de selecção S2S1S0 seleccionam uma das entradas
̅ = 𝟏, o multiplexador é
de dados (de D0–D7) para ser transferida para a saída Y. Quando 𝑬
desabilitado, de forma que Y = 0 independetemente do código na entrada de selecção. Essa
operação é resumida na TV do CI 74151
Entradas Saída

𝐄̅ S2 S1 S0 Y
S2 D0 D1 D2 D3 D4 D5 D6 D7
1 X X X 0
S1
MUX de 8 entradas de Dados
0 0 0 0 D0 74151
Y
S0
0 0 0 1 D1
E
0 0 1 0 D2 Figura 5.11 Diagrama lógico

0 0 1 1 D3

0 1 0 0 D4

0 1 0 1 D5

0 1 1 0 D6

0 1 1 1 D7

76
5.4.1.2 Multiplexador como gerador de funções lógicas

Multiplexadores podem ser usados para implementar funções lógicas directamente da TV (ou da
função na forma canónica) sem a necessidade de simplificação. Quando um MUX é usado com
essa finalidade, as entradas de selecção são usadas como variáveis lógicas, e cada entrada de dados
é conectada em nível ALTO ou BAIXO conforme necessário para satisfazer a TV (ou a função na
forma canónica). O exemplo a seguir ajudará a esclarecer essa aplicação.

EXEMPLO 5.6 Implemente a função lógica 𝐹𝐴𝐵𝐶 = ∑(1,3,6,7) usando um CI 74LS151


(multiplexador de dados de 8 entradas).

Solução:

Observe a partir da função lógica que Y é nível 1 para as seguintes nas combinações 1,3,6 e 7.
Para todas as outras combinações, Y é nível 0. Assim sendo as entradas de dados D1, D3, D6 e D7
são levadas para nível ALTO (+5V), pois correspondem às entradas do MUX que são
seleccionadas pelas variáveis de selecção e que aparecerão na saída conforme estabelecido pela
função. As demais variáveis são levadas para o nível BAIXO (GND).

+5V

E D0 D1 D2 D3 D4 D5 D6 D7
GND

A S2
MUX de 8 entradas de Dados
Y
B S1 74151

C S0
𝑌 = ∑(1,3,6,7)

Problema relacionado Use o CI 74151 para implementar a expressão: 𝐹𝐴𝐵𝐶 = ∑(0,4,5,7)

77
O Exemplo 5.6 mostra como um seletor de dados de 8 entradas (CI 74151) pode ser usado como
um gerador de função lógica para três variáveis. Na realidade, esse dispositivo também pode ser
usado como um gerador de função lógica de 4 variáveis fazendo uso de um dos bits (variável
menos significativa – D) em conjunto com as entradas de dados. Uma tabela-verdade de 4
variáveis tem 16 combinações das variáveis de entrada. Quando um selector de dados de 8 bits é
usado, cada entrada é seleccionada duas vezes: a primeira vez quando D é nível 0 e a segunda vez
quando D é nível 1. Com isso em mente, as regras a seguir podem ser aplicadas (Y é a saída e D é
o bit menos significativo):

1. Se Y = 0 nas duas vezes em que uma dada entrada for seleccionada por uma certa
combinação de variáveis de entrada, ABC, conecte essa entrada de dados em GND (0).
2. Se Y = 1 nas duas vezes em que uma dada entrada for seleccionada por uma certa
combinação de variáveis de entrada, ABC, conecte essa entrada de dados em +Vcc (1).
3. Se Y for diferente nas duas vezes em que uma dada entrada de dados for seleccionada por
uma certa combinação de variáveis de entrada, ABC, e se Y = D, conecte essa entrada de
dados em D.
4. Se Y for diferente nas duas vezes em que uma dada entrada de dados for seleccionada por
̅ ., conecte essa entrada de
uma certa combinação de variáveis de entrada, ABC, e se Y = 𝐷
̅.
dados em 𝐷

78
EXEMPLO 5.7: Implemente a função lógica dada pela tabela abaixo usando um CI 74LS151
(multiplexador de dados de 8 entradas). Compare esse método com uma implementação que usa
portas lógicas discretas.

Solução:

Entrada Entradas Saída


de
dados A B C D Y

0 0 0 0 0
D0 0 0 0 1 1
0 0 1 0 1
D1 0 0 1 1 0
0 1 0 0 0
D2 0 1 0 1 1
0 1 1 0 1
D3 0 1 1 1 1
1 0 0 0 1
D4 1 0 0 1 0
Obtendo a forma de mintermos temos:
1 0 1 0 1
𝑌 = 𝐴̅𝐵̅𝐶̅ 𝐷 + 𝐴̅𝐵̅𝐶𝐷̅ + 𝐴̅𝐵𝐶̅ 𝐷 + 𝐴̅𝐵𝐶𝐷
̅ + 𝐴̅𝐵𝐶𝐷 + 𝐴𝐵̅𝐶̅ 𝐷
̅ + 𝐴𝐵̅𝐶𝐷
̅
D5 1 0 1 1 0 + 𝐴𝐵𝐶̅ 𝐷
̅ + 𝐴𝐵𝐶̅ 𝐷 + 𝐴𝐵𝐶𝐷
1 1 0 0 1
Caso fosse implementado com portas lógicas, a função necessitaria
D6 1 1 0 1 1 de dez portas AND de 4 entradas, uma porta OR de 10 entradas e
1 1 1 0 0 dezanove portas NOTs, embora uma possível simplificação reduzisse
D7 1 1 1 1 1 essas especificações.

EXEMPLO 5.8 Use CIs 74LS151 e qualquer outra lógica necessária para multiplexar 16 linhas
de dados em uma única linha de dados de saída.

Solução:

Esse circuito tem um total de 16 entradas de dados, oito aplicadas em cada MUX. As duas saídas
do multiplexador são combinadas em uma porta OR para gerar uma única saída X. O circuito

79
funciona como um multiplexador de 16 entradas. As quatro entradas de selecção
S3S2S1S0seleccionam uma das 16 entradas para transferi-la para a saída X.

A entrada S3 determina o multiplexador que é habilitado. Quando S3 = 0, o multiplexador da parte


superior é habilitado, e as entradas S2S1S0 determinam a entrada de dados que será transmitida
para a saída passando pela porta OR até X. Quando S3 = 1, o multiplexador da parte inferior é
habilitado, e as entradas S2S1S0 seleccionam uma das entradas de dados para passar a saída X.

5.5 Demultiplexador (Distribuidor de dados)

Um demultiplexador (DEMUX) basicamente inverte a função da multiplexação. Ele recebe


informações digitais a partir de uma linha e as distribui para um determinado número de linhas de
saída. A entrada de dados (I) é enviada apenas para uma das saídas, como determinado pelo código
de selecção de entrada, ou seja o código da entrada de selecção determina para qual saída de dados
a informação presente na entrada de DADO (I) será enviado. Por essa razão, o demultiplexador
também é conhecido como distribuidor de dados.

80
5.5.1 Demultiplexador de 1 para 4

A Figura 5.12 (a) mostra o diagrama lógico para um DEMUX que distribui uma linha de entrada
de dados para 4 linhas de saída. A tabela de verdade resume a operação do demux 1:4.

Código de Saídas de Dados

O3 Selecção

Demux O2 S1 S0 O0 O1 O2 O3
Entradas 1:4 Saídas de
I
de dados Dados 0 0 I 0 0 0
(I) O1
0 1 0 I 0 0
S1 S0 O0
1 0 0 0 I 0

1 1 0 0 0 I

a) Símbolo lógico b) TV

c) Funções lógicas: d) Circuito lógico

𝑂0 = 𝐼 ∙ 𝑆̅1 ∙ ̅̅̅
𝑆0;

𝑂1 = 𝐼 ∙ 𝑆̅1 ∙ 𝑆0 ;

𝑂2 = 𝐼 ∙ 𝑆1 ∙ ̅̅̅
𝑆0;

𝑂3 = 𝐼 ∙ 𝑆1 ∙ 𝑆0 ;

5.6. Circuitos Aritméticos

O microprocessador, componente primodial de um computador, tem em sua arquictetura interna


uma ULA (Unidade Lógica Aritmética), na qual são feitas as operações lógicas e aritméticas.
Associando portas lógicas de maneira conveniente, podemos obter circuitos que realizam
operações aritméticas. Sendo que, os circuitos aritméticos mais comuns são: os somadores,
subtradores, multiplicadores.

81
5.6.1. Somadores básicos

5.6.1.1. O Meio-Somador

O meio-somador (Half-Adder, HA) aceita dois dígitos binários em suas entradas (A e B) e produz
dois dígitos binários em suas saídas, um bit de soma (∑) e um bit de transporte de saída (Carry out
- Cout).

a) Símbolo lógico b) TV

Entradas Saídas

A B ∑ Cout

0 0 0 0

0 1 1 0

c) Funções lógicas 1 0 1 0

∑ = 𝐴̅ 𝐵 + 𝐴𝐵̅ = 𝐴⨁𝐵 1 1 0 1
𝐶𝑜𝑢𝑡 = 𝐴𝐵 d) Circuito lógico
5.6.1.2. Somador Completo
O somador-completo (Full-Adder, FA) aceita dois bits de entrada (A e B) e um transporte de
entrada (Cin), e gera uma saída de soma (∑) e um transporte de saída (Cout).

A B Cin ∑ Cout

0 0 0 0 0

0 0 1 1 0

0 1 0 1 0

a) Símbolo lógico b) TV 0 1 1 0 1

c) Funções lógicas 1 0 0 1 0
∑ = 𝐴̅𝐵̅ 𝐶𝑖𝑛 + 𝐴̅𝐵 ̅̅̅̅̅
𝐶𝑖𝑛 + 𝐴𝐵̅ ∙ ̅̅̅̅̅
𝐶𝑖𝑛 + 𝐴𝐵𝐶𝑖𝑛 1 0 1 0 1
= 𝐶𝑖𝑛(𝐴̅ ∙ 𝐵̅ + 𝐴𝐵) + ̅̅̅̅̅
𝐶𝑖𝑛 ∙ (𝐴̅𝐵 + 𝐴𝐵̅ )
1 1 0 0 1
∑ = 𝐶𝑖𝑛 ∙ ̅̅̅̅̅̅̅̅̅̅̅ ̅̅̅̅̅ ∙ (𝐴 ⊕ 𝐵) = 𝐶𝑖𝑛 ⊕ (𝐴 ⊕ 𝐵)
(𝐴 ⊕ 𝐵) + 𝐶𝑖𝑛
1 1 1 1 1
𝐶𝑜𝑢𝑡 = 𝐴̅𝐵𝐶𝑖𝑛 + 𝐴𝐵̅ 𝐶𝑖𝑛 + 𝐴𝐵 ∙ ̅̅̅̅̅
𝐶𝑖𝑛 + 𝐴𝐵𝐶𝑖𝑛

82
𝐶𝑜𝑢𝑡 = 𝐶𝑖𝑛(𝐴̅𝐵 + 𝐴𝐵̅ ) + 𝐴𝐵(𝐶𝑖𝑛
̅̅̅̅̅ + 𝐶𝑖𝑛) = 𝐶𝑖𝑛(𝐴⨁𝐵) + 𝐴𝐵
d) Circuito lógico

5.6.2. Somador binário de 4 bits em circuito integrado

Diversos somadores binários de 4 bits estão na forma de CIs. O mais comum é um CI 7483 é um
dos somadores de quatro bits mais comuns. A Figura 5.13 mostra o símbolo funcional para o
somador de 4 bits.
As entradas desse CI são dois números de quatros bits, A = A4A3A2A1 e B = B4B3B2B1 e o seu
carry de entrada (C0 ou Cin) na posição de LSB. As saídas são os bits do resultado da soma e o
carry de saída (C4 ou Cout). Os bits da soma são denominados S4S3S2S1. A denominação S é uma
alternativa comum para a denominação da letra grega ∑ para um bit da soma.

Número Soma de
binário A 4 bits

Número
binário B

Transporte de entrada Transporte de saída

Figura 5.13 Símbolo lógico

83
Quando somamos números binários com mais de um bit, cada coluna gera um bit de soma e um
bit de transporte (que pode ser 1 ou 0) para a próxima coluna à esquerda, conforme ilustrado a
seguir:
A4 A3 A2 A1
+ B4 B3 B2 B1
C4 S4 S3 S2 S1

Quando utilizamos o CI 7483 para somar a entrada de transporte do somador (C0) é sempre
conectada em GND (nível lógico 0), porque não existe transporte de entrada na posição do bit
menos significativo.
EXEMPLO 5.9: Use o CI 7483 (somador binário de 4 bits) para somar A = 1100 e B = 0110.
Solução:
1 1
Somando A e B temos:
1 1 0 0
A4 A3 A2 A1 B4 B3 B2 B1 + 0 1 1 0
A= 1 1 0 0 B= 0 1 1 0 1 0 0 1 0
C4 S 4 S3 S2 S1

5.6.3. Expansão de um Somador

Um CI 7483 (somador de 4 bits) pode ser expandido para realizar uma adição de dois números de
8 bits usando dois CIs . A entrada de transporte do somador menos significativo (Cin/C 4) é
conectada em GND porque não existe transporte de entrada na posição do bit menos significativo
e o transporte de saída do somador menos significativo é conectada na entrada de transporte do
somador mais significativo, conforme mostra a Figura 5.14. Esse processo é conhecido como
conexão em cascata. Observe que, nesse caso, o transporte de saída é indicado por C8 porque ele

84
é gerado a partir da posição do oitavo bit. O somador menos significativo é o que soma os quatro
bits menos significativos, de ordem inferior, e o somador mais significativo é o que soma os quatro
bits mais significativos, de ordem superior, do número de 8 bits.

A8 A7 A6 A5 A4 A3 A2 A1

+ B8 B7 B6 B5 B4 B3 B2 B1

C8 S8 S7 S6 S5 S4 S3 S2 S1

Figura 5.14 Associação em cascata de dois somadores de 4 bits para construir um somador de 8 bits.

EXEMPLO 5.10: Mostre como dois somadores 7483 podem ser conectados para formar um
somador paralelo de 8 bits. Mostre os bits de saída para os seguintes números de entrada de 8 bits:
A = 1011 1001 e B= 1001 1110

Solução:

Dois somadores paralelos de 4 bits (7483) são usados para implementar um somador de 8 bits. A

única conexão entre os dois CIs é a saída de transporte do somador menos significativo com a
entrada de transporte do somador mais significativo, como mostra a Figura abaixo. O pino 7 do
somador menos significativo é conectado em GND (sem transporte de entrada).

A8 A7 A6 A5 A4 A3 A2 A1 B8 B7 B6 B5 B 4 B3 B2 B1

A= 1 0 1 1 1 0 0 1 B= 1 0 0 1 1 1 1 0

85
Somando A e B temos:

1 1 1 1

1 0 1 1 1 0 0 1

+ 1 0 0 1 1 1 1 0

1 0 1 0 1 0 1 1 1

C8 S 8 S7 S6 S5 S4 S3 S2 S1

5.6.4. Somador/Subtrador de 4 bits

O circuito somador/subtrador de 4 bits, mostrado na Figura 5.15, possuí uma entrada adicional
denominada entrada de controlo. Quando esta entrada estiver em nível BAIXO, o circuito vai
comportar-se como somador. Quando a entrada de controlo estiver em nível ALTO, o circuito
funciona como subtrador. As portas Exclusive-OR, se comportam como portas NOTs. O
diminuendo (B) é invertido e a entrada Cin (C0) fica em nível ALTO, ou seja é o mesmo que
somar 1 ao complemento de 1 (C1) do diminuendo.
̅ +𝟏
𝑨−𝑩=𝑨+𝑩

86
Figura 5.15 Circuito somador/subtrador de 4 bits

EXEMPLO 5.11: Use o CI 7483 para subtrair A = 0111 e B = 0101.


Solução:
1º Metódo:
Para o circuito somador/subtrador funcionar como um subtrador a entrada de controlo deve ser
ligada em nível lógico 1. As portas XORs, se comportarão como inversores (portas Nots), isto é,
invertendo os bits do diminuendo (B), dessa forma obtendo o complemento de 1 do diminuendo
(𝐵̅). A entrada de transporte Co temos um nível 1, assim nas entradas do somador somará: A + 𝐵̅+
1. 1 Cin
A4 A3 A2 A1 B4 B3 B2 B 1 0 1 1 1 A
A= 0 1 1 1 B= 0 1 0 1 + 0 1 1 0 𝐵̅
1 0 0 1 0
C4 S 4 S 3 S 2 S 1

87
2º Metódo:
Para subtrair os números A e B, podemos utilizar o circuito abaixo. Em que as portas XORs são
substituídas por portas NOTs, e é aplicada um nível ALTO na entrada de transporte, C0.

88
5.6.5 Comparadores

Um comparador é um circuito combinatório que compara dois números e indica se eles são iguais
ou não. A seguir mostra-se o símbolo lógico, a TV, as funções lógicas e o circuito lógico de um
comparador de dois números de um bit de cada um.

a) Símbolo lógico b) TV

S0 S1 S2
A B (A=B) (A>B) (A<B)
0 0 1 0 0

0 1 0 0 1

1 0 0 1 0

1 1 1 0 0

S0 é a saída A=B, S1 é a saída A>B, S2 é a saída A<B


c) Funções lógicas
̅;
𝑺𝟎 = 𝑨⨀𝑩 ; 𝑺𝟏 = 𝑨𝑩 ̅𝑩
𝑺𝟐 = 𝑨
d) Circuito lógico

89
5.5.6.1 Comparador de 4 bits (CI 7485)

O CI 74HC85 é um comparador que também é comercializado em outras famílias de CIs.


O símbolo lógico é mostrado na Figura 5.16.

Entradas

Saídas

Entradas de
Expansão

Figura 5.16 Símbolo lógico do CI 74HC85

Observe que esse dispositivo tem todas as entradas e as saídas do comparador generalizado

abordado anteriormente e, além disso, tem três entradas para conexão em cascata: IA<B, IA=B, A

IA>B. Essas entradas permitem que diversos comparadores sejam conectados em cascata para

comparação de números com qualquer quantidade de bits maior que quatro. Para expandir o

comparador, as saídas A < B, A = B e A > B do comparador menos significativo são conectadas

às entradas de conexão em cascata correspondentes do próximo comparador de ordem maior. O

comparador menos significativo tem que ter um nível ALTO na entrada A = B e um nível BAIXO

nas entradas A < B e A > B.

90
EXEMPLO 5.12: Determine as saídas A = B, A > B e A < B, do comparador do CI 7485 para os
números de entradas: A = 1001 e B = 0100.
Solução:

A3 A2 A1 A0 B3 B2 B1 B0
A= 1 0 0 1 B= 0 1 0 0

O comparador tem que ter um nível ALTO (1) na entrada IA = B e um nível BAIXO (0)
nas entradas IA < B e IA > B. O número nas entradas A é 1001 e o número nas entradas B é 0100.
A saída A > B é nível ALTO e as outras saídas são nível BAIXO.

91
Capítulo VI Circuitos Sequenciais

O campo da Electrónica Digital é basicamente dividido em duas partes: circuitos combinacionais


e circuitos sequenciais. Os circuitos combinacionais, como vimos, são circuitos lógicos, nos quais
as saídas, em qualquer instante de tempo, dependem dos níveis presentes nas entradas no instante
considerado. Quaisquer condições de entrada anteriores não têm efeito algum nas saídas actuais,
pois os circuitos combinacionais não têm memória.

Os circuitos sequenciais têm saídas dependentes de entradas e/ou de seus estados anteriores que
permanecem armazenados, sendo, geralmente, que operam sob o comando de uma sequência de
pulsos denominada clock (relógio). Neste capítulo, trataremos o estudo de Flip-Flop (FF) que é o
elemento de memória mais importante e de circuitos nos quais eles fazem o papel de elemento
principal.

6.1 Flip-Flop

De forma geral, podemos representar o Flip-Flop como um bloco onde temos 2 saídas: Q (saída
normal) e 𝑄̅ (saída invertida), entradas para as variáveis e uma entrada de controlo (clock). A saída
Q será a principal do bloco. A Figura 6.1 ilustra um flip-flop genérico.

Figura 6.1 Flip-flop genérico.


Este dispositivo possui basicamente dois estados de saídas. Para o flip-flop assumir um destes
estados é necessário que haja uma combinação das variáveis e do pulso de controlo. Após este
pulso, o flip-flop permanecerá neste estado até a chegada de um novo pulso de clock e, então, de
acordo com as variáveis de entrada, mudará ou não de estado. Os dois estados possíveis do flip-
flop são:

̅ =𝟎
1. 𝑸 = 𝟏 → 𝑸
̅ =𝟏
2. 𝑸 = 𝟎 → 𝑸
̅ = 𝟏, não é permitido.
Nota: O estado do flip-flop: 𝑸 = 𝟏 → 𝑸

92
6.1.1 Flip-flop RS básico

Primeiramente, vamos analisar o flip-flop RS básico (sem relógio), construído a partir de portas
NANDs, e portas inversoras cujo circuito é mostrado na Figura 6.2.

Figura 6.2 Flip-flop RS básico

Notamos que estes elos de realimentação fazem com que as saídas sejam injectadas juntamente
com as variáveis de entrada, ficando claro, então, que os estados que as saídas irão assumir
dependerão de ambas.

A entrada S é denominada Set, porque quando accionada (nível 1), passa a saída para 1 e a entrada
R é denominada Reset, porque quando accionada (nível 1), passa a saída para 0. A seguir,
apresentamos o resumo flip-flop básico do flip-flop RS básico com portas NANDs:

a) Símbolo lógico b) TV

S R Qf Modo de operação do FF

0 0 Qa Mantém o estado anterior

0 1 0 Reset

c) Circuito lógico 1 0 1 Set

1 1 Não Permitido

93
Este circuito irá mudar de estado apenas no instante em que mudam as variáveis de entrada.
Veremos como é o circuito de um flip-flop RS que tem sua mudança de estado controlada pela
entrada de clock.

EXEMPLO 6.1 Apresente os valores binários da saída normal (Q) do flip-flop RS da Fig 6.3.

Figura 6.3 Flip-flop RS básico


Solução:

Os valores binários da saída normal (Q) do flip-flop RS básico para cada pulso de entrada é a
seguinte:

Pulso a = 0; pulso b = 1 (estado proibido); pulso c = 1; pulso d = 1 (estado proibido);


pulso e = 1; pulso f = 1 (estado proibido); pulso g = 0 ; pulso h = 1 (estado proibido);
pulso i = 1; pulso j = 1.

EXEMPLO 6.2 Apresente o modo de operação do flip-flop RS para cada pulso de entrada
mostrado na Figura 6.3.

Solução:

Os modos de operação do flip-flop RS para cada pulso de entrada na figura 6.3 são:

Pulso a = reset; pulso b = estado proibido; pulso c = set; pulso d = estado proibido; pulso e = set;
pulso f = estado proibido; pulso g = reset; pulso h = estado proibido; pulso i = mantém o estado
anterior; pulso j = set.

6.1.2 Flip-Flop RS com Entrada de clock

Para que o flip-flop RS básico seja controlado por uma sequência de clock, é necessário trocarmos
os dois inversores por portas NANDs, e às outras entras destas injectamos o clock. O circuito com
essas modificações, é mostrado na Figura 6.4.

94
Figura 6.4 Flip-flop RS com entrada clock

Neste circuito, quando a entrada do clock for igual a 0, o flip-flop irá permanecer no seu estado,
mesmo que variem as entradas S e R. Isso poder confirmado pela análise do circuito, onde
concluímos que para o clock = 0, as saídas das portas NANDs de entrada serão sempre iguais a 1,
independentemente dos valores assumidos por S e R. A Figura abaixo ilustra esta situação.

Quando a entrada clock assumir o valor 1, o circuito irá comportar-se como um flip-flop RS básico,
porque as portas NANDs de entrada funcionarão como inversores do circuito anteriormente visto.

A tabela 6.4 resume a operação deste tipo de flip-flop em função da entrada clock.

CLK Qf

0 Qa

1 RS Básico

De maneira geral, podemos concluir que o circuito irá funcionar quando a entrada de clock assumir
o valor e manterá travada esta saída quando a entrada clock passar para 0. O flip-flop RS pode ser

95
representado pelo bloco visto na Figura 6.4. A seguir é mostrado o resumo do flip-flop RS com
clock. b) TV

CLK S R Q

0 X X Qa

0 0 0 Qa

1 0 1 0
a) Símbolo lógico X – don´t care
1 1 0 1

1 1 1 Não permitido

Sinais de clock
Os sistemas digitais podem operar de modo assíncrono ou de modo síncrono. Nos sistemas
assíncronos, as saídas dos circuitos lógicos podem mudar de estado a qualquer momento em que
uma ou mais entradas mudem de estado. Um sistema assíncrono é geralmente mais difícil de se
projectar e depurar do que um sistema síncrono. Nos sistemas síncronos, um sinal, comummente
chamado de clock, determina os momentos nos quais qualquer uma das saídas pode mudar de
estado. Este sinal de clock é geralmente um trem de pulsos rectangulares ou onda quadrada, como
pode ser visto na Figura 6.5.

Figura 6.5 Sinais de Clock


O sinal de clock é distribuído para todas as partes dos sistemas, e a maioria das saídas (senão
todas) do sistema pode mudar de estado somente quando o clock faz transição. As transições
(também chamadas de borda) estão indicadas na Figura 6.5. Recordando que a distância horizontal
é o tempo e a distância vertical é a tensão. Quando o clock faz uma transição de 0 para 1, esta é
chamada transição positiva (subida). Quando o clock faz uma transição de 1 para 0 é chamada
de transição negativa (descida).

96
O flip-flop com clock têm uma entrada de clock que geralmente é chamada de CLK. Na maioria
dos flip-flops com clock é disparada por transição, o que significa que ela está activada pela
transição do sinal presente nesta entrada. Isto é indicado por um pequeno triângulo na entrada
CLK. Na Figura 6.6a, a entrada CLK é activada apenas quando uma transição positiva ocorre, não
sendo activada em nenhum outro momento. Na Figura 6.6b, a entrada CLK é activada apenas por
uma transição negativa, que é simbolizada pela presença de uma pequena bolha.

Figura 6.6 Flip-flop com clock têm uma entrada clock que pode ser disparada por (a) transição positiva ou (b)
transição negativa

EXEMPLO 6.3 Determine as formas de onda da saída Q do flip-flop mostrado na Figura 6.7 para
as entradas S, R e CLK mostradas na Figura 6.8(a). Considere que o flip-flop disparado por
transição positiva esteja inicialmente resetado.

Solução:
1. No momento do pulso 1 de clock, S é nível BAIXO e R é nível BAIXO, assim Q não muda
de estado.
2. No momento do pulso 2 de clock, S é nível BAIXO e R é nível ALTO, assim Q permanece
em nível BAIXO (RESET).
3. No momento do pulso 3 de clock, S é nível ALTO e R é nível BAIXO, assim Q vai para
nível ALTO (SET).
4. No momento do pulso 4 de clock, S é nível BAIXO e R é nível ALTO, assim Q vai para
nível BAIXO (RESET).
5. No momento do pulso 5 de clock, S é nível ALTO e R é nível BAIXO, assim Q vai para
nível ALTO (SET).
6. No momento do pulso 6 de clock, S é nível ALTO e R é nível BAIXO, assim Q permanece
em nível ALTO.

97
Figura 6.8(a)

6.1.3 Flip Flop JK

O flip-flop JK (Jack Kilby) nada mais é que um flip-flop RS realimentado da maneira mostrada
na Figura 6.9.

Figura 6.9 Flip-flop RS realimentado para formar o flip-flop JK


O símbolo lógico e a tabela de verdade do flip-flop JK, são mostrados abaixo:

a) Símbolo lógico do JK b) TV
J K Q Modo de operação
0 0 Qa Mantém estado anterior
0 1 0 Reset
1 0 1 Set
1 1 ̅̅̅̅
𝑄𝑎 Comutação

98
EXEMPLO 6.4 Faça lista dos valores binários da saída normal (Q) do flip-flop JK da Fig 6.10,
depois da aplicação de cada pulso do relógio.

Figura 6.10 Problema de trem de pulsos do flip-flop JK

Solução:

De acordo com a TV do flip-flop JK, os valores binários da saída normal (Q) do flip-flop JK para
cada pulso do relógio é a seguinte:

Pulso a = 1; pulso b = 1; pulso c = 1; pulso d = 0; pulso e = 0; pulso f = 1; pulso g = 0;


pulso h =1.

EXEMPLO 6.5 Apresente o modo de funcionamento flip-flop JK durante cada um dos oitos
pulsos do relógio mostrado na Figura 6.10.

Solução:

Segundo a tabela de verdade do flip-flop JK, o modo de operação do flip-flop durante cada pulso
mostrado na Figura 6.10 é a seguinte:

Pulso a = set; pulso b = mantém o estado anterior; pulso c = reset; pulso d = mantém o estado
anterior; pulso e = mantém o estado anterior; pulso f = comutação (inverte o estado anterior);
pulso g = comutação; pulso h = comutação.

99
6.1.4 Flip-flop JK com entradas Preset e Clear

O flip-flop poderá assumir valores Q = 1 ou Q = 0 mediante a utilização das entradas Preset (PR)
e Clear (CLR).

As entradas Preset e Clear não podem assumir valor 0, simultaneamente pois acarretaria à saída
uma situação não permitida. Podemos representar o símbolo lógico e a tabela de verdade do flip-
flop JK com entradas Preset e Clear.

CLR PR Qf

0 0 Não permitido

0 1 0

1 0 1

1 1 Funcionamento normal

Os círculos na simbologia do bloco, indicam que as entradas Preset e Clear são activas em 0, ou
seja, funcionam respectivamente com nível 0 aplicado. Para utilizar estas entradas como activas
em 1, basta colocar inversores e na simbologia excluir os circuitos aqui empregados.

O flip-flop JK pode ser considerado como flip-flop universal, porque os demais flip-flops podem
ser construídos a partir do mesmo.

EXEMPLO 6.6 Apresente o modo de operação do flip-flop JK com entradas PRESET e CLEAR
durante cada um dos pulsos do relógio aplicado na entrada mostrado na Figura 6.12.

Figura 6.12

100
Solução:

Baseando-se na tabela de verdade do flip-flop JK com entradas Preset e Clear, o modo de operação
do flip-flop JK durante cada pulso do relógio mostrado na Figura 6.12 é a seguinte:

Pulso a = set, pulso b = comutação, pulso c = comutação, pulso d = resetado, pulso e = set,
pulso f = mantém estado anterior, pulso g = reset.

EXEMPLO 6.7 Apresente os valores binários da saída Q do flip-flop JK da Figura 6.12.

Solução:

Tendo em conta a tabela de verdade do flip-flop JK com entradas Preset e Clear, as saídas binárias
da saída Q para cada pulso mostrado na Figura 6.12 é a seguinte:

Pulso a = 1, pulso b = 0, pulso c = 1, pulso d = 0, pulso e = 1, pulso f = 1, pulso g = 0.

6.1.5 Flip-flop Tipo T

Este flip-flop é obtido a partir de um JK com as entradas curto-circuitadas (uma ligada à outra),
logo quando J assumir valor 1, K também assumirá valor 1, e quando J assumir valor 0, K também
assumirá valor 0. Obviamente, no caso desta ligação, não irão ocorrer nunca entradas como: J = 0
e K = 1; J = 1 e K = 0. A figura 6 mostra a ligação e o seu símbolo lógico do flip-flop tipo T obtido.

A tabela completa será, então:

J K T Qf

0 0 0 Qa

0 1 não existe /

1 0 não existe /

1 1 1 ̅̅̅̅
𝑸𝒂

101
Eliminando os casos não existentes, obtemos a tabela de verdade do flip-flop tipo T:

T Qf

0 Qa

1 ̅̅̅̅
𝑄𝑎

̅̅̅̅) com a
Devido ao facto de o flip-flop tipo T, com entrada T igual a 1, complementar a saída (𝑄𝑎
entrada T igual a 1, a cada descida do clock será utilizada como célula principal dos contadores
assíncronos que serão estudados adiante. A sigla T vem de Toggle (comutado).

6.1.6 Flip-flop Tipo D

É obtido a partir de um flip-flop JK com a entrada K invertida (por inversor) em relação a J. Logo,
nesste flip-flop, teremos as seguintes entradas possíveis: J = 0, K = 1; J = 1 e K = 0. Obviamente,
não irão ocorrer casos: J = 0 e K = 0; J = 1 e K = 1. A figura 6 mostra como este é obtido e o seu
símbolo lógico.

A tabela de verdade completa será, então:

J K D Qf

0 0 não existe /

0 1 0 0

1 0 1 1

1 1 não existe /

Eliminando os casos não existentes, obtemos a tabela de verdade do flip-flop tipo D.

102
D Qf

0 0

1 1

Pela capacidade de passar para a saída (Qf) e armazenar o dado aplicado na entrada D, este flip-
flop será empregado como célula de registradores de deslocamento e em outros sistemas de
memória, a serem estudados adiante. A sigla D vem de Data (dado), termo original em inglês.

6.1.7 Flip-Flop JK Mestre-Escravo

O flip-flop JK apresenta uma característica indejável. Quando o clock for igual a 1, teremos o
circuito funcionando como sendo um circuito combinacional, porque haverá a passagem das
entradas J e K, e também da realimentação. Nessa situação, se houver uma mudança o circuito
apresentará uma nova saída, podendo mudar o seu estado diversas vezes quantas alterarem os
estados das entradas J e K. Para resolver esse problema, foi criado o flip-flop JK Mestre-Escravo
(Master-Slave) cujo o circuito é apresentado na Figura 6.13.

Figura 6.13 flip-flop JK Mestre-Escravo

Primeiramente, devemos notar que quando o clock for igual a 1, haverá a passagem das entradas
̅̅̅1 (entradas S e R do circuito escravo),
J e K (circuito mestre), porém não das saídas 𝑄1 e 𝑄

103
porque enquanto o clock do circuito mestre for igual a 1, no circuito escravo será 0, bloqueando
suas entradas.

̅̅̅1 ficarão bloqueadas no último estado assumido


Quando o clock passar para 0, as saídas 𝑄1 e 𝑄
e entrarão em R e S desbloqueadas, mudando o estado do circuito estado e consequentemente das
saídas Q e 𝑄̅ . Nota-se aqui, que o problema da variação das entradas J e K foi resolvido, pois o
circuito só reconhecerá as entradas J e K no instante da passagem do clock para 0.

A tabela de verdade resume a operação do flip-flop JK Mestre-Escravo:

J K Q
0 0 Qa
0 1 0
1 0 1
1 1 ̅̅̅̅
𝑄𝑎

Verificamos que esta tabela de verdade é idêntica à de um JK básico, mas a saída Q irá assumir
valores, conforme a situação das entradas JK, somente após a passagem do clock para 0. Assim
sendo, o circuito é chamado JK Mestre-Escravo sensível à descida de clock (transição negativa).
Para obter um circuito sensível à subida de clock (transição positiva) temos que colocar um
inversor interno à entrada de clock.

A Figura 6.14 mostra o bloco JK Mestre-Escravo e simbologia para identificar o circuito sensível
à descida de clock (a) e à subida de clock (b).

Figura 6.14 Circuito sensível à descida de clock (a) e à subida de clock (b)

O círculo no bloco da Figura 6.14(a), indica que o clock é activo quando passa de 1 para 0.

104
6.2 - Contadores

Os contadores são circuitos digitais que variam os seus estados, sob o comando de um clock, de
acordo com uma sequência predeterminada. São utilizados principalmente para contagens
diversas, divisão de frequência, medição da frequência e tempo, geração de forma de onda.

Os contadores são basicamente divididos em:

 Número máximo de contagem (Módulo do contador)


 Contagem Crescente ou Decrescente;
 Operação Assíncrona ou Síncrona.

Módulo do contador

O modulo do contador (MOD) indica o número de estados que o contador percorre em cada ciclo
completo de contagem antes de reciclar ao estado inicial.

𝑴𝑶𝑫 = 𝟐𝑵

Onde N é o número de flip-flops conectados no contador.

Contadores crescentes e contadores decrescentes

Os contadores podem ser também classificados pelo tipo de contagem que executam, ou seja, se
executam uma contagem crescente ou decrescente. Se o contador executar uma contagem
progressiva de 0 até n denomina-se Contador Crescente. Se o contador realizar uma contagem de
n a 0 denomina-se Contador Decrescente.

Contadores Assíncronos

Um contador assíncrono é aquele no qual os flip-flops (FFs) que constituem o contador não mudam
de estado exactamente ao mesmo tempo porque eles não têm um pulso de clock comum. Neste
tipo de circuito, a entrada clock se faz apenas no primeiro flip-flop, sendo as outras derivadas das
saídas dos flip-flops anteriores.

6.2.1 - Contadores de Pulsos

A principal característica de um contador de pulsos (contador binário) é de apresentar nas saídas,


o sistema binário em sequência. Seu circuito apresenta um grupo de 3 flip-flops do tipo T ou JK

105
Mestre-Escravo, os quais possuem entrada T ou, no caso, J e K iguais a 1, originando na saída
𝑄𝑓 = ̅̅̅̅
𝑄𝑎 (comutação), a cada descida de clock. A entrada dos pulsos se faz através da entrada do
1º flip-flop, sendo as entradas clock dos flip-flops seguintes, conectadas às saídas Q dos
respectivos antecessores conforme circuito visto na Figura 6.15.

Figura 6.15 Contador pulsos Mod-8.

Vamos fazer, inicialmente, com que todos os flip-flops assumam saídas iguais a 0, através da
aplicação de um nível 0 à entrada CLEAR. A cada descida do pulso de clock, o 1º flip-flop irá
mudar de estado, sendo esta troca aplicada à entrada do 2º flip-flop, fazendo com que este troque
de estado a cada descida da saída Q0, assim diante. Vamos analisar este comportamento através da
tabela abaixo.

Descida do clock Q2 Q1 Q0

1º 0 0 0

2º 0 0 1

3º 0 1 0

4º 0 1 1

5º 1 0 0

6º 1 0 1

7º 1 1 0

8º 1 1 1

9º (Reinicia) 0 0 0

106
Considerando Q0 como bit menos significativo (LSB) e Q2 como mais significativo (MSB), temos
nas saídas o sistema binário em sequência (000 a 111). Notamos ainda, que após a 9 ª descida de
clock, o contador irá reiniciar a contagem. A Figura 6.16 apresenta, toda a sequência obtida
graficamente, a partir da variação aplicada à entrada do sistema.

Figura 6.16 Diagrama de temporização para o contador visto na Figura 6.15.

Analisando os gráficos, notamos que o período de Q0 é o dobro do período do clock, logo, a


frequência de Q0 será a frequência do clock, pois f = 1/T. Analisando a saída Q1, veremos que seu
período que o seu período é o dobro de Q0 e o quadruplo do clock, logo sua frequência será a
metade de Q0 e um quarto do clock. Isto se estenderá sucessivamente aos demais flip-flops.

Assim sendo, podemos notar que uma das aplicações dos contadores será de dividir a frequência
de sinais (onda quadrada) aplicados à entrada clock. No caso desde contador, a divisão será por
um número múltiplo de 2𝑁 .

Em outras palavras, em qualquer contador, o sinal na saída do último FF (ou seja, o MSB)
tem uma frequência do clock de entrada dividida pelo módulo do contador.

Por exemplo, em um contador de módulo 8, a saída a partir do último flip-flop tem uma frequência
1/8 da frequência do clock de entrada. Assim, ele pode ser chamado de um contador divisor por 8.

6.2.1.1 - Contador sequencial de 0 a n

Para fazer um contador de 0 até um número n qualquer. Para isso, basta apenas verificamos quais
saídas do contador para o caso seguinte a n, para colocamos estas saídas numa porta NAND e a
saída desta ligarmos as entradas CLEAR dos flip-flops.

107
EXEMPLO 6.9 Elaborar o circuito de um contador de 0 a 5 (Módulo 6).

Solução:

No circuito, usaremos somente 3 FFs, pois são suficientes para contamos de 0 a 710 (23 = 8). Nesse
caso, desejamos que o contador recomece a contagem após o estado 5, ou seja, passe para 0 todos
os flip-flops.

Neste caso, estado seguinte a n será o 6, ocasionando nas saídas: Q2 = 1, Q1 = 1, Q0 = 0 (110).


Quando ocorrer então, deverá haver um 0 nas entadas CLEAR interligadas, levando o contador a
0. Devemos, para tanto, ter na entrada da porta NAND, a ligação de Q2 e Q1, pois na sequência da
contagem, estas irão assumir níveis 1 simultaneamente apenas no caso 110. A Figura 6.17 mostra
o circuito assim configurado.

Figura 6 .17 Contador de módulo 6 assíncrono.

108
6.2.1.3 Contadores Assíncronos Decrescentes

Os contadores vistos até aqui são crescentes, pois contam os números progressivamente de 0 a n.
Vamos estudar, agora, os contadores que efetuam a contagem decrescente. Esta, é vista na tabela
a seguir.

Contagem Q2 Q1 Q0

7 1 1 1

6 1 1 0

5 1 0 1

4 1 0 0

3 0 1 1

2 0 1 0

1 0 0 1

0 0 0 0

O circuito que efetua a decrescente é o mesmo que circuito que efetua a contagem crescente, com
única diferença de extraímos as saídas dos terminais ̅̅̅ ̅̅̅1 e ̅̅̅
𝑄0 , 𝑄 𝑄2 , sendo o terminal ̅̅̅
𝑄0 , o bit menos
significativo. Podemos notar, pela tabela da verdade, que a contagem decrescente nada mais é que
o complemento da contagem crescente. Assim sendo, o circuito é visto na figura 6.20.

Figura 6 .20 Contador decrescente Mod- 8 assíncrono.

O estado inicial (111) pode ser obtido pela aplicação de nível 0 na entrada IN, que irá zerar todos
os flip-flops nas saídas Q, mas irá impor níveis 1 nas saídas 𝑄̅ . A Figura 6.21 mostra todas as
formas de onda do sistema, desde a aplicação de uma onda quadrada à entrada clock.

109
Figura 6 .21 Diagrama de temporização do contador decrescente Mod-8.

6.2.1.4 Contador Assíncronos Crescente/Decrescente

Podemos construir um contador que execute a contagem crescente ou decrescente. Para isso,
utilizaremos uma variável de controlo que quando assume 1, faz o circuito executar contagem
crescente e quando assume 0, faz a contagem decrescente. Este circuito mostrado é mostrado na
Figura 6.24.

Figura 6 .24 Contador Crescente/Decrescente de 3 bits

Notamos que, no circuito, quando o controlo X estiver em 1, as saídas ̅̅̅ ̅̅̅1, estarão bloqueadas,
𝑄0 e 𝑄
fazendo com que entrem as saídas Q0 e Q1 nas entradas do clock, respectivamente. Isso fará com
que o contador conte crescentemente.

Quando o controlo X estiver em 0, a situação inverter-se-á e, por conseguinte, o contador contará


decrescentemente. Notamos, ainda, que Q0 será a saída do bit menos significativo (LSB). O
contador crescente/decrescente é também denominado Up/Down Counter.

110
6.3. Contadores Síncronos

Os contadores síncronos possuem entradas clock curto-circuitadas, ou seja, o clock entra em todos
os flip-flops simultaneamente, fazendo todos actuarem de forma sincronizada.

Para que haja mudanças de estado, devemos então estudar o comportamento das entradas J e K
dos vários flip-flops, para que tenhamos nas saídas, as sequências desejadas.

Para estudarmos os contadores síncronos devemos sempre escrever a TV, estudando quais devem
ser as entradas J e K dos vários Flip-flops, para que estes assumam o estado seguinte. Para isso,
vamos utilizar a TV do flip-flop JK:

J K Q

0 0 Qa

0 1 0

1 0 1

1 1 ̅̅̅̅
𝑄𝑎

A partir desta tabela, construímos outra, relacionando os estados de saída e as entradas J e K:

Qa Qf J K

0 0

0 1

1 0

1 1

Vamos, a seguir, analisar cada caso:

1) Se o flip-flop estiver em 0 (Qa = 0) e quisermos que o estado a ser assumido seja 0


(Qf = 0), podemos tanto manter o estado do flip-flop (J = K = 0  Qf = Qa), como fixar 0 (J
= 0, K = 1 Qf = 0), logo se J = 0 e K = X, teremos a passagem de Qa =0 para Qf = 0.

111
2) Se o FF estiver em 0 (Qa = 0) e quisermos que o estado a ser assumido seja 1 (Qf = 1),
podemos tanto inverter o estado do FF (J = 1, K = 0  Qf = 1), como fixar 1 (J = 1, K = 1
Qf = ̅̅̅̅
𝑄𝑎 ), logo se J = 1 e K = X, teremos a passagem de Qa =0 para Qf = 1.
3) Quando o flip-flop estiver em 1 ( Qa = 1) e quisermos que ele vá para 0 (Qf = 0), podemos
inverter o estado (J = 1, K = 1  Qf = ̅̅̅̅
𝑄𝑎 ), ou fixar 0 ( J = 0, K = 1  Qf = 0), logo, se J =
X e K = 1, teremos de Qa = 1 para Qf = 0.
4) Quando o flip-flop estiver em 1 (Qa = 1) e quisermos que ele permaneça em 1 (Qf = 1),
podemos manter o estado (J = 0, K = 0  Qf = Qa = 0) ou fixamos 1 (J = 1, K = 0  Qf =
1), logo, se J = X e K = 0, teremos a passagem de Qa = 1 para Qf = 1.

Analisando os quatro casos obtemos a tabela de verdade a seguir:

Qa Qf J K

0 0 0 X

0 1 1 X

1 0 X 1
De posse dos resultados das entradas J e K dos flip-flops para a sequência
1 1 X 0
desejada, obtidos da tabela, efetuamos simplificações e montamos um
circuito combinacional que em função das saídas dos flip-flops irá actuar
nestas entradas para processar as mudanças de estados. Genericamente, um contador síncrono
possui o esquema visto na figura 6.25.

Figura 6.25 Contador Síncrono Genérico

112
Nas próximas secções, vamos a título de exemplo, efectuar projectos de contadores síncronos
para gerar sequências conhecidas ou de grande aplicabilidade na prática.

Contador Síncrono Gerador de Código binário de 4 bits (Módulo 16)

Para gerarmos esse código, necessitamos de 4 flip-flops JK mestre escravo, seja, um flip-flop
para cada bit do código. A tabela 6.1 apresenta a sequência proposta.

Clock Q3 Q2 Q1 Q0

1º 0 0 0 0

2º 0 0 0 1

3º 0 0 1 0

4º 0 0 1 1

5º 0 1 0 0

6º 0 1 0 1

7º 0 1 1 0

8º 0 1 1 1

9º 1 0 0 0

10º 1 0 0 1

11º 1 0 1 0

12º 1 0 1 1
Esta tabela apresenta a sequência que as saídas
13º 1 1 0 0
dos flip-flops devem assumir em função da
14º 1 1 0 1 presença de pulsos de clock. Para o projecto,
devemos estudar, para cada caso, o
15º 1 1 1 0
comportamento das entradas J e K dos flip-flops e
16º 1 1 1 1 levantar o circuito necessário para gerar a
sequência.

113
Vamos supor que ao ligarmos o contador, ele assuma o seguinte estado inicial:

Q3 Q2 Q1 Q0

0 0 0 0

Ele deverá, após o 1º pulso de clock, passar para o estado seguinte:

Q3 Q2 Q1 Q0

0 0 0 1

Sob a presença do 1º pulso de clock, temos:

Q3: estava em 0, deve passar para 0, antes do 1º pulso de clock, deve ter as seguintes entadas
neste flip-flop: J3 = 0 e K3 = X (J = 0 e K = X Qa = 0 passa para Qf = 0).

Q2: caso análogo a Q3, logo J2 = 0 e K2 = X

Q1: idem, logo J1 = 0 e K1 = X

Q0: estava em 0, após o 1º pulso de clock deve mudar para 1, antes do 1º pulso de clock,
devemos ter as seguintes entradas neste flip-flop: J0 = 1 e K0 = X (J =1 e K = X Qa = 0 passa
para Qf = 1).

Podemos, a partir da análise, escrever a primeira linha da tabela de verdade:

Clock Q3 Q2 Q1 Q0 J3 K3 J2 K2 J1 K1 J0 K0

1º 0 0 0 0 0 X 0 X 0 X 1 X

0 0 0 1
O
contador está, agora, no estado:

Q3 Q2 Q1 Q0

0 0 0 1

114
E deve, após o 2º pulso de clock, passar para:

Q3 Q2 Q1 Q0

0 0 1 0

Vamos, então, analisar as entradas J e K para este caso:

Q3: estava em 0, deve permanecer em 0, antes do 2º pulso de clock, devemos ter as seguinte
situação de entrada: J3 = 0 e K3 = X .

Q2: caso análogo a Q3, logo J2 = 0 e K2 = X

Q1: estava em 1 e deve passar para 0, logo antes do 2º pulso de clock, devemos ter a seguinte
situação de entrada no flip-flop: J1 = X1 e K1 = X.

Q0: estava em 1 e deve passar para 0, logo antes do 2º pulso de clock, devemos ter a seguinte
situação de entrada: J0 = X e K0 = 1.

Clock Q3 Q2 Q1 Q0 J3 K3 J2 K2 J1 K1 J0 K0

1º 0 0 0 0 0 X 0 X 0 X 1 X

2º 0 0 0 1 0 X 0 X 1 X X 1

0 0 1 0

Q3 Q2 Q1 Q0

0 0 1 0

0 0 1 1

115
Vamos analisar mais uma mudança do contador, ou seja, após a descida do 3º pulso de clock, a

passagem do estado 2 para o estado 3:

Q3: vai de 0 para 0  J3 = 0 e K3 = X

Q2: vai de 0 para 0  J2 = 0 e K2 = X

Q1: vai de 1 para 1  J1 = 1 e K1 = X

Q0: vai de 0 para 1  J0 = 0 e K0 = X

A tabela de verdade, até a terceira linha será:

Clock Q3 Q2 Q1 Q0 J3 K3 J2 K2 J1 K1 J0 K0

1º 0 0 0 0 0 X 0 X 0 X 1 X

2º 0 0 0 1 0 X 0 X 1 X X 1

3º 0 0 1 0 0 X 0 X X 0 1 X

0 0 1 1

116
Utilizando o mesmo procedimento para os outros casos, obtemos a tabela de verdade completa:

Contagem Clock Q3 Q2 Q1 Q0 J3 K3 J2 K2 J1 K1 J0 K0

0 1º 0 0 0 0 0 X 0 X 0 X 1 X

1 2º 0 0 0 1 0 X 0 X 1 X X 1

2 3º 0 0 1 0 0 X 0 X X 0 1 X

3 4º 0 0 1 1 0 X 1 X X 1 X 1

4 5º 0 1 0 0 0 X X 0 0 X 1 X

5 6º 0 1 0 1 0 X X 0 1 X X 1

6 7º 0 1 1 0 0 X X 0 X 0 1 X

7 8º 0 1 1 1 1 X X 1 X 1 X 1

8 9º 1 0 0 0 X 0 0 X 0 X 1 X

9 10º 1 0 0 1 X 0 0 X 1 X X 1

10 11º 1 0 1 0 X 0 0 X X 0 1 X

11 12º 1 0 1 1 X 0 1 X X 1 X 1

12 13º 1 1 0 0 X 0 X 0 0 X 1 X

13 14º 1 1 0 1 X 0 X 0 1 X X 1

14 15º 1 1 1 0 X 0 X 0 X 0 1 X

15 16º 1 1 1 1 X 1 X 1 X 1 X 1

Notamos que, no projecto, o estado 0 foi considerado após o estado 15, pois ao final, o contador
deve reiniciar a contagem.

Para obter as expressões de J3, K3, J2, K2, J1, K1, J0 e K0, simplificadas, vamos utilizar o mapa de
Karnaugh:

117
118
O circuito completo deste contador é visto na Figura 6.26:

Figura 6.26 Contador Síncrono Módulo 16

119
6.3 - Registos de deslocamento

O registo (ou registrador) de deslocamento é um dos dispositivos funcionais mais utilizados em


Sistemas Digitais. Uma máquina calculadora manual mostra as características de um registo de
deslocamento. Para introduzir o número 246 na calculadora, primeiramente, pressionamos e
liberamos a tecla # 2 e visualizamos o número 2 no ecrã da calculadora. Em seguida, pressionamos
e liberamos a tecla # 4, aparece no ecrã o número 24. Finalmente, pressionamos e liberamos a tecla
# 6 e aparece o número 246. Numa calculadora comum o número 2 aparece a direita do ecrã.
Quando pressionamos a tecla # 4, o número 2 se desloca para a esquerda e cede o seu lugar ao
número 4. Os números são deslocados progressivamente para esquerda do visualizador. Este
registo opera como um registo de deslocamento para esquerda.

Outra característica da calculadora é a sua capacidade de memória, quando pressionamos


liberamos uma determinada tecla da calculadora (exemplo a tecla #2), o número permanece no
ecrã. O registo “recorda” a tecla que foi pressionada. Está característica de memória é vital para
muitos circuitos digitais.

Registos de deslocamento (Shift Register, SR) é um circuito formado por interligações de flip-
flops com a finalidade de armazenar informações binário por tempo que for necessário.
Basicamente, o registo é um circuito digital com duas funções: armazenamento de dados e
movimentação de dados. A capacidade de armazenamento de um registo o torna importante tipo
de dispositivo de memória.

A capacidade de armazenamento de um registo é o número total de bits dos dados digitais que
ele pode guardar. Cada estágio (flip-flop) é um registo de deslocamento que representa um bit da
capacidade de armazenamento; portanto o número de estágio determina a sua capacidade de
armazenamento.

A capacidade de deslocamento de um registo permite a movimentação de dados de um estágio


(flip-flop) para o outro dentro do registo ou ainda para fora do registo com aplicação de pulsos.

Os registos de deslocamento são utilizados em operações aritméticas de complementação,


multiplicação, divisão, em conversão de informação série em paralela e também em vários outros
tipos de circuitos digitais. Os registos de deslocamento são construídos com flip-flops do tipo D.

120
Informação série e informação paralela

Chamamos informação paralela a uma informação na qual todos os bits (0s e 1s) se apresentam
simultaneamente; assim a transferência da informação acontece em um único instante. É necessária
uma quantidade de fios para transmissão igual ao número de bits da informação. Esse modo é
conhecido como deslocamento paralelo. Para exemplificar, vamos utilizar uma informação de 4
bits: I3I2I1I0 = 1010.

Notamos que está informação necessita de 4 fios para ser transmitida ou inserida no bloco.

Informação série é quando os bits são apresentados sequencialmente, um após o outro,


necessitando somente de uma via (fio) para o transporte dos bits. Esse modo de transferir
informação é conhecido como deslocamento série.

Como por exemplo, vamos utilizar a mesma informação, porém, em série:

Notamos que esta informação necessita de um fio para ser transmitida ou inserida no bloco.

A entrada e a saída de um registo podem ser configuradas nesses dois modos, resultando em quatro
tipos de registos de deslocamento: entrada série – saída série, entrada série – saída paralela,
entrada paralela – saída série, entrada paralela – saída paralela, como ilustrado na Figura
6.28.

121
Figura 6.28: Configurações da entrada e da saída de um registrador: (a) entrada série – saída série, (b) entrada série
– saída paralela, (c) entrada paralela – saída série e (d) entrada paralela – saída paralela

6.3.1 - Registo de deslocamento entrada série – saída paralela

Os bits de dados são inseridos serialmente e são apresentados de forma paralela nas suas saídas
em simultâneo; num registo com saída paralela, a saída de cada estágio está disponível. Uma vez
armazenados os dados, cada bit aparece em sua linha de saída respectiva e todos os bits são
disponibilizados ao mesmo tempo.
Registo de deslocamento para a direita

O circuito da Figura 6.29 mostra como o registrador de deslocamento de 4 bits com entrada serial /saída
paralela e o seu símbolo lógico.

Figura 6.29 (a): Registrador de deslocamento para a direita

122
Figura 29 (b: Símbolo lógico de registo de deslocamento de 4 bits

Exemplo 6.9: Mostre os estados do registrador de 4 bits (SRG 4) para as formas de onda dadas na
Figura 6.30.
Solução: O registrador contém 0110 após quatro pulsos de clock.

6.3.2 - Registo de deslocamento com entrada serial/saída serial


O registrador de deslocamento com entrada serial/saída serial aceita dados seriais – ou seja, um bit
de cada vez numa única linha. Ele gera em sua saída a informação armazenada também de forma
serial. A Figura 6.31 mostra um registo de deslocamento de 4 bits implementado com flip-flops
D. e o seu símbolo lógico, com quatro estágioss.

Figura 6.31(a): Registo com entrada serial / saída serial.

123
Figura 31(b): Símbolo lógico para um registrador de deslocamento de 4 bits

Exemplo 6.10: Mostre os estados do registrador de 5 bits mostrado na Figura 6.32 (a) para as
formas de onda de entrada de dados especificada e do clock. Considere que o registrador esteja
inicialmente zerado (todos os bits em nível 0).
Solução: O primeiro bit de dado (1) é inserido no registrador no primeiro pulso de clock e em
seguida deslocado da esquerda para a direita enquanto os bits restantes são inseridos e deslocados.
O registrador contém Q4Q3Q2Q1Q0 = 11010 após cinco pulsos de clock. Veja a Figura 6.32(b).

124
6.3.3 - Registo de deslocamento entrada paralela/saída paralela

Em um registo de deslocamento entrada paralela os todos os bits de dados são inseridos em


simultâneos, esses aparecem nas saídas em paralelo. A Figura 6.33 mostra o circuito lógico e o
símbolo lógico de um registrador com entrada paralela/saída paralela.

Figura 6.33 Circuito lógico e o símbolo lógico de um registrador com entrada paralela/saída paralela

6.3.4 - Registo de deslocamento entrada paralela e saída série

Para entrarmos com uma informação paralela, necessitamos de um registrador que apresente entradas
PRESET (PR) e CLEAR (CLR), porque é através destas que fazermos com que o registador armazene a
informação paralela. A Figura 6.34 mostra o circuito e símbolo de um registo de entrada paralela/saída
paralela de 4 bits.

Figura 6.34 Registo de deslocamento de entrada paralela/saída série

125
Primeiramente, vamos estudar o funcionamento da entrada ENABLE. Quando a entrada enable
estiver em 0, as entradas preset (PR) dos flip-flops assumirão, respectivamente, níveis 1, fazendo
com que o registo actue normalmente. Quando a entrada enable for igual a 1, as entradas preset
dos flip-flops assumirão valores complementares das entradas PR0, PR1, PR2 e PR3, logo, os flip-
flops irão assumir os valores que estiverem, respectivamente, em PR0, PR1, PR2 e PR3. Para
entendermos melhor, vamos analisar um estágiodo registo:

Para zerar (CLR) o flip-flop (Q3), vamos inicialmente, aplicar nível 0 à entrada CLR.
Com ENABLE = 0, entrada PR do flip-flop irá assumir nível 1 e este irá ter um funcionamento
normal como célula do registo de deslocamento em questão, mantendo a saída no estado em que
se encontra.
Com ENABLE = 1, e PR3 = 0, a entrada PR do flip-flop assumirá nível 1, logo, a saída Q3 manterá
o seu estado (Q3 =0). Com ENABLE = 1 e PR3 = 1, antrada PR do flip-flop assumirá nível 0,
forçando a saída assumir nível 1 (Q3 = 1).
Após essa análise, concluímos que, se zerarmos o registo (aplicando 0 à entrada CLEAR), e logo
após introduzimos a informação paralela (I0, I1, I2 e I3) pelas entradas PR0, PR1, PR2 e PR3, as
saídas Q0, Q1, Q2 e Q3 assumirá os valores da informação. Essa maneira de entrarmos com a
informação no registo é chamada entrada paralela de informação, sendo a entrada enable
responsável pela habilitação da mesma. Para que o registo de deslocamento funcione como
conversor paralelo – serie, necessitamos zerá-lo, e em seguida introduzir a informação, como já
abordado, recolhendo na saída Q3 a mesma informação de modo série.

126
6.3.5 Registo como multiplicador ou divisor por 2
Consideremos um número natural binário de oito bits, por exemplo: 1 1 0 0 0 1 1 0. Vamos supor
que esse número esteja carregado em um registrador de deslocamento e sofra deslocamento para
a direita. Perde-se o bit “0” e fica indefinido o bit 7, que consideramos “0” (Figura 6.35).

Figura 6.35 Registrador como multiplicador ou divisor por 2.

A operação de deslocamento para a direita, como vimos, pode ser associada à divisão por 2.
Inversamente, um deslocamento para a esquerda pode ser associado à multiplicação por 2.

6.3.5 - Contador Johnson


Em um contador Johnson, o complemento da saída do último flip-flop é conectado de volta na
entrada D do primeiro flip-flop (isso pode ser feito também com outros tipos de flip-flops). Esse
arranjo com realimentação produz uma sequência característica de estados, conforme mostra a
Tabela 6–1 para um dispositivo de 4 bits. Em geral, um contador Johnson produz um módulo de
2n, onde n é o número de estágios no contador. Observe que a sequência de 4 bits tem um total de
8 estados. Conforme mostra as sequências nas Tabelas 6-1.

Clock Dígito Decimal Q3 Q2 Q1 Q0

0 0 0 0 0 0

1 1 0 0 0 1

2 2 0 0 1 1

3 3 0 1 1 1

4 4 1 1 1 1

5 5 1 1 1 0

6 6 1 1 0 0

7 7 1 0 0 0

127
A implementação do contador Johnson de 4 estágios é mostrada na Figura 6.36. A implementação
de um contador Johnson é muito simples independentemente do número de
estágios. A saída Q de cada estágio é conectada na entrada D do próximo estágio (considerando
que flip-flops D sejam usados). A única exceção é que a saída do último estágio é conectada de
volta na entrada D do primeiro estágio.

Figura 6.36: Contador Johnson de 4 bits

O Diagrama da operação de temporização do contador de 4 bits é mostrado na Figura 6.37.

Figura 6.37: Sequência de temporização para um contador Johnson de 4 bits.

128
Contador em Anel
O contador em anel utiliza um flip-flop para cada estado em sua sequência. Ele tem a vantagem
de não necessitar de portas de decodificação. No caso de um contador em anel de 5 bits, existe
uma única saída para cada dígito decimal. A Figura 6.38 mostra um diagrama lógico para um
contador em anel de 5 bits.

Figura 6.38: Diagrama lógico para um contador em anel de 5 bits

A sequência para esse contador em anel é dada na Tabela 6.2. Inicialmente, um nível 1 está
presente no primeiro flip-flop e o restante dos flip-flops estão resetados. Observe que as conexões
entre estágios são as mesmas que para um contador Johnson, exceto que a saída Q é realimentada
a em vez de 𝑄̅ partir do último estágio. As 5 saídas do contador indicam directamente a contagem
decimal dos pulsos de clock.

Clock Dígito Decimal Q4 Q3 Q2 Q1 Q0

0 0 0 0 0 0 1

1 1 0 0 0 1 0

2 2 0 0 1 0 0

3 3 0 1 0 0 0

4 4 1 0 0 0 0

Por exemplo, um nível 1 em Q0 representa zero, um nível 1 em Q1 representa um, um nível 1 em


Q2 representa dois, um nível 1 em Q3 representa três, e assim por diante. Temos que verificar que

129
um nível 1 é sempre mantido no contador e simplesmente desloca “em torno do anel”, avançando
um estágio para cada pulso de clock. Sequências modificadas podem ser conseguidas colocando
mais que um único 1 no contador.

6.3 - Registos de deslocamento

O registo (ou registrador) de deslocamento é um dos dispositivos funcionais mais utilizados em


Sistemas Digitais. Uma máquina calculadora manual mostra as características de um registo de
deslocamento. Para introduzir o número 246 na calculadora, primeiramente, pressionamos e
liberamos a tecla # 2 e visualizamos o número 2 no ecrã da calculadora. Em seguida, pressionamos
e liberamos a tecla # 4, aparece no ecrã o número 24. Finalmente, pressionamos e liberamos a tecla
# 6 e aparece o número 246. Numa calculadora comum o número 2 aparece a direita do ecrã.
Quando pressionamos a tecla # 4, o número 2 se desloca para a esquerda e cede o seu lugar ao
número 4. Os números são deslocados progressivamente para esquerda do visualizador. Este
registo opera como um registo de deslocamento para esquerda.

Outra característica da calculadora é a sua capacidade de memória, quando pressionamos


liberamos uma determinada tecla da calculadora (exemplo a tecla #2), o número permanece no
ecrã. O registo “recorda” a tecla que foi pressionada. Está característica de memória é vital para
muitos circuitos digitais.

Registos de deslocamento (Shift Register, SR) é um circuito formado por interligações de flip-
flops com a finalidade de armazenar informações binário por tempo que for necessário.
Basicamente, o registo é um circuito digital com duas funções: armazenamento de dados e
movimentação de dados. A capacidade de armazenamento de um registo o torna importante tipo
de dispositivo de memória.

A capacidade de armazenamento de um registo é o número total de bits dos dados digitais que
ele pode guardar. Cada estágio (flip-flop) é um registo de deslocamento que representa um bit da
capacidade de armazenamento; portanto o número de estágio determina a sua capacidade de
armazenamento.

A capacidade de deslocamento de um registo permite a movimentação de dados de um estágio


(flip-flop) para o outro dentro do registo ou ainda para fora do registo com aplicação de pulsos.

130
Os registos de deslocamento são utilizados em operações aritméticas de complementação,
multiplicação, divisão, em conversão de informação série em paralela e também em vários outros
tipos de circuitos digitais. Os registos de deslocamento são construídos com flip-flops do tipo D.

Informação série e informação paralela

Chamamos informação paralela a uma informação na qual todos os bits (0s e 1s) se apresentam
simultaneamente; assim a transferência da informação acontece em um único instante. É necessária
uma quantidade de fios para transmissão igual ao número de bits da informação. Esse modo é
conhecido como deslocamento paralelo. Para exemplificar, vamos utilizar uma informação de 4
bits: I3I2I1I0 = 1010.

Notamos que está informação necessita de 4 fios para ser transmitida ou inserida no bloco.

Informação série é quando os bits são apresentados sequencialmente, um após o outro,


necessitando somente de uma via (fio) para o transporte dos bits. Esse modo de transferir
informação é conhecido como deslocamento série.

Como por exemplo, vamos utilizar a mesma informação, porém, em série:

Notamos que esta informação necessita de um fio para ser transmitida ou inserida no bloco.

A entrada e a saída de um registo podem ser configuradas nesses dois modos, resultando em quatro
tipos de registos de deslocamento: entrada série – saída série, entrada série – saída paralela,
entrada paralela – saída série, entrada paralela – saída paralela, como ilustrado na Figura
6.28.

131
Figura 6.28: Configurações da entrada e da saída de um registrador: (a) entrada série – saída série, (b) entrada série
– saída paralela, (c) entrada paralela – saída série e (d) entrada paralela – saída paralela

6.3.1 - Registo de deslocamento entrada série – saída paralela

Os bits de dados são inseridos serialmente e são apresentados de forma paralela nas suas saídas
em simultâneo; num registo com saída paralela, a saída de cada estágio está disponível. Uma vez
armazenados os dados, cada bit aparece em sua linha de saída respectiva e todos os bits são
disponibilizados ao mesmo tempo.
Registo de deslocamento para a direita

O circuito da Figura 6.29 mostra como o registrador de deslocamento de 4 bits com entrada serial /saída
paralela e o seu símbolo lógico.

Figura 6.29 (a): Registrador de deslocamento para a direita

132
Figura 29 (b: Símbolo lógico de registo de deslocamento de 4 bits

Exemplo 6.9: Mostre os estados do registrador de 4 bits (SRG 4) para as formas de onda dadas na
Figura 6.30.
Solução: O registrador contém 0110 após quatro pulsos de clock.

6.3.2 - Registo de deslocamento com entrada serial/saída serial


O registrador de deslocamento com entrada serial/saída serial aceita dados seriais – ou seja, um bit
de cada vez numa única linha. Ele gera em sua saída a informação armazenada também de forma
serial. A Figura 6.31 mostra um registo de deslocamento de 4 bits implementado com flip-flops
D. e o seu símbolo lógico, com quatro estágioss.

Figura 6.31(a): Registo com entrada serial / saída serial.

133
Figura 31(b): Símbolo lógico para um registrador de deslocamento de 4 bits

Exemplo 6.10: Mostre os estados do registrador de 5 bits mostrado na Figura 6.32 (a) para as
formas de onda de entrada de dados especificada e do clock. Considere que o registrador esteja
inicialmente zerado (todos os bits em nível 0).
Solução: O primeiro bit de dado (1) é inserido no registrador no primeiro pulso de clock e em
seguida deslocado da esquerda para a direita enquanto os bits restantes são inseridos e deslocados.
O registrador contém Q4Q3Q2Q1Q0 = 11010 após cinco pulsos de clock. Veja a Figura 6.32(b).

6.3.3 - Registo de deslocamento entrada paralela/saída paralela

134
Em um registo de deslocamento entrada paralela os todos os bits de dados são inseridos em
simultâneos, esses aparecem nas saídas em paralelo. A Figura 6.33 mostra o circuito lógico e o
símbolo lógico de um registrador com entrada paralela/saída paralela.

Figura 6.33 Circuito lógico e o símbolo lógico de um registrador com entrada paralela/saída paralela

6.3.4 - Registo de deslocamento entrada paralela e saída série

Para entrarmos com uma informação paralela, necessitamos de um registrador que apresente entradas
PRESET (PR) e CLEAR (CLR), porque é através destas que fazermos com que o registador armazene a
informação paralela. A Figura 6.34 mostra o circuito e símbolo de um registo de entrada paralela/saída
paralela de 4 bits.

Figura 6.34 Registo de deslocamento de entrada paralela/saída série

135
Primeiramente, vamos estudar o funcionamento da entrada ENABLE. Quando a entrada enable
estiver em 0, as entradas preset (PR) dos flip-flops assumirão, respectivamente, níveis 1, fazendo
com que o registo actue normalmente. Quando a entrada enable for igual a 1, as entradas preset
dos flip-flops assumirão valores complementares das entradas PR0, PR1, PR2 e PR3, logo, os flip-
flops irão assumir os valores que estiverem, respectivamente, em PR0, PR1, PR2 e PR3. Para
entendermos melhor, vamos analisar um estágiodo registo:

Para zerar (CLR) o flip-flop (Q3), vamos inicialmente, aplicar nível 0 à entrada CLR.
Com ENABLE = 0, entrada PR do flip-flop irá assumir nível 1 e este irá ter um funcionamento
normal como célula do registo de deslocamento em questão, mantendo a saída no estado em que
se encontra.
Com ENABLE = 1, e PR3 = 0, a entrada PR do flip-flop assumirá nível 1, logo, a saída Q3 manterá
o seu estado (Q3 =0). Com ENABLE = 1 e PR3 = 1, antrada PR do flip-flop assumirá nível 0,
forçando a saída assumir nível 1 (Q3 = 1).
Após essa análise, concluímos que, se zerarmos o registo (aplicando 0 à entrada CLEAR), e logo
após introduzimos a informação paralela (I0, I1, I2 e I3) pelas entradas PR0, PR1, PR2 e PR3, as
saídas Q0, Q1, Q2 e Q3 assumirá os valores da informação. Essa maneira de entrarmos com a
informação no registo é chamada entrada paralela de informação, sendo a entrada enable
responsável pela habilitação da mesma. Para que o registo de deslocamento funcione como
conversor paralelo – serie, necessitamos zerá-lo, e em seguida introduzir a informação, como já
abordado, recolhendo na saída Q3 a mesma informação de modo série.

136
6.3.5 Registo como multiplicador ou divisor por 2
Consideremos um número natural binário de oito bits, por exemplo: 1 1 0 0 0 1 1 0. Vamos supor
que esse número esteja carregado em um registrador de deslocamento e sofra deslocamento para
a direita. Perde-se o bit “0” e fica indefinido o bit 7, que consideramos “0” (Figura 6.35).

Figura 6.35 Registrador como multiplicador ou divisor por 2.

A operação de deslocamento para a direita, como vimos, pode ser associada à divisão por 2.
Inversamente, um deslocamento para a esquerda pode ser associado à multiplicação por 2.

6.3.5 - Contador Johnson


Em um contador Johnson, o complemento da saída do último flip-flop é conectado de volta na
entrada D do primeiro flip-flop (isso pode ser feito também com outros tipos de flip-flops). Esse
arranjo com realimentação produz uma sequência característica de estados, conforme mostra a
Tabela 6–1 para um dispositivo de 4 bits. Em geral, um contador Johnson produz um módulo de
2n, onde n é o número de estágios no contador. Observe que a sequência de 4 bits tem um total de
8 estados. Conforme mostra as sequências nas Tabelas 6-1.

Clock Dígito Q3 Q2 Q1 Q0
Decimal

0 0 0 0 0 0

1 1 0 0 0 1

2 2 0 0 1 1

3 3 0 1 1 1

4 4 1 1 1 1

5 5 1 1 1 0

137
6 6 1 1 0 0

7 7 1 0 0 0

A implementação do contador Johnson de 4 estágios é mostrada na Figura 6.36. A implementação


de um contador Johnson é muito simples independentemente do número de
estágios. A saída Q de cada estágio é conectada na entrada D do próximo estágio (considerando
que flip-flops D sejam usados). A única exceção é que a saída do último estágio é conectada de
volta na entrada D do primeiro estágio.

Figura 6.36: Contador Johnson de 4 bits

O Diagrama da operação de temporização do contador de 4 bits é mostrado na Figura 6.37.

Figura 6.37: Sequência de temporização para um contador Johnson de 4 bits.

138
Contador em Anel
O contador em anel utiliza um flip-flop para cada estado em sua sequência. Ele tem a vantagem
de não necessitar de portas de decodificação. No caso de um contador em anel de 5 bits, existe
uma única saída para cada dígito decimal. A Figura 6.38 mostra um diagrama lógico para um
contador em anel de 5 bits.

Figura 6.38: Diagrama lógico para um contador em anel de 5 bits

A sequência para esse contador em anel é dada na Tabela 6.2. Inicialmente, um nível 1 está
presente no primeiro flip-flop e o restante dos flip-flops estão resetados. Observe que as conexões
entre estágios são as mesmas que para um contador Johnson, exceto que a saída Q é realimentada
a em vez de 𝑄̅ partir do último estágio. As 5 saídas do contador indicam directamente a contagem
decimal dos pulsos de clock.

Clock Dígito Decimal Q4 Q3 Q2 Q1 Q0

0 0 0 0 0 0 1

1 1 0 0 0 1 0

2 2 0 0 1 0 0

3 3 0 1 0 0 0

4 4 1 0 0 0 0

139
Por exemplo, um nível 1 em Q0 representa zero, um nível 1 em Q1 representa um, um nível 1 em
Q2 representa dois, um nível 1 em Q3 representa três, e assim por diante. Temos que verificar que
um nível 1 é sempre mantido no contador e simplesmente desloca “em torno do anel”, avançando
um estágio para cada pulso de clock. Sequências modificadas podem ser conseguidas colocando
mais que um único 1 no contador.

140
EXERCÍCIOS PROPOSTOS
Capítulo I - Sistemas Analógicos vs Sistemas Digitais
1. O que é a electrónica?
1.1.Quais são os tipos de electrónica que estudaste?
2. Descreva, a principal diferença entre um sinal analógico e um sinal digital.
3. Quais das seguintes quantidades são analógicas e quais são digitais? Justifique a sua resposta.

a) A corrente que flui de uma tomada eléctrica.


b) A temperatura de um ambiente.
c) Grãos de areia em uma praia.
d) O velocímetro de um automóvel.
e) Número de átomos de uma amostra.
f) Ajuste do temporizador de um forno de microondas moderno.
g) A voz humana
3. O que é um transdutor?
4. Cite os dois exemplos de transdutores electromecânicos e ópticos.
5. Explique, de forma resumida o princípio de funcionamento de uma calculadora manual digital.
6. Explique, de forma resumida o princípio de funcionamento de um amplificador de áudio analógico.
6.1. É possível, um sistema ser analógico e digital em simultâneo?
7. A Figura abaixo ilustra o diagrama básico de um aparelho de CD. Diga se se trata de um sistema
analógico ou de um sistema digital. Justifique a sua resposta.

8. Indique duas vantagens e duas desvantagens dos sistemas digitais em relação aos sistemas analógicos.
Justifique a sua resposta.
9. Qual é a principal desvantagem no uso dos sistemas digitais? Justifique a sua resposta.

141
Capítulo II – Sistemas de numeração, códigos e operações
Parte I - Sistemas numéricos
1. Converta para binário os números decimais a seguir:

(a) 31510 (b) 80810 (c) 213310 (d) 511,12510


(e) 85,3210 (f) 1010,2510 (g) 125,7810
2. Converta para decimal os números binários a seguir:
(a) 100101012 (b) 111001012 (c) 11100000,1012 (d)100010101011,0012
(e) 11011010112 (f) 11001010111,1112 (g) 100010101,101012
3. Converta cada um dos seguintes números decimais no seu equivalente octal:
a) 59710 (b) 31810 (c) 142010 (d) 78,3310 (e) 1012,01510
(f) 14210 (g) 21910
4. Converta para decimal cada número octal a seguir:
(a) 1028 (b) 10248 (c) 560,058 (d) 647,148 (e) 5028 (f)
100218 (g) Porque que o número 183 não pode ser octal?
5. Converta para binário cada número octal a seguir:
(a) 1788 (b) 1578 (c) 15048 (d) 32,018 (e) 540,548
6. Converta para octal cada número binário a seguir:
(a) 110110012 (b) 1101011001010012 (c) 1101110111,1002
(d) 10110000,0112
7. Converta para hexadecimal cada número decimal a seguir:
(a) 37210 (b) 102410 (c) 1350,12510 (d) 650010 (e) 77110
(f) 289,1310
8. Converta para decimal cada número hexadecimal a seguir:
(a) ACD16 (b) 9216 (c) 1AF,0D16 (d) 6FBC16
9. Converta para hexadecimal cada número binário a seguir:
(a) 1010010111102 (b) 10010100101,101001012 (c) 11011101111002
(d) 101101100,112 (e) 0111111111010010002 (f) 10111100,10102
10. Converta para binário cada número hexadecimal a seguir:
(a) 2316 (b) FADA16 (c) 1AD16 (d) 6FBC16
11. Faça cada uma das conversões a seguir:

142
(a) AD.F16 = ___8 (b) 91.F16 = ___8 (c) 45018 = ___ 16 (d) 701.68 = ___16
Parte II - Códigos Digitais
1. Converta para BCD cada um dos seguintes números decimais:
(a) 17010 (b) 246,910 (c) 543710 (d) 21,4010
2. Converta para decimal cada um dos números BCD a seguir:
(a) 011010010001 (b) 0011010100101000 (c)
11010111.1000 (d) 00010110100000110111
3. Converta para BCD cada um dos números binários a seguir:
a) 100100112 (b) 11011102 (c) 1011101.112
4. Converta para o código Gray cada número binário a seguir:
(a) 11010112 (b) 1001110102 (c) 1110111011102
5. Converta para binário cada código Gray a seguir:
(a) 101010110 (b) 101100010 (c) 11000010001
6. Converta para ASCII cada um dos seguintes números decimais. Consulte a tabela.
(a) 02 (b) 31
7. Codifique, em ASCII, a seguinte mensagem, usando a representação hexadecimal: SOS
8. A seguinte mensagem, codificada em ASCII, já preenchida com 0 à esquerda, é armazenada em posições
sucessivas na memória de um computador:
01010011 01010100 01001111 01010000
Qual é a mensagem?
Parte III - Operações Binárias e Números Sinalizados
1. Realize as seguintes adições binárias:
a) 111001112 + 100100112
b) 1111111102 + 1011001002

c) 1011001112 + 1111102 + 1111011112


d) 111.1012 + 110.12
2. Expresse cada número decimal a seguir em um número binário do tipo sinal-magnitude de 8 bits:
(a) +45 (b) -85 (c) +100 (d) -123
3. Determine o valor decimal de cada número binário sinalizado a seguir na forma sinal-magnitude:
(a) 10011001 (b) 01110100 (c) 10111111
4. Expresse cada número decimal a seguir como um número de 8 bits na forma do complemento de
2:
(a) +12 (b) -45 (c) +101 (d) -125

143
5. Determine o valor decimal de cada número binário sinalizado a seguir na forma do complemento
de 2:
(a) 10011001 (b) 01110100 (c) 10111111

6. Efectue as subtracções, utilizando o complemento de 2:


(a) 11000002 - 10012 (b) 110111102 - 11112 (d) 101010112 - 10001002

* (e) 1001002 - 1001012 * (f) 100002 - 1100002

Capítulo III – Portas Lógicas


1. Qual é a forma de onda na saída do circuito abaixo? Observar que aparecem duas formas de
ondas nas entradas da porta OR.

2. Qual é a forma de onda na saída do circuito abaixo?

3. Desenhar as tabelas de verdade e obter uma expressão de mintermos e outra de maxtermos para
cada uma das seguintes expressões booleanas:
a) 𝐹(𝐴,𝐵,𝐶) = 𝐴̅𝐵𝐶 + 𝐴̅𝐵𝐶̅ + 𝐴𝐵
b) 𝑌 = 𝐴(𝐵 + 𝐶̅ )(𝐵 + 𝐶)
̅̅̅̅ + 𝐴𝐵𝐶 + 𝐴𝐵𝐶̅
c) 𝑌 = 𝐴𝐵
d) 𝑍 = 𝐴𝐵𝐶 + ̅̅̅̅
𝐴𝐶 𝐷 + 𝐵̅ 𝐶𝐷
4. Para cada uma das expressões a seguir, desenvolver o circuito lógico correspondente
usando somente as portas AND, OR e NOT:
a) 𝐹(𝐴,𝐵,𝐶) = 𝐴̅𝐵𝐶 + 𝐴̅𝐵𝐶̅ + 𝐴𝐵𝐶 + 𝐴̅𝐵̅ 𝐶
b) 𝑌 = (𝐴̅ + 𝐵̅ + 𝐶̅ )𝐴𝐵 + 𝐴̅𝐵𝐶̅ + 𝐴𝐵𝐶̅
c) 𝐹 = (̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝐴̅ + 𝐵̅ + 𝐶𝐷𝐸 ) + 𝐵𝐶𝐷 + 𝐴𝐵𝐸

d) 𝑋 = [ ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
(̅̅̅̅̅̅̅̅̅̅̅
𝑀 + 𝑁) + 𝑃𝑄 ] (̅̅̅̅̅̅
𝑃𝑄𝑁 + ̅̅̅̅̅
𝑀𝑁)

144
5. Para cada uma das expressões a seguir, desenhe o circuito lógico:
a) 𝑌 = (𝐴̅ + 𝐵̅)𝐶 + 𝐴̅̅̅̅̅̅̅̅̅̅̅ ̅̅̅̅̅̅
(𝐵 + 𝐶 ) + 𝐴𝐵𝐶
b) 𝑍 = (𝐴⨁𝐵)𝐶 + 𝐴̅̅̅̅̅̅̅̅̅̅̅̅ ̅̅̅̅̅̅
(𝐵 ⊕ 𝐶 ) + 𝐴𝐵𝐶

c) 𝑋 = [ ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
(̅̅̅̅̅̅̅̅̅̅̅
𝑀 + 𝑁) + 𝑃𝑄 ] (̅̅̅̅̅̅
𝑃𝑄𝑁 + ̅̅̅̅̅
𝑀𝑁)

d) 𝑍 = 𝐴𝐶 (𝐴⨁𝐶̅ ) + 𝐵̅ ( ̅̅̅̅̅̅̅̅
𝐴 ⊕ 𝐶 ) + 𝐴̅(𝐶⨀𝐷 )

𝐴 + 𝐵 + 𝐶 + ̅̅̅̅̅̅
e) 𝐹 = ̅̅̅̅̅̅̅̅̅̅̅̅̅ 𝐴̅𝐵𝐶̅ + 𝐴𝐵𝐶
6. Determine a expressão característica dos circuitos lógicos abaixo:
a)

b)

145
7. O que é um CI?
8. Qual é a diferença entre um CI digital de funções lógicas fixa de um CI de funções
lógicas programáveis?
9. Desenhe um CI do tipo DIP de 16 pinos (enumere todos os pinos do CI).
10. Cite três cuidados que devemos ter ao trabalhar com CIs da família CMOS.
11. Qual é o valor de tensão típica usada na alimentação dos CIs da família TTL?
12. Qual é a importância dos data sheets em electrónica?

146
Capítulo IV – Álgebra de Boole
1. Simplifique circuitos lógicos a seguir:
a)

b)

2. Prove as seguintes identidades:


a) (𝐴 + 𝐵̅ + 𝐴𝐵)(𝐴 + 𝐵̅)𝐴̅𝐵 = 𝐵̅𝐵
b) 𝐴̅𝐵(𝐷
̅ + 𝐷𝐶̅ ) + (𝐴 + 𝐴̅𝐶𝐷)𝐵 = 𝐵

147
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
c) [̅̅̅̅̅̅̅̅̅̅ ̅̅̅̅̅ = 𝐶𝐷
(𝐵̅ + 𝐶)]𝐴 + 𝐶𝐷

3. Projectos de circuitos lógicos combinacionais

3.1. A direcção da TAAG requisitou aos alunos IMISM a projecção de um circuito para a
prevenção de acidentes, que será instalado nas suas aeronaves com as seguintes condições:
A tripulação do avião é composta por dois pilotos e um engenheiro de bordo, o alarme
será accionado quando o engenheiro deixar o seu posto ou quando ambos os pilotos
deixarem os seus lugares. Projectar esse circuito lógico.

3.2. A Figura 4.1 mostra um diagrama para um circuito de alarme de automóvel usado para detectar
uma condição indesejada. As três chaves são usadas para indicar, respectivamente, o estado da
porta do motorista, o estado da ignição e o estado dos faróis. Projecte um circuito lógico com
essas três chaves como entrada, de forma que o alarme seja sempre activado que ocorrer uma
das seguintes condições:
 Os faróis estão acesos e a ignição está desligada.
 A porta está aberta e a ignição está ligada.

Figura 4.1 Problema 4.2


3.3. Uma fábrica precisa de uma sirene para indicar o fim do expediente. A sirene deve ser activada
quando ocorrer uma das seguintes condições:
1. Já passou das cinco horas e todas as máquinas estão desligadas.
2. É sexta-feira, a produção do dia foi atingida e todas as máquinas estão paradas.
Projecte um circuito lógico para o controle da sirene. (Sugestão: use quatro variáveis
lógicas de entrada para representar as diversas condições; por exemplo, a entrada A
será nível ALTO apenas quando for 5 horas ou mais).

148
3.4. A Figura 4.2 mostra quatro chaves que fazem parte de um circuito de controlo em uma
máquina copiadora. As chaves estão posicionadas em diversos pontos ao longo da
trajectória do papel dentro da máquina. Cada chave está no estado normal aberta e, quando
o papel passa sobre a chave, ela é fechada. É impossível o fechamento simultâneo das
chaves SW1 e SW4. Projecte um circuito lógico que gere uma saída nível ALTO sempre
que duas ou mais chaves estiverem fechadas ao mesmo tempo.

Figura 4.2 Problema 4.4

4. Simplifique as seguintes funções booleanas usando o mapa de Karnaugh:

a) Y = A̅B̅C̅ + A̅BC̅ + AB̅C̅ + AB̅C + ABC̅ +ABC


b) Y = A̅B̅C̅ + A̅BC̅ + A̅BC + AB̅C̅ + ABC̅
c) FABC = ∑ (0,1,2,3,5,6,7)
d) FABCD = ∑ (0,1,2,3,5,7,8,9,10,13,15)
e) FABCD = ∑ (0,2,5,6,8,10,13,15)
f) FABCD = ∑ (7,11,13,14,15) + d (3,5,6,9,10,12)
g) FABCD = ∑ (0,1,2,4,7,12) + d (8,10,15)
h) FABCD = ∑ (0,1,3,5,7,9,11,13) + d (2,6, 8,14,15)

d- don´t care

Capítulo V – Circuitos Combinatórios

Parte I - Decodificadores e Codificadores


1. O que é um codificador?
1.1.Quais são os tipos de circuitos combinatórios que conheces?
1.2.Um descodificador pode ter mais de uma saída activada de cada vez? Justifique a sua
resposta.
2. Projectar:
a) Um decodificador de 2 entradas para 4 saídas activas em nível ALTO.

149
b) Um decodificador de 2 entradas para 4 saídas activas em nível BAIXO.
c) Um decodificador de 3 entradas para 8 saídas.

3. O que é um decodificador BCD para decimal?

4. Fazer a lista da saída activa para cada um dos pulsos de entrada mostrado na Figura
abaixo.

Saídas

5. Implementar as seguintes funções usando o CI 74LS42:

a) 𝐹(𝐴,𝐵,𝐶) = 𝐴̅𝐵𝐶 + 𝐴̅𝐵𝐶̅ + 𝐴𝐵


b) 𝑌 = 𝐴(𝐵 + 𝐶̅ )(𝐵̅ + 𝐶)
𝐴𝐵 + 𝐴𝐵̅ 𝐶 + ̅̅̅̅̅̅
c) 𝑌 = ̅̅̅̅ 𝐴𝐵𝐶̅
d) 𝐹(𝐴,𝐵,𝐶,𝐷) = 𝐴̅𝐵𝐶𝐷 + 𝐴̅𝐵 𝐶𝐷
̅̅̅̅ + 𝐴𝐵 (Comente a sua resposta).

6. É correcto, conectar um decodificador BCD para 7 segmentos (saídas activas em nível


BAIXO) à um display de 7 segmentos cátodo comum? Justifique a sua resposta. Em
seguida, faça um esquema com a melhor solução.

7. Um decodificador BCD para 7 segmentos acciona um display conforme mostra a Figura


abaxo. Se as formas de onda são aplicadas conforme indicado, determine a sequência de
dígitos que aparecem no display.

150
8. Um decodificador BCD para 7 segmentos acciona um display conforme mostra a Figura
abaxo. Se as formas de onda são aplicadas conforme indicado, determine a sequência de
dígitos que aparecem no display.

9. Faça uma lista dos possíveis defeitos para cada decodificador/display da Figura abaixo:

10. Um descodificador pode ter mais de uma saída activada de cada vez? Justifique a sua
resposta.
11. Projectar um codificador 8/3.
12. Determine os estados das saídas do CI 74147 - Codificador com prioridade quando
𝐴̅6 , 𝐴̅4 e 𝐴̅3 estiverem em BAIXO e todas as outras entradas estiverem em ALTO.

13. Um CI codificador 74HC147 tem nível BAIXO nos pinos 2, 5 e 12 (consulte o diagrama
de pinagem). Qual o código BCD que aparece nas saídas se todas as outras entradas
estiverem em nível ALTO?
Parte II -Multiplexadores e Demultiplexadores
14. O que é um multiplexador?
14.1. Quais são os multiplexadores que conheces?
14.2. Para que serve as entradas de selecção?
14.3. Para que serve as entradas de dados?
14.4. Para que serve a entrada de HABILITAÇÃO em um MUX?

151
15. Projectar:
d) Um MUX de 2 entradas de selecção.
e) Um MUX de 3 entradas de selecção.
f) Qual é a função da entrada de HABILITAÇÃO (ENABLE) no CI 74151?
16. Qual é o estado da saída do CI 74151 (Multiplexador de 8 entradas de dados) para cada
uma das condições abaixo:
a) 𝐸̅ = 1, S2 = 0, S1=1, S0=1
b) 𝐸̅ = 0, S2 = 0, S1=1, S0=1
c) 𝐸̅ = 0, S2 = 1, S1=1, S0=1
17. As formas de onda da entrada de dados e das entradas de selecção de dados vistas na Figura
abaixo são aplicadas no multiplexador de duas entradas de selecção. Determine a forma de
onda de saída (Y) em relação às entradas.

18. Verdadeiro ou falso: quando um multiplexador é usado para implementar uma função
lógica, as variáveis lógicas são aplicadas nas entradas de dados do multiplexador.
19. Implementar as seguintes funções usando o CI 74LS151:
a) 𝐹(𝐴,𝐵,𝐶) = 𝐴̅𝐵𝐶 + 𝐴̅𝐵𝐶̅ + 𝐴𝐵
b) 𝑌 = 𝐴(𝐵 + 𝐶̅ )(𝐵 + 𝐶)
c) 𝐹(𝐴,𝐵,𝐶,𝐷) = 𝐴̅𝐵𝐶𝐷 + 𝐴̅𝐵 𝐶̅ + 𝐴𝐵𝐶
d) FABCD = ∑ (0,2,5,6,8,10,13,15)

20. Use CIs 74LS151 e qualquer outra lógica necessária para multiplexar 16 entradas de dados
em uma única linha de dados de saída.
21. Explique a diferença entre um DEMUX e MUX.

152
22. Para cada item, indique se ele se refere a um decodificador, um codificador, a um MUX ou
a um DEMUX.
a) Tem mais entradas do que saídas.
b) Usa entradas de SELECÇÃO.
c) Produz um código binário em sua saída.
d) Apenas uma de suas saídas pode ser activada de cada vez.
e) Pode ser usado para gerar funções lógicas arbitrárias.
23. Projectar um DEMUX de 2 entradas de selecção de dados.
24. Verdadeiro ou falso: o circuito para um DEMUX é basicamente o mesmo que para um
decodificador.
Parte III - Circuitos Aritméticos
25. Utilize o CI 7483 para somar os seguintes números binários:
a) A = 1101 e B = 1110
b) A = 810 e B = 710
c) A = 1001 e B = 1111

26. Para expandir um somador paralelo de 4 bits para um somador paralelo de 8 bits, temos
que:
(a) Usar quatro somadores de 4 bits sem interconexões.
(b) Usar dois somadores de 4 bits conectando as saídas soma de um nas entradas de bit do
outro.
(c) Usar oito somadores de 4 bits sem interconexões.
(d) Usar dois somadores de 4 bits com a saída de carry de um conectado na entrada
carry do outro.

27. Mostre como dois somadores 74LS83 podem ser conectados para formar um somador
paralelo de 8 bits. Mostre os bits de saída para os seguintes números de entrada de 8 bits:
a) A = 10111001 e B =10011110
b) A = FA16 e B =FE16
c) A = 19910 e B = 16710

28. Quantos CIs 74LS83 são necessários para somar dois números de 20 bits?

29. Verdadeiro ou falso: quando o circuito somador/subtrador é usado para adição, as portas
EXCLUSIVE – OR, funcionam como inversores.

153
30. Utilize o CI 7483 para somar e subtrair os seguintes números binários:
a) A = 1101 e B =1001
b) A = 1111 e B =0110
c) A = 10111001 e B =00010010
d) A = 11001001 e B =00010011

31. Projectar um comparador de um bit.


32. Projectar um comparador de dois bits
33. Determine as saídas A = B, A > B e A < B, do comparador do CI 7485 para os números de
entradas:
a) A = 1001 e B = 1001
b) A = 0111 e B = 1010
c) A= 1001 e B = 0101

154
Exercícios propostos
Capítulo VI – Circuitos Sequenciais
Parte I – Flip-Flops
1. O que é um circuito combinacional?
2. Indique três características dos circuitos combinacionais.
3. O que é um circuito sequencial?
4. Indique três características dos circuitos sequenciais.
5. Quais são as diferenças entre circuitos combinacionais e circuitos sequenciais?
6. O que entendes por flip-flop. Quais são os seus estados possíveis das saídas?
7. É permitido o flip-flop apresentar os seguintes estados: 𝑄 = 1 → 𝑄̅ = 1 ou 𝑄 = 0 → 𝑄̅ =
0 ? Justifique a sua resposta.

8. Levante a TV do flip-flop da figura abaixo e identifique as entradas S e R. Argumente a


sua resposta.

9. Desenhe o símbolo lógico, a TV e o circuito lógico do flip-flop RS básico.


10. Quais são os modos de operação do flip-flop RS básico?
11. Apresente os valores binários da saída normal (Q) do flip-flop RS da Figura 1.

Figura 1

12. Apresente o modo de operação do flip-flop RS para cada pulso de entrada mostrado na
Figura 1.

155
13. Determine as formas de onda das saídas Q do flip-flop RS visto na Figura 1, em função
dos sinais aplicados nas entradas.
14. Se as formas de onda e mostradas na Figura 2 são aplicadas nas entradas do flip flop RS
básico, determine a forma de onda observada na saída Q. Considere que Q está inicialmente
em nível BAIXO.

Figura 2

15. Os sistemas digitais podem operar de modo assíncrono ou de modo síncrono.


15.1. Explique a diferença entre os sistemas assíncronos e os sistemas síncronos.
15.2.Qual é a importância do clock nos sistemas assíncronos?
16. Qual é a diferença entre transição positiva e transição negativa?
17. Desenhe a simbologia de:
a) Um flip-flop RS com transição positiva.
b) Um flip-flop RS com transição negativa.
18. Desenhe o símbolo lógico, a TV e o circuito lógico do flip-flop RS com entrada clock.
19. Quais são os modos de operação do flip-flop RS?

20. Apresente os valores binários da saída normal (Q) do flip-flop RS da Figura 3.

Figura 3
21. Apresente o modo de operação do flip-flop RS para cada pulso de entrada mostrado na
Figura 3.

156
22. Os valores binários da saída normal do flip-flop RS da Figura 3, considerando que o flip-
flop é disparado na borda negativa. Considere que Q está inicialmente resetado.

23. Desenhe o símbolo lógico, a TV e o circuito lógico do flip-flop JK.


24. Quais são os modos de operação do flip-flop JK?

25. Faça lista dos valores binários da saída normal (Q) do flip-flop JK da Figura 4, depois da
aplicação de cada pulso do relógio. Considere que Q está inicialmente resetado.
26. Apresente o modo de operação do flip-flop JK para cada pulso de entrada mostrado na
Figura 4.

Figura 4

27. Faça lista dos valores binários da saída normal (Q) do flip-flop JK da Figura 5, depois da
aplicação de cada pulso do relógio. Considere que Q está inicialmente resetado.

28. As formas de onda vista na Figura 5 são aplicadas no flip-flop como mostrado. Determine
a saída Q para o flip-flop começando no estado RESET.

Figura 5

157
29. Indique os modos de operação do Flip-Flop JK da Figura 5 para os pulsos de clock
aplicados na entrada.
30. Desenhe o símbolo lógico e a TV do flip-flop JK com entradas CLEAR e PRESET.
31. O que acontece ao flip-flop JK se a entrada CLEAR estiver em nível BAIXO e a entrada
PRESET estiver em nível ALTO?
32. O que acontece ao flip-flop JK se a entrada CLEAR estiver em nível ALTO e a entrada
PRESET estiver em nível BAIXO?
33. Faça lista dos valores binários da saída normal (Q) do flip-flop JK da Figura 6, depois da
aplicação de cada pulso do relógio. Considere que Q está inicialmente resetado
34. As formas de onda vista na Figura 6 são aplicadas no flip-flop como mostrado. Determine
a forma de onda da saída Q para o flip-flop.

Figura 6

35. Sobre a universalidade do flip-flop JK responde:


35.1.Mostre como obtemos o flip-flop tipo D a partir do flip-flop JK.
35.2.Mostre como obtemos o flip-flop tipo T a partir do flip-flop JK.
36. Desenhe a TV e a simbologia do flip-flop tipo D.
37. Desenhe a TV e a simbologia do flip-flop tipo T.

38. Dadas as formas de onda na Figura 7 para a entrada D e o clock, determine a forma de
onda na saída Q se o flip-flop começar resetado.

158
Figura 7
39. Determine as formas de onda das saídas Q e 𝑄̅ do flip-flop tipo T visto na Figura 8, em
função dos sinais aplicados nas entradas. Considere que a entrada T está em nível baixo
em todos os instantes.

Figura 8

40. Explique o funcionamento do flip-flop JK Mestre-Escravo.

PARTE II - CONTADORES ASSÍNCRONOS E


SINCRONOS
41. Define contadores e indique as suas principais características.
42. Um contador que conta de 0 a 6, chama-se contador módulo _______.
43. Um contador que conta de 0 a 13, chama-se contador módulo _______.
44. Um contador que conta de 6 a 0, chama-se contador módulo _______.
45. Elaborar um contador assíncrono crescente de 0 a 7 (circuito lógico, TV e diagrama
temporal).
46. Projectar um contador assíncrono crescente de módulo 16.
47. Elaborar um contador assíncrono de 0 a 4 (módulo 5).

48. Determine a frequência de saída deste contador, sabendo que a frequência do sinal
de clock é de 20 KHz.
49. Projectar um contador assíncrono de década.

159
50. Elaborar um contador assíncrono de 5 a 0.
51. Projectar um contador crescente/decrescente módulo 16.
52. Elabore um contador síncrono módulo 6.
53. Elabore um contador síncrono módulo 8.
54. Elabore um contador síncrono que execute a sequência mostrada no diagrama da
figura abaixo. Considere os casos não pertencentes ao diagrama, como irrelevantes
(don´t care).

55. Elabore um contador síncrono que execute a sequência mostrada no diagrama da


figura abaixo. Considere os casos não pertencentes ao diagrama, como
irrelevantes.

160

Você também pode gostar