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