Buscar

Aritmética Digital : Operações e Circuitos

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 15 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 15 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 15 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

Faculdade de Engenharia de Ilha Solteira - Departamento de Engenharia Elétrica 
Circuitos Digitais II - Profa. Suely Cunha Amaro Mantovani - 1osem /2010 
 
CIRCUITOS DIGITAIS II 
Aritmética Digital : Operações e Circuitos 
1. Objetivos : executar adição, subtração , multiplicação e divisão de 2 números binários; 
Comparar as vantagens e desvantagens entre 3 diferentes sistemas de representação de 
números binários com sinal 
 
 
2. Representação de Números com Sinal 
A representação de números em registradores usa os estados SET e RESET dos flip-flops 
para representar os numerais 0 e 1, respectivamente. Um registrador de 4-bits, formado 
por 4 ffs, pode armazenar números de 0 a 15. A representação da figura 1 está em forma 
circular para lembrar que o registrador tem um número finito de estados e após passar por 
cada estado, volta para o estado inicial. O registrador pode ser designado como um 
registrador de módulo 16 (2n) , onde n é o número de bits do contador. 
 
 
Fig.1 
 
 Este modo de representar o registrador indica que o ponteiro que representa a 
propriedade do registrador de 'girar' pelos seus estados em resposta ao pulso de relógio, 
pode ser usado para efetuar operações aritméticas. 
Operação Contar: avançar ou recuar o ponteiro uma posição, para indicar uma contagem. 
Operação Somar: limpar o registrador (resetar, o ponteiro aponta para 0000); avançar o 
ponteiro para a posição da primeira parcela e, em seguida, avançar o ponteiro um número 
de estados igual à segunda parcela; a posição final do ponteiro indicará o resultado da 
operação. 
Operação Subtrair: limpar o registrador (ponteiro em 0000); em seguida, o ponteiro é 
deslocado para a posição da primeira parcela(minuendo); depois o ponteiro deve recuar o 
número de posições igual ao valor da segunda parcela(subtraendo). Assim, o ponteiro 
indicará a posição igual ao valor da subtração. Observe que as operações são válidas 
somente dentro do módulo do registrador, isto é, operações no intervalo de 0 a 15. 
2.1Representação de Números por Sinal-Magnitude 
 Para representar números com sinal, na Representação de Números por Sinal-
Magnitude usa-se o flip-flop da posição mais significativa (MSB) do registrador, para 
indicar o sinal do número. Por convenção adotada-se: 
0 representa o bit de sinal para números positivos 
1 representa o bit de sinal para números negativos 
A Fig.2 mostra o registrador módulo 16 com números positivos e negativos. Observe que 
existem, na representação sinal-magnitude dois 0s, -0=1000 e +0=0000. A existência de 
dois 0s torna a representação sinal-magnitude difícil de ser usada para operações no 
registrador, simplesmente avançando ou recuando o ponteiro. A Fig.3 tem um exemplo 
para o número 52, representado com 7 bits, 6 bits para magnitude e 1 bit, o MSB, de sinal. 
 
Fig.2 
 
 
Fig.3 
 
 
2.2 Representação de Números com Sinal em Complemento de Um 
Seja N um número binário qualquer positivo, então o complemento de um de N é o 
equivalente negativo definido por 
N(1)=(M-1)-N 
onde M=2n, sendo n o número de bits de N. 
 
Fig.4 
Mostra-se na Fig.4 a representação em complemento de um para um registrador de quatro 
casas ou bits. Observa-se, que a existência dos dois 0s(zeros): 0000 e 1111 , torna o 
circuitos mais complexos. 
Usando a definição: se N=0101, o módulo M=1610=10000, então 
N(1)=(10000-1)-0101=1111-0101=1010. 
Caso o módulo seja M=3210=100000, então 
N(1)=(100000-1)-00101=11111-00101=11010. 
A determinação do complemento de um de um número é obtida através de sucessivas 
subtrações, dígito a dígito, do número 1. O complemento de um pode ser calculado 
complementando bit a bit o número original, como mostra os exemplos acima. 
 
 
2.3 Representação de Números com Sinal em Complemento de Dois 
 Seja N um número binário qualquer positivo, então o complemento de dois de N, 
N(2) é definido por 
N(2)=M-N 
para M=2n, sendo n o número de bits de N. 
 Observa-se que o valor do complemento de dois de um número depende do módulo 
do registrador, isto é, de quantos bits são usados para escrever o número. Então, o mesmo 
número tem complemento de dois diferentes se está em um registrador de 4-bits (M=16) 
ou em registrador de 5-bits(M=32). 
Seja N=0101, o módulo M=1610=10000, então N(2)=10000-0101=1011. 
Caso o módulo seja M=3210=100000, então N(2)=100000-00101=11011. 
 O complemento de dois de um número não pode ser especificado com certeza a não 
ser que o módulo seja especificado. A avaliação do complemento de dois de um número 
envolve uma sucessão de subtrações, bit a bit, do número binário 10 (210). 
Método prático para obter o complemento de dois de um número: 
1. Escrever o número com tantos bits quantos forem os do registrador onde for 
armazenado o número; 
2. Começando com o bit menos significativo, percorrer o número da direita para 
esquerda, deixando inalterados os bits iguais a 0 até encontrar o primeiro 1, deixar 
este 1 inalterado; 
3. Complementar os demais bits do número. 
 Assim, o sistema de representação por complemento de dois de números com sinal 
estabelece que o negativo de um número qualquer N é dado pelo complemento de dois do 
número N. Então, dado N qualquer, 
-N=N(2)=M-N 
 
 
Por ex: seja a operação 3-7 a ser realizada no 
registrador de quatro bits da Fig.5. 
• ajustar o ponteiro em 0000 para 
resetar o registrador 
• avançar três posições e o ponteiro 
indica o minuendo 3(0011) 
• recuar sete posições ( valor do 
subtraendo 7) 
• o ponteiro indicará 1100 que é igual a 
-4 na representação em complemento 
de dois 
 
 Fig.5 
 
 O registrador de módulo 16 tem apenas um único 0 e fornecerá os números no 
intervalo -8 até +7, como mostra a Fig.5. O bit mais a esquerda (MSB) indica o sinal do 
número: se for igual a 0, o número é positivo; se o MSB é igual a 1, o número é negativo 
(na representação complemento de dois). Esta representação, permite que a soma seja feita 
pelo avanço e a subtração pelo retardo do ponteiro. O resultado da operação deve se 
encontrar dentro do intervalo do registrador. 
 Pode-se obter o complemento de dois pela representação por complemento de um 
de um número, adicionando 1 ao complemento de um. 
N(2)=M-N e N(1)=(M-1)-N, então N(1)=(M-N)-1=N(2)-1 , assim N(1)=N(2)-1 
N(2)=N(1)+1 
 Em outras palavras, para se obter o complemento de dois de um número binário 
deve-se escrever o número com a quantidade de bits do registrador, complementar o 
número bit a bit e somar 1 ao resultado. A representação de números binários em 
complemento de dois torna possível transformar a operação de subtração em uma operação 
de soma, eliminando o problema de recuar o ponteiro do registrador. 
 Sejam N1 e N2 números binários quaisquer, então, 
N1-N2=N1+(-N2)=N1+N2(2) 
 
 Assim, a subtração de dois números binários pode ser obtida fazendo a soma do 
minuendo com o complemento de dois do subtraendo. No registrador circular sempre serão 
realizadas operações de soma, avançando o ponteiro, e o mesmo circuito efetua adição e 
subtração. 
 
 
Tabela 1- Registrador de 4 bits com as várias representações s/sinal e c/sinal 
Dec Binário 
 s/sinal 
Dec Sinal 
magnitude 
N0 de n bits 
+/- (2n-1 - 1) 
Dec Complemento 
 de um 
N0 de n bits 
+/- (2n-1 - 1) 
Dec Complemento 
 de dois 
N0 de n bits 
-2n-1 a + 2n-1 - 1 
0 0000 +0 0000 +0 0000 +0 0000 
1 0001 +1 0001 +1 0001 +1 0001 
2 0010 +2 0010 +2 0010 +2 0010 
3 0011 +3 0011 +3 0011 +3 0011 
4 0100 +4 0100 +4 0100 +4 0100 
5 0101 +5 0101 +5 0101 +5 0101 
6 0110 +6 0110 +6 0110 +6 0110 
7 0111 +7 0111 +7 0111 +7 0111 
8 1000 -0 1000 -7 1000 -8 1000 
9 1001 -1 1001 -6 1001 -7 1001 
10 1010 -2 1010 -5 1010 -6 1010 
11 1011 -3 1011 -4 1011 -5 1011 
12 1100 -4 1100 -3 1100-4 1100 
13 1101 -5 1101 -2 1101 -3 1101 
14 1110 -6 1110 -1 1110 -2 1110 
15 1111 -7 1111 -0 1111 -1 1111 
 
 
 
3. Circuitos Aritméticos 
 As operações em computadores e calculadoras digitais são executadas em 
Unidades Lógicas do computador (fig.6) onde portas e flip-flops são combinados tal que, 
realizem somas , subtrações , multiplicação e divisão binária. Esses circuitos executam 
operações aritméticas com velocidade na ordem de ns. 
 Estuda-se aqui alguns dos circuitos aritméticos básicos que são usados para 
executar as operações anteriormente discutidas. Em alguns casos veremos o projeto do 
processo real, para fornecer mais habilidade no uso das técnicas de álgebra booleana, ainda 
que saibamos que alguns destes circuitos podem ser comercialmente disponíveis na forma 
de Circuitos Integrados(CIs) 
 
 
 
 
 
Figura 6-Blocos Funcionais de uma ULA 
3.1 Soma de Números Binários 
Circuito Meio-Somador 
Sejam A e B dois números binários onde Ai e Bi são parcelas da soma , podemos escrever a 
seguinte tabela verdade da figura7b: 
 
 
 
 
 
 Os métodos de soma de números binários envolvem a soma de dígitos coluna a 
coluna. Então, a adição de dois números binários Ai e Bi pode ser calculada conforme 
mostrado abaixo. 
 
Fig.7 
 A Fig.7(a) mostra as adições de dois dígitos binários . A soma gera um dígito soma 
Si na mesma i-ésima coluna que tem a mesma significância númerica que Ai e Bi. A soma 
pode gerar um dígito de vai-um Ci+1 que tem significância numérica maior que as parcelas 
Ai e Bi. 
 
 A Fig.7(b) mostra a tabela verdade para as somas feitas na Fig.7(a); uma linha para 
cada operação e as saídas Si e Ci+1.Os circuitos para realizar as somas acima e fornecer as 
saídas Si e Ci+1 podem ser derivados da tabela verdade da Fig.7(b). A parcela soma Si pode 
ser obtida pelo XOR de Ai e Bi. O dígito vai-um Ci+1 é dado por uma AND de Ai e Bi. A 
Fig.8(a) mostra o circuito lógico de portas e a Fig.8(b) o símbolo. A estrutura que soma 
dois dígitos binários é designada como Meio-Somador, e abreviada como HA(Half 
Adder). 
 
Fig.8 
 
Este método de soma numérica é limitado e considerando o atraso de propagação das 
portas (ex: caso A e B sejam de 32 dígitos cada um seriam necessários um número de 
portas astronômicos). 
 
 
Circuito Somador Inteiro 
 
 A soma coluna por coluna de dois números binários de n dígitos produz um vai-um 
Ci+1 que deve ser somado na próxima coluna de maior significância. 
 
Fig.9 
 
 O meio-somador só pode realizar a primeira operação de A0 mais B0; nas outras 
colunas são necessárias a adição de três bits Ai, Bi e Ci (vai-um da coluna i-1).O dígito 
mais significativo da soma é o dígito vai-um para coluna n, ou seja Cn. Assim, na soma de 
Ai, Bi e o vai-um Ci são gerados Si e o vai-um Ci+1. A tabela verdade da fig.10 mostra a 
geração dos bits soma Si e vai-um Ci+1. 
 
Fig.10 
Os circuitos lógicos para geraçao do bit soma Si e do bit de vai-um Ci+1 podem ser obtidos 
diretamente dos mapas K para cada saída da tabela verdade da Fig.10. 
 
Soma Si Vai-Um Ci+1 
 
 
 
 
 
Fig-11 
 Através de simplificações algébricas pode-se mostrar que o bit soma Si é igual ao 
XOR das entradas Ai, Bi, e Ci. Então, o circuito de portas lógicas para somar três bits 
chama-se Somador Inteiro ( Full-Adder), designada FA, e tem a estrutura e símbolos 
mostrados na figura 12. 
 
 
 
 
 
 
 
 
 
 
Fig. 12-Somador Inteiro –Circuito Lógico e Símbolo Lógico 
 
Somador completo de 4 bits: 74HC283 ou 7483 
Somador Série 
 O somador série (fig.13) soma uma coluna de cada vez em sincronismo com o sinal 
de relógio. As parcelas são carregadas em registradores de deslocamento de n bits e um 
registrador de deslocamento de n+1 bits receberá a soma. Depois de cada pulso de relógio, 
os bits das parcelas são colocados na entrada do somador juntamente com o bit de vai-um 
e, o bit da soma é registrado no registrador de deslocamento da soma.O flip-flop tipo D 
atrasa o bit de vai-um um período de relógio, de modo que seja somado na próxima coluna 
de maior significância. 
 
 
 
Fig.13 - Somador Série 
 
 Para somar dois números de n bits cada, o somador série necessita de n+1 pulsos de 
relógio. Embora seja econômico em têrmos de circuitos, o somador série é lento. 
 
Somador Paralelo 
O circuito da Fig.14 embora gaste mais somadores, um para cada coluna das parcelas, é 
mais rápido pois soma todos os bits simultaneamente. É necessário que todos os bits Ai e 
Bi estejam disponíveis em registradores para serem aplicados nas entradas dos somadores 
ao mesmo tempo. Isto fornece a soma em um ciclo de relógio, desconsiderando os atrasos 
de propagação nos somadores. 
 
Fig.14 - Somador paralelo 
 
 Na realidade, é necessário esperar um determinado intervalo de tempo para os bits 
de vai-um se propagarem através de cada somador, antes de considerar válido o resultado 
da soma na saída.O tempo de propagação do vai-um torna o somador paralelo inaplicável 
em várias situações. 
 Considerando que cada porta tem um atraso de propagação igual a um tap, então 
cada somador atrasa de 2tap.Como para somar duas parcelas de n bits cada, são necessários 
n somadores, então o resultado da soma somente está disponível na saída em um intervalo 
de tempo igual a n(2tap). 
 O atraso do somador paralelo aumenta com o número de bits das parcelas a serem 
somadas, tornando-o inaplicável para soma de palavras com vários bits de comprimento. 
 
 
Subtratores 
A teoria desenvolvida pode ser usada para obter circuitos meio-subtratores e subtratores 
inteiro. Porém, uma vantagem dos somadores é transformar uma operação de subtração em 
uma operação de soma. Para subtrair um número B de outro número A usando um 
somador, basta obter -B, e efetuar a operação A+(-B). 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Fig.15- Somador/subtrator em complemento-de-dois 
 
 Observe no circuito da fig.15 que as portas AND 2, 4, 6 e 8 formam o 
complemento-de-um da parcela B e, com a entrada SUB=1, C0=1, que soma 1 ao 
complemento-de-um de B, obtendo o complemento-de-dois de B, ou seja, -B, que somando 
à parcela A, efetua A+(-B)=A-B. 
Somadores Rápidos 
Implementação do Carry Lookahead- Vai-um Antecipado . Esta lógica gera vai-um 
individuais , através da definição da variável geração, Gi e da variável propagação Pi . 
 
 
 
 
Cascata para 4 bits do Carry Lookahead- a soma se torna mais rápida do que os 
somadores de ripple carry- oscilação do carry ou transporte 
 
Somador de dois números A e B em blocos de 4 bits cada, usando uma Unidade de Carry 
Antecipado-UCA( CI), para gerar os vai-uns mais rápido, C4 , C8 e C12 e C16, a partir 
dos P e G de cada bloco de 4 bits. 
 
 
 
 
 
 
 
 
 
 
 
 
 
	CIRCUITOS DIGITAIS II

Continue navegando