Disciplina: Circuitos Digitais Curso: Engenharia de Telecomunicações Unidade 1 - Representação de números binários: sinal, magnitude e complementos de 1 e 2 Aula 8 Lucas Santos Pereira
Conteúdo da Aula Sinal e Magnitude; Adição e Subtração Binária; Complemento de 1; Complemento de 2.
Histórico Os computadores e calculadoras digitais realizam várias operações aritméticas com números no formato binário; O tema da aritmética digital pode ser muito complexa se desejarmos entender os diversos métodos da computação e a teoria que os envolve; Estudaremos como as várias operações aritméticas sobre números binários são realizadas.
Adição binária A adição de dois números binários é realizada exatamente da mesma forma que a adição de números decimais. Ex: MSB376 + 461 837 Em geral os mesmos passos são seguidos em uma adição binária. Existem quatro casos que podem ocorrer na soma de dois dígitos binários. LSB (least-significant-bit ) 0 + 0 = 0 1 + 1 = 10 ( 0 + carry 1 próxima posição) 1 + 0 = 1 1 + 1 + 1 = 11 = 1 + carry 0 próxima posição
Adição binária Exemplos: 0 1 1 (3) + + 1 1 0 (6) 1 1 1 1 1 (9) 0 1 1 (3) + + 1 1 0 (6) 1 1 Lembrando que: 0 + 0 = 0 1 + 1 = 10 1 + 0 = 1 1 + 1 + 1 = 11 1 1 1 (9)
Adição binária Exemplos: 1 0 0 1 (9) + 1 1 1 1 (15) 1 1 1 1 1 1 (24) 1 0 0 1 (9) + 1 1 1 1 (15) 1 1 1 1 Lembrando que: 0 + 0 = 0 1 + 1 = 10 1 + 0 = 1 1 + 1 + 1 = 11 1 1 (24)
Adição binária Exemplos: 1 1, 0 1 1 (3,375) + 1 0, 1 1 0 (2,75) 1 1 1 1 1, 0 1 1 (3,375) + 1 0, 1 1 0 (2,75) 1 1 1 1 Lembrando que: 0 + 0 = 0 1 + 1 = 10 1 + 0 = 1 1 + 1 + 1 = 11 1 1 0, 1 (6,125)
Representação de números com sinal Nos computadores digitais, os números binários são representados por um conjunto de dispositivos de armazenamento binário (latches e flip-flops); Cada dispositivo representa um bit. Por exemplo: um registrador de 6 bits pode armazenar números binários na faixa de 000000 a 111111 (de 0 a 63 em decimal). Isso representa a magnitude do número; Como a maioria dos computadores e calculadoras digitais efetua operações tanto com números positivos quanto negativos, é necessário representar de alguma forma o sinal do número (+ ou - ).
Representação de números com sinal Isso é feito normalmente acrescentando ao número um outro bit denominado de sinal. Convenção: bit 0 (bit sinal positivo) e bit 1 (bit de sinal negativo) 1 1 1 = (+52)10 Bit do sinal (+) Magnitude (52)10 1 1 1 1 = (-52)10 Bit do sinal (-) Magnitude (52)10 ***Representação: Sistema sinal-magnitude Bit do sinal (+) Magnitude (52)10
Representação de números com sinal Embora o sistema sinal magnitude seja uma representação direta, os computadores e as calculadoras não o utilizam, porque a implementação do circuito é mais complexa; O sistema mais usado para representar números binários com sinal (+ ou -) é o sistema de complemento de 2. Bit do sinal (+) Magnitude (52)10
Complemento de 1 O complemento de 1 de um número binário é obtido substituindo cada 0 por 1 e cada 1 por 0. Exemplo: 1 0 1 1 0 1 complementa-se cada bit para obter o complemento de 1 1 1 Logo, o complemento de 1 do número 101101 é 010010.
Logo, o complemento de 2 do número 101101 é 010011. O complemento de 2 de um número binário é obtido tomando o complemento de 1 do número e somando 1 na posição do bit menos significativo. Exemplo 1 : 1 0 1 1 0 1 Complemento de 1 0 1 0 0 1 0 Adiciona-se um bit 1 ao bit LSB (least significant bit) + 1 0 1 0 0 1 1 Logo, o complemento de 2 do número 101101 é 010011.
Resumindo: lembre-se O sistema de complemento de 2 para representação de números com sinal funciona da seguinte forma: Se o número for positivo, a magnitude é representada na forma binária direta, e um bit de sinal 0 é colocado em frente ao bit mais significativo (MSB). Se o número for negativo, a magnitude é representada na sua forma de complemento de 2, e um bit de sinal 1 é colocado em frente ao MSB. 1 1 1 1 = (+45)10 Bit do sinal (+) Binário verdadeiro (45)10 1 1 1 1 = (-45)10 Bit do sinal (-) Complemento de 2
Por que se utilizar o Complemento de 2??? Para representar números negativos; Decimal Binário Complemento de 2 -3 - 1101 -2 1110 -1 1111 0000 1 0001 2 0010 3 0011
Exercício 1. Represente cada um dos seguintes números decimais com sinal no sistema de complemento de 2. Use um total de 5 bits incluindo o sinal. a)+13 b) -9 c) +3 d) -18
Exercício 1. Represente cada um dos seguintes números decimais com sinal no sistema de complemento de 2. Use um total de 5 bits incluindo o sinal. a)+13 = 01101 b) -9 = 10111 c) +3 = 00011 d) -18 = erro necessita 6 bits
Exercício 2. Cada um dos seguintes números é um número binário com sinal no complemento de 2. Determine o valor decimal em cada caso. 01100 11010 101001
Exercício 2. Cada um dos seguintes números é um número binário com sinal no complemento de 2. Determine o valor decimal em cada caso. 01100 = erro pois o C. 2 começa com 1 negativo 11010 = (6)10 10001 = (23)10
Subtração binária Exemplo: 10 – 5 = 5 1 0 1 0 Menor que o bit “1” - 1 0 1 0 - 1 0 1 Menor que o bit “1”
Subtração binária Exemplo: 10 – 5 = 5 1 1 0 0 0 Bit emprestado - 1 0 1 1 0 0 0 - 1 0 1 Bit emprestado 2 em decimal 2 -1 =1 1
Subtração binária Por complemento de 2 ??? Exemplo: 10 – 5 = 5 1 1 1 1 0 0 0 0 - 1 0 1 Bit emprestado 2 em decimal 2 -1 =1 1 1 (5)10 Por complemento de 2 ???
Exercício 3. Realize as operações a seguir usando ou não o complemente de 2 (se necessário). 01100 + 11101 = 101001 11010 – 1011 = 01111 10001 – 101 = 01100