Buscar

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 30 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

CIRCUITOS COMBINACIONAIS VIRGÍNIA VAROTTO 
 1 
Capítulo 4: Circuitos Combinacionais MSI 
 
 
 Circuitos combinacionais são aqueles cujas saídas dependem somente dos níveis das 
entradas em qualquer instante. Os circuitos vistos até então possuem esta característica. Aqui 
serão apresentados circuitos combinacionais que realizam funções específicas. 
 
1. Multiplexadores 
 Multiplexador, ou seletor de dados, é um circuito lógico que aceita várias entradas de 
dados e só permite que uma de cada vez alcance a linha de saída. São circuitos utilizados no 
compartilhamento de um único canal por vários sinais. Operam como chaves seletoras de dados, 
como mostrado abaixo: 
 
 
 O roteamento do dado que está na entrada que desejamos colocar na saída é controlado 
pelas entradas de seleção ou entradas de endereço. A figura seguinte apresenta o símbolo de um 
multiplexador, ou simplesmente mux, com quatro entradas (canais) de dados, C0, C1, C2 e C3, e 
duas entradas de seleção, S0 e S1. S1 corresponde à entrada de seleção mais significativa. O código 
digital aplicado as entradas de seleção controla qual dos dados de entrada vai ser colocado na 
saída. 
 
 
 
 O número de entradas de seleção é tal que 2M = N, onde N é o número de combinações 
diferentes das entradas. A cada entrada de seleção está associada uma entrada de dados. 
 O circuito funciona do seguinte modo: a saída assume o nível presente na entrada (canal) 
de dados Ci enquanto a combinação binária presente nas entradas de seleção (endereço) 
permanecer equivalente ao decimal “i”. Ou seja: 
 
S1 S0 F 
0 0 C0 
0 1 C1 
1 0 C2 
1 1 C3 
Exemplo: Projeto de um mux de 2 entradas (canais) de dados. 
 
CIRCUITOS COMBINACIONAIS VIRGÍNIA VAROTTO 
 2 
Para um mux de 2 canais de dados (C0 e C1) é necessário somente 1 entrada de endereço (S0). 
Modo de operação: 
S0 F 
0 C0 
1 C1 
Tabela verdade: 
 
S0 C0 C1 F 
0 0 0 0 
0 0 1 0 
0 1 0 1 
0 1 1 1 
1 0 0 0 
1 0 1 1 
1 1 0 0 
1 1 1 1 
 
Mapa de Karnaugh: 
 
 C C0 1. C C0 1. C C0 1. C C0 1. 
S0 0 0 1 1 
S0 0 1 1 0 
 
Equação minimizada: 
0010 C.SC.SF  
 
Circuito lógico: 
O nível lógico aplicado a entrada So determina qual das portas E estará habilitada, de 
modo que seu dado de entrada passará pela porta OU, em direção a saída. 
 
 
 
 Vê-se no circuito obtido a característica de seleção da porta AND. Um nível 0 em uma de 
suas entrada “anula” os demais sinais presentes na mesma porta, enquanto um nível 1 “permite” 
a passagem do dado, como se vê abaixo: 
 
 
 
 Para o projeto de um mux com duas entradas, foi necessário um mapa de Karnaugh com 
três variáveis. Para se projetar um com quatro entradas seria necessário um mapa com seis 
entrada 
de dados 
entrada de seleção 
 
CIRCUITOS COMBINACIONAIS VIRGÍNIA VAROTTO 
 3 
variáveis. Acima de quatro entradas já é impossível se projetar o mux pelo mapa de Karnaugh. 
Por isso, passa-se a fazê-lo por analogia ao mux com duas entradas. 
 
Exemplo: Projeto do circuito lógico de um mux com 4 entradas (4/1). 
Temos quatro entradas que são seletivamente transmitidas para a saída, de acordo com as quatro 
possíveis combinações das duas linhas de seleção So e S1. Cada entrada de dado é identificado por 
uma combinação diferente dos níveis lógicos presentes nas linhas de seleção. 
 
Modo de operação: 
 
S1 S0 F 
0 0 C0 
0 1 C1 
1 0 C2 
1 1 C3 
 
301201101001 CSSCSSCSSCSSF  
 
Circuito lógico: 
 
 
 
1.1. Produtos Canônicos 
 Como já visto, com n variáveis booleanas podem-se fazer 2n combinações. Por exemplo, 
com 2 variáveis: 
A.B=P 1=B e 1=A )d
BA.=P 0=B e 1=A )c
B.A=P 1=B e 0=A )b
B.A=P 0=B e 0=A )a
3
2
1
0




 
 
 Os produtos P0, P1, P2 e P3 com duas variáveis são denominados produtos canônicos. No 
caso (a), o produto P0 é igual a 1 somente quando A=0 e B=0. No caso (b), o produto P1 é igual a 
1 somente quando A=0 e B=1; e assim sucessivamente. 
 
 Pode-se utilizar um circuito gerador de produtos canônicos para implementar um mux. Isto 
dá ao circuito resultante uma característica modular. Exemplo: 
 
 
CIRCUITOS COMBINACIONAIS VIRGÍNIA VAROTTO 
 4 
 
 
1.2. Entradas Strobe 
 A entrada denominada strobe (também chamada de enable ou habilitação) em circuitos 
combinacionais é usada para bloquear a operação do mesmo. Quando assume nível 1, a saída do 
mux vai a 0 independentemente das entradas de seleção e de dados. Quando assume nível 0, o mux 
fica liberado. A seguir, exemplo de um mux de 4 canais com entrada strobe (G). 
 
 
 
1.3. Aplicação de Multiplexadores 
a) Geração de Funções 
 Para o uso de multiplexadores na implementação de funções, deve-se escolher um mux 
com número de entradas de endereço (seleção) igual ou maior ao número de variáveis da função 
e relacionar cada entrada de dados com um mintermo da função. Cada variável deve então ser 
associada à entrada de endereço de mesma significação. Quando a função é igual a 1 para um 
mintermo, colocar nível 1 nos canais correspondentes. 
 
Exemplo: Projeto da função abaixo usando muxs. 
 m (0,1,4,5))C,B,A(F 
Como a função tem 3 variáveis, escolhe-se um mux com 3 entradas de seleção. Somente os canais 
de dados 0, 1, 4 e 5 são polarizados com nível 1. 
 
CIRCUITOS COMBINACIONAIS VIRGÍNIA VAROTTO 
 5 
 
 
 A entrada de dados C7 é a entrada mais significativa (MSB) pois corresponde a 
combinação das entradas de seleção S2S1S0 = 111 e a entrada de dados C0 é a menos significativa 
(LSB) pois corresponde a combinação das entradas de seleção S2S1S0 = 000. Por exemplo, se 
tivermos nas entradas de dados C0= C1= C4= C5= 1 e C2= C3= C6= C7= 0 teremos na saída a 
seguinte sequência de bits: 00110011, onde o bit mais significativo (MSB) corresponde a C7 e o 
bit menos significativo (LSB) corresponde a C0. 
 
Exercícios: Construir um circuito lógico para as expressões: 
a)  m 1,14,15)(0,5,6,8,1)D,C,B,A(F b)  m )(1,4,5,6,7)C,B,A(F 
c) Com um MUX de 16/1 (4 variáveis de entrada) obter na saída os números primos. 
 
b) Associação de Multiplexadores 
 Vários multiplexadores podem ser arranjados de modo a expandir o número de entradas 
de dados. 
 
Exemplo 1: Obtenção de mux com 4 canais de dados a partir de muxs de 2 canais de dados. 
 
 Ao entrarmos com o endereço AB = 00, deveremos encontrar na saída o informação D0. 
Com o endereço AB = 01, deveremos encontrar na saída o informação D1, e assim por diante. 
 
CIRCUITOS COMBINACIONAIS VIRGÍNIA VAROTTO 
 6 
Exemplo 2: Obtenção de mux com 16 entradas de dados a partir de muxs de 8 entradas de dados 
com strobe (enable), um inversor e uma porta OU. 
 
 O circuito tem um total de 16 dados de entrada, oito dos quais aplicados a cada um dos 
dois multiplexadores, cujas saídas estão combinadas através da porta OU, para produzirem uma 
única saída X. As quatro linhas de seleção, S3S2S1S0 vão selecionar uma das 16 entradas e passá-
la para a saída X. 
 A entrada S3 determina qual dos multiplexadores estará habilitado. Quando S3=0, o 
multiplexador de cima é habilitado, e as entradas S2S1S0 determinam quais dos seus dados de 
entrada vai passar pela porta OU e aparecer na saída X. Quando S3=1, o multiplexador de baixo é 
habilitado, e as entradas S2S1S0 selecionam uma de suas entradas para aparecer em X. 
 
Co
C1
C3
C4
C5
C6 Z
C7
E
S2
S1
So
entrada
de dados
S3
S2
S1
S0
Co
C1
C3
C4
C5
C6 Z
C7
E
S2
S1
So
entrada de
dados
X
 
 
Exemplo 3: Obtenção de um MUX de 16 canais de dados utilizando somente blocos de 8 canais 
de dados. 
 O mux que possui as entradas de seleção curto circuitadas apresentará somente os 
endereços 000 (A=0) ou 111 (A=1), então só usaremos as entradas de dados C0 e C7 sendo que as 
demais entradas de dados ficam em aberta (não são endereçadas). A entrada de seleção A é a mais 
significativa, depois teremos B, C e D. 
 
 
CIRCUITOS COMBINACIONAIS VIRGÍNIA VAROTTO 
 7 
C0
C1
C2
C3
C4
C5
C6
C7
S2 S1S0
C0
C1
C2
C3
C4
C5
C6
C7
S2 S1 S0
C0 (000)
C1
C2
C3
C4
C5
C6
C7 (111)
S2 S1 S0
I0
I1
I2
I3
I4
I5
I6
I7
I8
I9
I10
I11
I12
I13
I14
I15
B C D A (MSB)
S
 
 
Exercício: Implementar um multiplexador de 16 canais de dados utilizando dois mux de 8 canais 
e um de 2 canais de dados. 
 
c) Seleção de Palavras 
 Muitas vezes interessa a seleção de uma dentre várias palavras com n bits. Isto é possível 
pela distribuição conveniente, nos canais de um multiplexador, dos bits das palavras a serem 
selecionadas. No exemplo apresentado deseja-se selecionar uma entre quatro palavras (X, Y, Z e 
W), cada uma com 2 bits. Distribui-se a palavra X (X1X0) nos canais 0, a palavra Y (Y1Y0) nos 
canais 1, a palavra Z (Z1Z0) nos canais 2 e a palavra W (W1W0) nos canais 3 em dois 
multiplexadores com 4 canais. Uma entrada de seleção, A e B, respectivamente iguais a 0 e 1, por 
exemplo, seleciona a palavra Y. 
 
1.4. Circuitos Integrados Comerciais 
 
CIRCUITOS COMBINACIONAIS VIRGÍNIA VAROTTO 
 8 
 
74157 multiplexador 2:1 quádruplo TTL 
74153 multiplexador 4:1 duplo TTL 
74151 multiplexador 8:1 TTL 
74150 multiplexador 16:1 TTL 
74253 seletor de dados/multiplexador 4:1 duplo 
4019 multiplexador 2:1 quádruplo CMOS 
 
2- Decodificadores 
 Um decodificador é um circuito lógico que converte um código binário de N bits que lhe 
é apresentado como entrada, em M linhas de saída, sendo que cada linha de saída será ativada por 
uma, e somente uma, das possíveis combinações dos bits de entrada (também chamados de 
códigos). O número de entradas de dados N pode ser um número inteiro qualquer e o número de 
saídas M é sempre um inteiro menor ou igual a 2N. 
 A figura abaixo apresenta o diagrama funcional de um decodificador simples. Possui 2 
entradas de dados (E0 e E1) e 4 saídas (S0, S1, S2 e S3). 
 
 
 
 Cada uma das M saídas é associada a uma, e somente uma, das 2N combinações de 0’s e 
1’s nas entradas. Os decodificadores são classificados como circuitos a multifunção, ou seja, 
circuitos com mais de uma saída, cada uma correspondendo a uma função booleana. As saídas 
correspondem a funções com as mesmas variáveis e devem ser projetadas individualmente. 
 Para cada uma das combinações de entrada, apenas uma das M linhas de saída poderá estar 
ativada (ALTO), devendo as demais estar necessariamente desativadas (BAIXO). Muitos 
decodificadores são construídos de forma a produzir saídas ativas-BAIXO, onde somente a linha 
de saída selecionada estará no nível BAIXO, ao passo que todas as demais deverão estar no nível 
ALTO. Esta situação é indicada com a bolha de inversão nas linhas de saída do decodificador. 
 
 Funciona da seguinte forma: a saída Si, e somente ela, assume nível 0 quando a 
combinação de 0’s e 1’s nas entradas for equivalente ao decimal “i”. Exemplo: 
 
 
 
 
E1 E0 S0 S1 S2 S3 
0 0 0 1 1 1 
0 1 1 0 1 1 
1 0 1 1 0 1 
1 1 1 1 1 0 
 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 9 
Observa-se neste caso que as saídas ativas estão 
em nível BAIXO (Low) devido a utilização das 
portas lógicas NAND. 
 
 Dependendo do número de entradas e saídas, os decodificadores recebem denominações 
especiais, tais como, decodificador hexadecimal (4 para 16 linhas), decimal (4 para 10 linhas) ou 
decodificador 3/8 (3 para 8 linhas). 
 
2.1. Decodificadores Hexadecimais 
 A figura seguinte mostra a tabela de combinações e o símbolo de um circuito decodificador 
comercial típico com 16 saídas. 
 Além das entradas de dados DCBA (D corrrespondendo à entrada mais significativa), o 
circuito possui, também, entrada para bloqueio tipo strobe (G), ou seja, a habilitação do circuito. 
 Enquanto G permanecer em 1, as saídas, independentemente das entradas de dados, 
permanecem em 1, ou seja, o circuito não realiza a decodificação. O circuito fica liberado enquanto 
o strobe permanecer em nível 0. 
 
 
 
Entradas Saídas 
D C B A G S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15 
X X X X 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 
0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 
0 0 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 
0 0 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 
0 0 1 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 
0 1 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 
0 1 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 
0 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 
0 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 
1 0 0 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 
1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 
1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 
1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 
1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 
1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 
1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 
1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 
 No projeto de um decodificador devemos considerar o fato de as 16 funções (S0 S1 S2 ... 
S15) possuírem as mesmas 5 variáveis (DCBAG). Cada função deve ser projetada individualmente. 
 Seja a expressão algébrica minimizada da função S8 obtida com o mapa de Karnaugh: 
S D C B A G8      
 A mesma expressão poderia ser obtida através de seu único maxtermo. 
 A expressão obtida corresponde a uma porta OR com cinco entradas. Se for 
convenientemente manipulada podemos obter uma expressão equivalente a uma porta NAND com 
cinco entradas, ou seja: 
S DCBA G8  . 
Decodificador 
Hexadecimal 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 10 
 Nota-se que o termo DCBA corresponde à expressão algébrica do mintermo oito e está 
diretamente relacionado com a saída S8. Ou seja, considerando a similaridade das demais funções 
do decodificador, podemos concluir, sem a necessidade da implementação da cada função no mapa 
de Karnaugh, que: 
 
S DCBA G0  . S DCBA G4  . S DCBA G8  . S DCBA G12  . 
S DCBA G1  . S DCBA G5  . S DCBA G9  . S DCBA G13  . 
S DCBA G2  . S DCBA G6  . S DCBA G10  . S DCBA G14  . 
S DCBA G3  . S DCBA G7  . S DCBA G11  . S DCBA G15  . 
 
 Estas equações são usadas para a obtenção do circuito decodificador hexadecimal com 
entrada strobe. 
 
2.2. Decodificadores Decimais 
 São apresentados a seguir o diagrama funcional, a tabela de combinações e as equações 
algébricas obtidas de forma similar àquelas do hexadecimal, com a exclusão da entrada G. 
 
 
 
Entradas Saídas 
D C B A S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 
0 0 0 0 0 1 1 1 1 1 1 1 1 1 
0 0 0 1 1 0 1 1 1 1 1 1 1 1 
0 0 1 0 1 1 0 1 1 1 1 1 1 1 
0 0 1 1 1 1 1 0 1 1 1 1 1 1 
0 1 0 0 1 1 1 1 0 1 1 1 1 1 
0 1 0 1 1 1 1 1 1 0 1 1 1 1 
0 1 1 0 1 1 1 1 1 1 0 1 1 1 
0 1 1 1 1 1 1 1 1 1 1 0 1 1 
1 0 0 0 1 1 1 1 1 1 1 1 0 1 
1 0 0 1 1 1 1 1 1 1 1 1 1 0 
 
 Seja a expressão algébrica da função S0 obtida através de seu único maxtermo ou 
minimizada com o mapa de Karnaugh: 
ABCDS0  
 A expressão obtida corresponde a uma porta OR com quatro entradas. Se for 
convenientemente manipulada podemos obter uma expressão equivalente a uma porta NAND com 
quatro entradas, ou seja: 
ABCDS0  
 Nota-se que o termo ABCD corresponde à expressão algébrica do mintermo zero e está 
diretamente relacionado com a saída S0. Ou seja, considerando a similaridade das demais funções 
Decodificador 
 Decimal 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 11 
do decodificador, podemos concluir, sem a necessidade da implementação da cada função no mapa 
de Karnaugh, que: 
 
S DCBA0  S DCBA1  S DCBA2  S DCBA3  S DCBA4  
S DCBA5  S DCBA6  S DCBA7  S DCBA8  S DCBA9  
 
 Nos decodificadores decimais, ou BCD-decimal, não é apresentada a lei de formação para 
números maiores do que 9, no entanto, se utilizarmos 4 variáveis de entrada teremos 16 
combinações possíveis, portanto, tanto faz o valor assumido nas possibilidades excedentes já que 
estas não irão ocorrer. Normalmente, nos CI’s comerciais com saídas ativo-BAIXO, as 
combinações correspondentes aos decimais 10 a 15 apresentam todas as saídas em 1. 
 
2.3. Decodificadores 3/8A tabela abaixo representa o modo de funcionamento de um decodificador 3/8. Trata-se de 
um decodificador 3 para 8 linhas, ou seja, um decodificador com 8 canais de saída. Também é 
chamado de decodificador 1 de 8 pois apenas uma dos 8 canais está ativo em cada instante. 
 
Entradas Saídas 
C B A S0 S1 S2 S3 S4 S5 S6 S7 
0 0 0 0 1 1 1 1 1 1 1 
0 0 1 1 0 1 1 1 1 1 1 
0 1 0 1 1 0 1 1 1 1 1 
0 1 1 1 1 1 0 1 1 1 1 
1 0 0 1 1 1 1 0 1 1 1 
1 0 1 1 1 1 1 1 0 1 1 
1 1 0 1 1 1 1 1 1 0 1 
1 1 1 1 1 1 1 1 1 1 0 
 
C, B e A são as entradas de seleção, onde C corresponde à entrada mais significativa. As 
equações para implementação do decodificador 3 para 8 linhas são obtidas de forma análoga aos 
decodificadores anteriores. Se as saídas são ativo-BAIXO a implementação do circuito é realizada 
com portas NAND. 
 Poderíamos utilizar um decodificador com saídas ativo-ALTO, ou seja, com a saída 
habilitada em 1 e as demais saídas desabilitadas em 0. Para implementar o circuito ativo-ALTO 
são utilizadas portas AND. 
 O circuito integrado 74138 pode ser utilizado como decodificador 1 para 8. Este CI possui 
3 entradas de habilitação ( 1E , 2E e E3) que são usadas para controlar a operação do circuito. Estas 
entradas de habilitação estão ligadas a uma porta AND e a saída desta AND deve estar em nível 
lógico ALTO para habilitar o decodificador e este responder as entradas A2A1A0. Isto só vai 
ocorrer quando 1E = 2E =0 e E3=1. Se uma das entradas de habilitação estiver no seu nível inativo, 
a saída da AND será BAIXO e o decodificador estará desabilitado, independente do código 
aplicado na entrada. 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 12 
A2
A1 Decodificador - 74138
A0
código de
seleção
O7 O6 O5 O4 O3 O2 O1 O0
Entrada de habilitação
 E1 E2 E3
 Porta AND interna,
 Habilitada em nível ALTO
 
 
2.4. Aplicações 
a) Geração de funções 
 Um decodificador com n entradas pode ser usado para implementar qualquer função com 
n variáveis, desde que: 
i) Cada linha de saída seja associada a um dos mintermos da função; 
ii) As entradas de mesma significação da função e do decodificador sejam interligadas; 
iii) Se a saída do decodificador for ativo-BAIXO, a saída da função será obtida de uma porta 
NAND cujas entradas coincidam com as saídas do decodificador correspondentes a mintermos 
para os quais a função assume 1. 
iv) Se a saída do decodificador for ativo-ALTO, a saída da função será obtida de uma porta OU 
cujas entradas coincidam com as saídas do decodificador correspondentes a mintermos para os 
quais a função assume 1. 
 
 Por exemplo, deseja-se implementar a função F(X,Y,Z,W) = m(1, 3, 6, 7, 10) usando 
decodificador: 
 
Exercício: Implementar um detetor de números primos utilizando um decocificador com saída 
ativo-BAIXO. 
 
b) Associação de decodificadores 
 Um arranjo conveniente de circuitos decodificadores pode ser desenvolvido para a 
obtenção de um circuito equivalente a um decodificador com número de saídas elevado. 
 O procedimento apresentado a seguir vale para decodificadores que possuam entradas tipo 
enable ou strobe: 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 13 
i) Selecionar o circuito integrado; 
ii) Interligar as entradas com mesma significação; 
ii) Obter as entradas de dados a partir das entradas do tipo enable. 
iv) Projetar um circuito de controle que garanta a operação de apenas um dos decodificadores, 
enquanto os demais ficam bloqueados. 
 
 O próximo exemplo apresenta a associação de dois decodificadores com 16 canais para a 
obtenção de um circuito equivalente a um decodificador com 32 canais. Nas 16 primeiras 
combinações E4 = 0, o que garante o bloqueio do decodificador inferior. 
 
 
 
Exercício: Mostrar como o 74138 pode ser configurado para funcionar como um decodificador 1 
de 16, ou seja, uma saída ativa das 16. 
 
2.5. Circuitos Integrados Comerciais 
 A tabela abaixo apresenta alguns dos circuitos integrados decodificadores. 
74138 decodificador/demultiplexador 3 para 8 linhas 
7442 decodificador de BCD para decimal 
7445 decodificador de BCD para decimal coletor aberto 
74154 decodificador/demultiplexador de 4 para 16 linhas 
 
3- Codificadores 
 Os codificadores (encoders) executam operação inversa dos decodificadores. Um 
codificador opera com entradas que têm a característica de, em qualquer momento, somente uma 
ser escolhida para ter nível lógico diferente de todas as outras. As entradas do codificador muitas 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 14 
vezes são as saídas de um decodificador. Para cada linha de entrada escolhida, uma palavra de 
código correspondente aparece nas linhas de saída. 
 A figura abaixo apresenta o diagrama funcional de um codificador simples. Possui 4 
entradas de dados (E0, E1, E2 e E3) e 2 saídas (S0 e S1). Em geral, não é necessário que exista uma 
relação especial entre o número de linhas de entrada e o número de linhas de saída. 
 Cada uma das N entradas Ei é associada ao decimal “i”. Quando um nível 0 é colocado na 
entrada Ei, o equivalente binário ao decimal “i” aparece nas M saídas. 
 
 
 
 
 
 
 
E0 E1 E2 E3 S1 S0 
0 1 1 1 0 0 
1 0 1 1 0 1 
1 1 0 1 1 0 
1 1 1 0 1 1 
 
 Já estudamos o funcionamento de um decodificador 3 para 8 e vimos que ele aceita um 
código de entrada de três bits e ativa uma das oito linhas de saída correspondente a este código. 
Um codificador 8 para 3 realiza a função exatamente oposta: ele aceita oito linhas de entrada e 
produz um código de três bits na saída, correspondente a entrada ativada. A figura abaixo mostra 
o diagrama lógico do codificador octal-binário com entradas ativas-BAIXO e sua tabela verdade. 
Podemos verificar que um nível BAIXO em qualquer uma das entradas vai produzir um código 
binário na saída correspondente a entrada ativada. Por exemplo, um nível BAIXO 3A (enquanto 
todas as demais entradas estiverem em ALTO) produzirá na saída 011, que vem a ser o código 
binário correspondente a 3. Note que 0A não está conectado as portas lógicas, pois a saída do 
decodificador deve ser 000 quando nenhuma das entradas 1A a 9A estiver em BAIXO. 
 
 
 
 
O0
LSB
O1
O2
MSB
A0
A1
A2
A3
A4
A5
A6
A7
8
entradas
 
 
 
 
 
 
0A
 
1A
 
2A
 
3A
 
4A
 
5A
 
6A
 
7A
 O2 O1 O0 
X 1 1 1 1 1 1 1 0 0 0 
X 0 1 1 1 1 1 1 0 0 1 
X 1 0 1 1 1 1 1 0 1 0 
X 1 1 0 1 1 1 1 0 1 1 
X 1 1 1 0 1 1 1 1 0 0 
X 1 1 1 1 0 1 1 1 0 1 
X 1 1 1 1 1 0 1 1 1 0 
X 1 1 1 1 1 1 0 1 1 1 
 
75310
76321
76542
AAAAO
AAAAO
AAAAO



 
 
 
Exercícios: 
1- Projetar o codificador acima com entrada ativo-ALTO. 
2- Projetar o seguinte codificador: 
entrada saída 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 15 
 I0 00110011 
 I1 11110000 
 I2 01010101 
 I3 00011100 
 
 O codificador pode ser usado na interface entre um teclado e um circuito digital. Quando 
uma tecla é pressionada, apenas uma das várias saídas do teclado é desativada (nível 0) e 
consequentemente, apenas uma das entradas do codificador recebe sinal 0. Desta forma, o binário 
na saída do codificador corresponde ao decimal da tecla pressionada. 
 
 
 
 A tabela de combinações abaixo representa o codificador com prioridade. Isto porque 
quando duas entradas forem acionadas ao mesmo tempo, a saída responderá à entrada com maior 
índice, ou seja, se as entradas E5 e E4 forem acionadas simultaneamente, o circuito optará por 
fornecer o binário equivalente ao decimal 5. Assim, a entrada E5 tem prioridade sobre as entradas 
E4, E3, E2, E1 e E0. 
 A entrada EI corresponde à entrada enable. Quando em nível 0, o circuito fica habilitado. 
As saídas (S2, S1 e S0) apresentam resultado na forma complementar, ou seja, quando a entrada E5 
é acionada (nível 0), em vez de apresentar o resultado 101 (decimal 5), apresenta 010 
(complemento de 5). 
 
Entradas SaídasEI E0 E1 E2 E3 E4 E5 E6 E7 S2 S1 S0 GS E0 
1 X X X X X X X X 1 1 1 1 1 
0 1 1 1 1 1 1 1 1 1 1 1 1 0 
0 X X X X X X X 0 0 0 0 0 1 
0 X X X X X X 0 1 0 0 1 0 1 
0 X X X X X 0 1 1 0 1 0 0 1 
0 X X X X 0 1 1 1 0 1 1 0 1 
0 X X X 0 1 1 1 1 1 0 0 0 1 
0 X X 0 1 1 1 1 1 1 0 1 0 1 
0 X 0 1 1 1 1 1 1 1 1 0 0 1 
0 0 1 1 1 1 1 1 1 1 1 1 0 1 
 
 GS e E0 correspondem às saídas de controle. Quando em operação (EI = 0) são 
complementares entre si. Quando EI = 0, GS assume 0 enquanto uma tecla permanecer 
pressionada. Quando a tecla é liberada, GS retorna ao nível 1. 
 Os sinais gerados em GS e E0 são usados, por exemplo, nas entradas tipo clock (relógio) 
de registradores para armazenamento de dados, os quais serão vistos posteriormente. 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 16 
 
3.1. Circuitos Integrados Comerciais 
 A tabela abaixo apresenta alguns dos circuitos integrados codificadores. 
 
74147 codificador decimal-BCD com prioridade 
74148 codificador de 8 para 3 linhas com prioridade 
 
4- Demultiplexadores 
 Estes circuitos realizam a operação inversa àquela dos multiplexadores. A informação 
recebida acessa uma única entrada de dados. Esta informação é enviada para uma das N saídas 
definida por uma combinação binária presente nas M entradas de seleção. 
 O número M de entradas de seleção é tal que 2M = N. Assim, cada uma das 2M combinações 
binárias possíveis nas entradas de seleção corresponde a um dos N canais de saída. Em outras 
palavras, o demultiplexador pega bits de uma fonte de dados, um de cada vez, e os distribui 
seletivamente para um dos N caminhos de saída, como se fosse uma chave seletora de diversas 
posições. 
 
Abaixo, a tabela correspondente à figura anterior e a estrutura lógica de um 
demultiplexador de uma linha para quatro linhas (1/4). Note que este último é um decodificador 
com a modificação que cada porta tem uma entrada adicional a qual é ligada à linha de dados. 
 
Entradas de seleção Decimal Destino 
S1 S0 Equivalente do Dado 
0 0 0 C0 
0 1 1 C1 
1 0 2 C2 
1 1 3 C3 
 
 
4.1. Aplicações 
a) Associação de demultiplexadores 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 17 
 O prodedimento é similar àquele usado na associação de decodificadores e 
multiplexadores. Como exemplo é apresentado o circuito equivalente a um demultiplexador com 
16 saídas. 
 
 
b) Uso do decodificador como demux 
 Um decodificador, quando ligado convenientemente, pode realizar a função de um demux. 
Abaixo são apresentados os procedimentos para obtenção de um demux a partir de um 
decodificador: 
i) No caso de decodificadores com N entradas, considera-se a entrada mais significativa do 
decodificador como entrada de dados; 
ii) Considera-se as demais entradas do decodificador como entrada de seleção do demux; 
iii) Das 2N saídas do decodificador, considera-se as primeiras 2N-1 saídas menos significativas 
como saídas do demux. 
 
 
 
 A entrada D (a mais significativa) é usada como entrada de dados, enquanto as demais 
entradas (C, B e A) como entradas de seleção do demultiplexador. Somente as oito primeiras saídas 
do decodificador foram consideradas como saídas do demux. 
 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 18 
Exercício: O 74154 é um decodificador que pode ser usado como demultiplexador de 16 saídas. 
Este CI possui 4 entradas de dados, 16 saídas e 2 entradas de habilitação ativo-BAIXO. Utilize 
CI’s 74154 para construir um demux de 32 canais. 
 
 O circuito integrado 74138 pode ser utilizado como decodificador 1 para 8, mas também 
como um demultiplexador. A entrada de habilitação 1E é usada como entrada de dados, enquanto 
as duas outras entradas de habilitação são mantidas em seus estados ativos. As entradas A2A1A0 
são usadas como linhas de seleção. Para ilustrar a operação do circuito vamos assumir que as 
entradas de seleção são 000. Com tal código de entrada a única saída ativa é 0O , ao passo que 
todas as demais estão no nível alto. 0O assume nível alto se 1E for para alto e assume nível baixo 
de 1E for para o nível baixo. De forma idêntica, um outro código aplicado as entradas A2A1A0 vai 
fazer com que a saída selecionada siga o dado na entrada de dados. 
 
Entrada de dados
 +5V
 E1 E2 E3
A2
A1 Decodificador/demultiplicador - 74138
A0
código de
seleção
O7 O6 O5 O4 O3 O2 O1 O0
 
4.2. Circuitos Integrados Comerciais 
 A tabela abaixo apresenta alguns dos circuitos integrados demultiplexadores. 
 
74154 decodificador/demultiplexador de 4 para 16 linhas 
74155 decodificador/demultiplexador duplo de 2 para 4 linhas 
74138 decodificador/demultiplexador de 3 para 8 linhas 
 
5 Conversores de Códigos 
 Freqüentemente, uma informação disponível em forma codificada deve ser traduzida para 
um código diferente. Um circuito lógico que realiza esta tradução é chamado conversor de código. 
Um conversor de código pode ser construído ligando um decodificador a um codificador em 
cascata, conforme a figura abaixo. Um arranjo particular de bits identifica uma linha Z. 
Correspondendo à linha Z selecionada, um outro arranjo particular de bits, ou seja, uma palavra 
característica, aparecerá na saída do codificador. O número máximo de palavras de saída possível 
é 2M, mas o número de bits na palavra de saída não precisa guardar nenhuma relação especial com 
o número de linhas de entrada do decodificador. 
 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 19 
Z0
Z1
.
ZN-1
CodificadorDecodificador
A0
A1
.
.
AM-1
B0
B1
.
.
BK-1
 
 
5.1. Conversor BCD para 7 segmentos 
 Um exemplo de conversor de código aparece em conexão com o dispositivo digital de 
display representado abaixo. Este dispositivo, chamado display de sete segmentos, possui sete 
segmentos, identificados pelas letras de a a g, que podem ser iluminados individualmente para 
formar os dígitos decimais de 0 a 9 e algumas vezes os hexadecimais de A a F. A iluminação é 
feita através de diodos emissores de luz (LEDs) que são feitos de um material que emite luz quando 
a corrente elétrica passa por eles. 
 
 
 
 Nos casos destes displays, um decodificador especial, decodificador para sete segmentos, 
aciona convenientemente um grupo desses segmentos para formar o caracter desejado. Por 
exemplo, se a entrada BCD (decimal codificado em binário) for DCBA = 0100, correspondente ao 
decimal 4, o decodificador aciona os segmentos bcfg, ou seja, os leds contidos em tais segmentos 
são acesos. A disposição dos leds no interior dos segmentos pode ser segundo uma das formas 
apresentas a seguir: 
Decodificador
para 7
Segmentos
Tipo
Anodo
Comum
Decodificador
para 7
Segmentos
Tipo
Catodo
Comum
D
C
B
A
D
C
B
A
Vcc
 
 
 Na figura anterior à esquerda o anodo é ligado a Vcc. Neste caso, cada led acende com um 
nível 0 colocado no seu catodo pelo decodificador para 7 segmentos. O display é conhecido como 
do tipo anodo comum, por exemplo, o 7446. No caso da figura à direita, o catodo é ligado à terra. 
Neste caso, o led acende com um nível 1 colocado no seu anodo pelo decodificador para sete 
segmentos. O display é conhecido como do tipo catodo comum, por exemplo, o 7448. 
 Ao se adquirir um display, deve-se cuidar para que ele seja compatível com o 
decodificador, ou seja, ambos devem ser do mesmo tipo: anodo ou catodo comum. 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 20 
 Enquanto os leds operam emitindo luz, os displays tipo cristal líquido (Liquid-Crystal-
Display - LCD) operam refletindo a luz. A grande vantagem dos LCDs sobre os LEDs está no seu 
baixo consumo, da ordem de nanowatts. Por esta razão, são usados largamente em circuitos 
alimentados por baterias, tais como calculadoras e relógios. 
 Não há concordância completa sobre a terminologia a ser aplicada a conversores de código. 
Por exemplo, o conversor de código BCD para sete segmentos descrito acima, que é um 
componente comercial disponível,é chamado, por alguns fabricantes, decodificador porque o 
conversor de código acoplado ao display recebe a entrada em BCD e mostra a mesma 
explicitamente. Vista desta maneira, a combinação de conversor e display constitui-se em um 
decodificador e, por extensão, o termo é aplicado também ao conversor de código. 
 
5.2. Conversor BCD 8421 para Excesso de 3 
 Monta-se a tabela verdade na qual as entradas são os bits do código de BCD 8421 e as 
saídas são os respectivos bits do código Excesso de 3. 
 
BCD 8421 Excesso 3 
A B C D S3 S2 S1 S0 
0 0 0 0 0 0 1 1 
0 0 0 1 0 1 0 0 
0 0 1 0 0 1 0 1 
0 0 1 1 0 1 1 0 
0 1 0 0 0 1 1 1 
0 1 0 1 1 0 0 0 
0 1 1 0 1 0 0 1 
0 1 1 1 1 0 1 0 
1 0 0 0 1 0 1 1 
1 0 0 1 1 1 0 0 
1 0 1 0 X X X X 
1 0 1 1 X X X X 
1 1 0 0 X X X X 
1 1 0 1 X X X X 
1 1 1 0 X X X X 
1 1 1 1 X X X X 
 Nota-se que o código Excesso de 3 é utilizado aqui para representar até o algarismo 9. As 
outras possibilidades não irão ocorrer, logo, para estas condições a resposta torna-se irrelevante. 
 Da tabela são extraídas as expressões: 
 
 S ABCD ABCD ABCD ABCD ABCD3      
 S ABCD ABCD ABCD ABCD ABCD2      
 S ABCD ABCD ABCD ABCD ABCD1      
 S ABCD ABCD ABCD ABCD ABCD0      
 
 Para simplificar as expressões, utiliza-se o mapa de Karnaugh: 
 
S3 CD CD CD CD 
AB 0 0 0 0 
AB 0 1 1 1 
AB X X X X 
AB 1 1 X X 
S A BD BC3    
 
 
S2 CD CD CD CD 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 21 
AB 0 1 1 1 
AB 1 0 0 0 
AB X X X X 
AB 0 1 X X 
S BD BC BCD2   
 
 
S1 CD CD CD CD 
AB 1 0 1 0 
AB 1 0 1 0 
AB X X X X 
AB 1 0 X X 
S CD CD1   
 
 
S0 CD CD CD CD 
AB 1 0 0 1 
AB 1 0 0 1 
AB X X X X 
AB 1 0 X X 
S D0  
 
 
 O circuito decodificador/conversor fica: 
 
 
 
 Ao ser aplicado o código BCD nos terminais de entrada A, B, C e D, aparecerá o código 
Excesso de 3 nos terminais de saída S3, S2, S1 e S0. 
 O procedimento anterior é o mesmo para o projeto de quaisquer conversores de códigos. 
Dados dois códigos, um de entrada e outro de saída, projeta-se o circuito combinacional que realiza 
a conversão entre eles utilizando-se a tabela verdade dos respectivos códigos e o mapa de 
Karnaugh para simplificá-lo. 
 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 22 
Exercícios: Projetar o circuito combinacional para realizar a conversão: 
1- do código Gray para binário. 
2- de BCD para binário. 
3- de binário para BCD. 
4- de excesso 3 para BCD 
5- de BDC para o código deGray. 
6- de BCD para código de 7 segmentos. 
 
6- Circuitos Aritméticos 
 
 Denomina-se circuito aritmético àquele capaz de executar operações aritméticas, tais como 
adição, subtração, multiplicação e divisão. 
 As operações aritméticas no sistema binário seguem o mesmo princípio usado na aritmética 
decimal. 
 
6.1. Adição 
 Para executar a adição de dois números binários, deve-se fazer uso da seguinte tabuada: 
 
0 + 0 = 0 
0 + 1 = 1 
1 + 0 = 1 
1 + 1 = 0 e vai 1 
 1 + 1 + 1 = 1 e vai 1 
 
 Este último caso acontece quando há dois bits 1 em determinada posição e o carry (vai um) 
gerado pela posição anterior é 1. 
 O bit vai um (carry) corresponde ao conhecido transporte na adição decimal. Por exemplo, 
9 + 8 = 7 e vai 1. 
 
 Exemplo: Realizar a operação 12 + 6 em binário. 
 
1 1 
 1 1 0 0 + 
 0 1 1 0 
1 0 0 1 0 
 
Solução: 100102 = 1810 
 
 Adição Binária versus Adição Lógica- É importante entender a diferença entre adição 
lógica e adição binária. A adição lógica corresponde à adição booleana OU, realizada pela porta 
lógica OU, a qual produz uma saída 1 sempre que uma ou mais de suas entradas for 1. A adição 
binária é uma adição aritmética que produz a soma algébrica de dois números distintos. Embora o 
símbolo + seja utilizado para indicar ambas as operações, o seu significado estará claramente 
definido pelo contexto em que for utilizado. 
 Adição lógica Adição binária 
 1 + 1 = 1 1 + 1 = 0 e vai 1 
 1 + 1 + 1 = 1 1 + 1 + 1 = 1 e vai 1 
 
Exercícios: Adicione aritmeticamente os seguintes números binários: 
(a) 10110 + 00111, (b) 011.101 + 010.010, (c) 10001111 + 00000001, (d) 1010 + 1011 
 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 23 
 O objetivo a seguir é projetar um circuito com portas lógicas que permita a obtenção da 
soma de duas palavras (A e B), cada uma com 4 bits: 
 
C4 C3 C2 C1 0  Transporte 
Palavra A  A4 A3 A2 A1 + 
Palavra B  B4 B3 B2 B1 
S4 S3 S2 S1 
 
 O circuito que vai executar a soma dos bits A1 e B1 é conhecido como somador incompleto. 
Ele possui duas entradas (A1 e B1) e fornece duas saídas: a soma S1 e o transporte C1. Este 
transporte será acrescentado à soma dos bits A2 e B2. 
 O circuito que vai executar a soma dos bits 2, 3 e 4, ou seja, A2 com B2, A3 com B3 e A4 
com B4 é conhecido como somador completo. Ele possui três entradas: Ai, Bi (i = 2, 3, 4) e Cj (j = 
1, 2, 3). Fornece duas saídas: a soma dos bits correspondente e o transporte. 
 
6.1.1. Somador Incompleto (Half Adder) 
 
Entradas Soma Carry 
Ai Bi Si Ci 
0 0 0 0 
0 1 1 0 
1 0 1 0 
1 1 0 1 
Si = Ai  Bi 
Ci = Ai Bi 
 
 
 
6.1.2. Somador Completo (Full Adder) 
 
Ci Ai Bi Si Co 
0 0 0 0 0 
0 0 1 1 0 
0 1 0 1 0 
0 1 1 0 1 
1 0 0 1 0 
1 0 1 0 1 
1 1 0 0 1 
1 1 1 1 1 
 
Si = Ai  Bi  Ci 
Co = Ai Bi + Ci Ai + Ci Bi 
 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 24 
 
 
 O circuito que executa a soma de duas palavras de 4 bits pode ser obtido pelo 
cascateamento de um somador incompleto e três somadores completos (somador paralelo), 
conforme a figura abaixo. 
 O útimo carry (C4) pode ser usado como um sinal de overflow (erro de transbordo). Ele 
será igual a 1 quando a soma das duas parcelas ultrapasar o decimal 15. Pode ser considerado como 
o bit mais significativo do resultado. Por outro lado, o somador incompleto da figura anterior pode 
ser substituído por um somador completo desde que o carry de entrada seja colocado em nível 0. 
 
 
6.1.3. Somador Completo a partir de Meios Somadores 
 
 Pode-se construir um somador completo com dois meios somadores a partir da análise das 
expressões de ambos. 
 Para o meio somador tem-se: 
Si = Ai  Bi 
Ci = Ai Bi 
 
 E para o somador completo: 
Si = Ai  Bi  Ci 
Co = Ai Bi + Ci Ai + Ci Bi = Ci (Ai  Bi) + Ai Bi 
 
 
 
6.2. Subtração 
 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 25 
 Para executarmos a subtração de dois números binários, devemos fazer uso da seguinte 
tabuada: 
0  0 = 0 
0  1 = 1 e empresta 1 
1  0 = 1 
1  1 = 0 
 
 O bit empresta (borrow) tem o mesmo significado daquele do sistema decimal. Por 
exemplo, 7 - 9 = 8 e empresta 1. 
 
 
 Exemplo: Realizar a subtração dos números 1100 e 0110. 
 
-1 -1 
1 1 0 0 - 
0 1 1 0 
0 1 1 0 
 
Solução: 01102 = 610 
 
 Aqui se pode adotar um procedimento similar à adição no projeto de circuitos subtratores 
incompleto e completo. 
 
 
 
6.2.1. Subtrator Incompleto 
 
Entradas Subtração Empréstimo 
A1 B1 S1 E1 
0 0 0 0 
0 1 1 1 
1 0 1 0 
1 1 0 0 
S A B1 1 1  
E A B1 1 1  
 
 
 
6.2.2. Subtrator Completo 
 
Ei Ai Bi Si Eo 
0 0 0 0 0 
0 0 1 1 1 
0 1 0 1 1 
0 1 1 0 1 
1 0 0 1 0 
1 0 1 0 0 
1 1 0 0 0 
1 1 1 1 1 
EI 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 26 
S A B Ei i i i   
Ei iEi ii io B + A + BAE  
 
 
 
 
 
6.3. Somador/Subtrator Completo 
 
 Agora pode-se realizar um circuito que realize as duas operações. Para isso é introduzida 
outra entrada que permanecendo em nível 0, faz o circuito efetuar uma soma completa e, 
permanecendo em nível 1, efetua uma subtração completa. 
 Monta-se a tabela verdade deste circuito sendo M a variável de controle, Ti o transporte de 
entrada e To o transporte de saída: 
 
 
M A B Ti S To 
0 0 0 0 0 0 
0 0 0 1 1 0 
0 0 1 0 1 0 
0 01 1 0 1 
0 1 0 0 1 0 
0 1 0 1 0 1 
0 1 1 0 0 1 
0 1 1 1 1 1 
1 0 0 0 0 0 
1 0 0 1 1 1 
1 0 1 0 1 1 
1 0 1 1 0 1 
1 1 0 0 1 0 
1 1 0 1 0 0 
1 1 1 0 0 0 
1 1 1 1 1 1 
 
 As equações simplificadas ficam: 
S = A  B  Ti 
To = B.Ti + (M  A).(B + Ti) 
 
Exercícios: 
1- Implementar o circuito somador/subtrator com portas lógicas. 
2- Esquematizar o circuito de um subtrator completo para dois números de quatro algarismos 
utilizando blocos subtratores. 
 
6.4. Números Negativos 
EI 
E0 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 27 
 A operação subtração pode ser executada através de um procedimento de adição. 
 
6.4.1. Representação sinal-magnitude 
 Esta notação utiliza um bit a mais para a distinção entre números positivos e negativos. 
Quando o número é negativo, o bit mais à esquerda deve ser 1; já quando o número é positivo este 
bit deve ser 0. 
 Exemplo: 
+14 = 01110 
-14 = 11110 
 
6.4.2. Complemento de 1 
 Neste caso, o número negativo é obtido do complemento, bit a bit, do número positivo. 
 Exemplo: Representar o -14 em complemento de 1. 
-14 = 0001 
6.4.3. Complemento de 2 
 O número negativo é obtido da representação em complemento de 1 acrescido de uma 
unidade. Se n bits são usados para escrever um número, pode-se mostrar que inteiros de (-2n-1) a 
(2n-1)-1 podem ser representados de maneira única, incluindo o zero. 
Por exemplo: com 2 bits temos 4 números que podem ser escritos - -2, -1, 0, 1; com 3 bits temos 
8 números diferentes que podem ser representados: -4, -3, -2, -1, 0, 1, 2, 3; com 4 bits podemos 
representar os números de –8 a +7. 
 
 Exemplo: Representar o -14 em complemento de 2. 
Neste exemplo são necessários, pelo menos, 5 bits, já que este número está entre 15 e -16. 
 
0 1 1 1 0 (14 em 5 bits) 
 
1 0 0 0 1 (14 em C1) 
 + 1 
1 0 0 1 0 (14 em C2) 
 
 Dado um número representado em complemento de 2, pode-se saber se este número é 
positivo ou negativo observando seu bit mais à esquerda. Se for igual a 0 o número é positivo, e 
se for igual a 1 o número é negativo. 
 Podemos utilizar outro método para obter o complemento de 2: começando pelo bit menos 
significativo e movendo-se para a esquerda, repetimos cada bit até passarmos pelo primeiro bit 1, 
a partir daí complementamos cada bit. 
 
Representação de números com sinal em complemento de 2: O sistema em complemento de 2 para 
representação de números binários com sinal funciona como a seguir: 
 Se o número é positivo, a magnitude é representada na forma normal do número, com um bit 
de sinal de valor 0, colocado a esquerda do bit mais significativo da magnitude. Exemplo: 
+45=0101101. 
 Se o número é negativo, a magnitude é representada na forma de complemento de 2 do número, 
e um bit de sinal de valor 1 é colocado a esquerda do bit mais significativo da magnitude. 
Exemplo: -45=1010011. 
 
 O módulo de um número negativo representado em complemento de 2 pode ser obtido 
realizando-se a operação mostrada no exemplo a seguir. 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 28 
 
 Exemplo: Seja o número 10010 em complemento de 2. Obter o módulo deste número. 
 
1 0 0 1 0 (C2) 
 
0 1 1 0 1 (C1) 
 + 1 
0 1 1 1 0 (módulo) 
 
Ou seja: 011102 = 1410 
Portanto, o número binário 10010, em complemento de 2, representa o decimal -14. 
 
Exercícios: 
1- Transforme os números decimais em números binários, representando em complemento de 2. 
Use um total de cinco bits, incluindo o do sinal: (a) +13, (b) –9, (c) +3, (d) –2, (e) –8. 
2- Transforme os números decimais em números binários, representando em complemento de 2. 
Use um total de oito bits, incluindo o do sinal: (a) +32, (b) –14, (c) +63, (d) –104, (e) –1. 
3- Cada número binário está representado em complemento de 2. Determine o valor decimal de 
cada um deles: (a) 01100, (b) 11010, (c) 10001, (d) 100011, (e) 1000000, (f) 0111111, 
(g) 01111011, (h) 100000, (i) 11111111, (j) 10000001. 
 
A operação em complemento de 2 permite transformar uma operação de subtração em uma 
operação de soma. 
 Pode-se mostrar que quando inteiros sinalizados em complemento de 2, se adicionados na 
maneira usual, o resultado será corretamente expresso em complemento de 2 sendo que somente 
os n bits menos significativos são considerados. As parcelas que serão adicionadas devem 
apresentar sempre o mesmo número de bits e o resultado também terá o mesmo número de bits. 
 
 Exemplo 1: Realizar a operação 72-35 em complemento de 2. 
Tem-se que 72-35 = 72 + (-35) e n deve ser, no mínimo, igual a 8, caso não seja 
especificado nenhum outro valor (possível). 
 
Desse modo: 
7210 = 010010002 
3510 = 001000112  11011100 (C1)  11011101 (C2) 
 
 0 1 0 0 1 0 0 0 + 
 1 1 0 1 1 1 0 1 
1 0 0 1 0 0 1 0 1 
 
 
 
O resultado obtido é 00100101. 
É um número positivo e corresponde ao decimal 37. 
 
 Exemplo 2: Realizar a operação -29-90 em complemento de 2. 
Tem-se que -29-90 = -29 + (-90) e n deve ser, no mínimo, igual a 8, já que o 
resultado deve ser -119 e será expresso em complemento de 2. 
 
Desse modo: 
Descartado – o resultado contém o mesmo número de bits que as parcelas 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 29 
2910 = 000111012  11100010 (C1)  11100011 (C2) 
9010 = 010110102  10100101 (C1)  10100110 (C2) 
 
 1 1 1 0 0 0 1 1 + 
 1 0 1 0 0 1 1 0 
1 1 0 0 0 1 0 0 1 
 
 
 
O resultado obtido é 10001001. 
 
É um número negativo e, portanto, está em complemento de 2. Para obtermos o 
módulo do número correspondente em decimal devemos obter o complemento de 2 do resultado 
e, teremos, o decimal -119. 
 
Exercícios: 
1- Realize as operações: a) 20 + 15 b) 20 – 15, c) –20 + 15, d) –20 – 15. 
2- Adicione os seguintes números binários com sinal. Expresse a soma como número binário e 
como decimal: (a) 100111 + 111011, (b) 100111 + 011001. 
3- Encontre o resultado da subtração dos pares de números listados a seguir, representados em 
complemento de 2. Expresse o resultado em binário e como decimal: (a) 01001 – 11010, 
(b) 10010 - 10011. 
4- Efetue as seguintes operações no sistema em complemento de 2. Use oito bits, incluindo o do 
sinal, para cada número. Verifique os resultados convertendo de volta para o sistema decimal. 
(a) adicione +9 a +6, (b) adicione +14 a –17, (c) adicione +19 a –24, (d) adicione -48 a –80, 
(e) subtraia +16 de +17, (f) subtraia +21 de –13, (g) subtraia –36 de –15. 
 
6.5. Multiplicação e Divisão 
 Multiplicação e divisão no sistema binário são efetuadas da mesma maneira que no sistema 
decimal. 
 
 Exemplo de multiplicação em aritmética binária: 
 
 1 1 1 0 
  1 0 1 
 1 1 1 0 
 0 0 0 0 
 1 1 1 0 
1 0 0 0 1 1 0 
 
 Exemplo de divisão em aritmética binária: 
 
1 0 0 1 0 0 1 1 0 1 
 1 0 1 1 1 1 0 
 1 0 0 0 
 1 0 1 
 0 0 1 1 0 
 1 0 1 
 0 0 1 1 
 
 Resto 
Descartado 
 
CIRCUITOS COMBINACIONAIS VIRGINIA VAROTTO 
 30 
Exercícios: 
1- Multiplique os seguintes pares de números: (a) 111 x 101, (b) 1011 x 1011, 
(c) 101.101 x 110.010, (d) .1101 x .1011 
2- Efetue as seguintes divisões: (a) 1100  100, (b) 111111  1001, (c) 10111  100

Mais conteúdos dessa disciplina