circuitos lógicos operaçõesaritméticas - ufjf.br · circuitos lógicos – prof. daniel d....

18
Circuitos Lógicos Prof. Daniel D. Silveira Circuitos Lógicos Operações aritméticas Prof.: Daniel D. Silveira Horário: 4a.f e 6a.f de 10h às 12h 1

Upload: trinhduong

Post on 17-Nov-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

Circuitos LógicosOperações aritméticas

Prof.: Daniel D. Silveira

Horário: 4a.f e 6a.f de 10h às 12h

1

Page 2: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• A soma binária ocorre da mesma forma que a decimal:

» A operação sobre os dígitos na posição do dígito menos significativo (LSD) é efetuada primeiro

» O carry (vai um) vai da segunda para a terceira posição

• Apenas 4 casos podem ocorrer na soma de 2 bits:

2

Adição binária 

Page 3: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Ocorre com a inserção de um bit de sinal, no início do número binário

– 0 para número positivos e 1 para negativos

• A representação é chamada de sinal‐magnitude, e não é a mais utilizada, circuitos mais complexos

3

Representação de números com sinal

Page 4: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• A forma mais utilizada para representação de números com sinais é a complemento 2

• Obtendo o complemento 2 de um número

4

Representação de números com sinal

Page 5: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Se o número for positivo, a magnitude érepresentada na forma binária direta, e um bit de sinal 0 é colocado em frente ao MSB

• Se o número for negativo, a magnitude érepresentada na sua forma de CPL2, e um bit de sinal 1 é colocado em frente ao MSB

5

Representação de números com sinal usando CPL2

Page 6: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Exemplos com 5 bits:

• Ou apenas acrescenta‐se o bit de sinal antes da operação de CPL1:

6

Representação de números com sinal usando CPL2

-9=>

Page 7: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Extensão de sinal para números utilizando notação CPL2: apenas repetir o bit de sinal original

• ‐9 com cinco bits é 10111:

7

Representação de números com sinal usando CPL2

Page 8: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Negação: converter um número positivo em um negativo ou um número negativo em seu equivalente positivo

• No sistema de CPL2, a operação de negação é realizada por meio de um CPL2:

Iniciar com                             0000 1001  +9

Fazer o CPL2 (negação)       1111 0111   ‐9

Negar novamente                0000 1001   +9

8

Representação de números com sinal usando CPL2

Page 9: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Casos especiais: sempre que um número com sinal tiver um 1 no bit de sinal e todos os bits de magnitude forem 0, seu equivalente será ‐2N, em que N é o número de bits da magnitude

• Ex: 10002 = ‐23 = ‐8, 100002 = ‐24 = ‐16• Tomar o CPL2 volta onde começamos!

• Pode‐se extender o sinal para Nbits+1:10002 = ‐23 = ‐8 ou 110002 = ‐8 de 5 bits

9

Representação de números com sinal usando CPL2

Page 10: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Tabela para números representados no sistema CPL2 com 4 bits

10

Representação de números com sinal usando CPL2

Page 11: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Dois números positivos– 1a e 2a parcela com mesmo número de bits

– O bit de sinal de cada termo a ser somado ézero, e o da soma final também

11

Representação de números com sinal usando CPL2 ‐ Adição

Page 12: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Um número positivo e outro menor e negativo

– O bit de sinal também participa da soma

– Um carry é gerado e deve ser desconsiderado

12

Representação de números com sinal usando CPL2 ‐ Adição

Page 13: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Um número positivo e outro maior e negativo

– Para obter a magnitude da soma, deve‐se fazer a negação do resultado => 00101=+5

13

Representação de números com sinal usando CPL2 ‐ Adição

Page 14: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Dois números negativos– Resultado final negativo, deve‐se fazer a negação do resultado => 01101=+13

14

Representação de números com sinal usando CPL2 ‐ Adição

Page 15: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Números iguais, sinais opostos– O carry é desconsiderado

15

Representação de números com sinal usando CPL2 ‐ Adição

Page 16: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• Faça a operação de negação do subtraendo– Isso mudará o subtraendo para o seu valor equivalente com sinal oposto

• Adicione esse número obtido ao minuendo

• Qualquer operação de subtração torna‐se uma de adição!

16

Representação de números com sinal usando CPL2 ‐ Subtração

Page 17: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

• O transbordamento (overflow) pode ocorrer quando dois números positivos ou negativos são somados

• Pode ser detectado verificando se o bit de sinal do resultado tem o mesmo valor dos bits de sinal dos números a serem somados

17

Representação de números com sinal usando CPL2 ‐ Overflow

Page 18: Circuitos Lógicos Operaçõesaritméticas - ufjf.br · Circuitos Lógicos – Prof. Daniel D. Silveira • A soma binária ocorre da mesma forma que a decimal: » A operação sobre

Circuitos Lógicos – Prof. Daniel D. Silveira

Exercícios Propostos1) Realize as somas no sistema de CPL2, use 

8 bits para cada número (incl. sinal). Indique os valores do bit de sinal, do bit de carry e do bit de overflow

+9 e +6, +19 e ‐24, +37 e +95,‐48 e ‐80, +17 e ‐16, ‐13 e ‐21, ‐15 e ‐36, ‐37 e ‐95, 

‐47 e +47

18