Prévia do material em texto
Professor: Renato Lopes AULA 04 Teoria de Eletrônica Digital I • Para efetuarmos a adição no sistema binário, devemos agir como em uma adição no sistema decimal, lembrando apenas que, no sistema binário, existem apenas dois algarismos; Adição Binária “vai um” • Exemplo 1: a) 110012 + 10112 = 1001002 b) 1011012 + 111000112 = 1000100002 c) 1001112 + 11102 + 10112 = 10000002 Adição Binária • O método de resolução é análogo a uma subtração no sistema decimal; Subtração Binária 1 1 • Observe que, para o caso 0-1 o resultado será igual a 1, porém há um transporte para a coluna seguinte que deve ser acumulado no subtraendo e, obviamente, subtraído do minuendo. Subtração Binária • Exemplo 2: a) 10102 - 10002 = 102 b) 100102 - 100012 = 12 c) 110002 - 1112 = 100012 OBS – Em todos os exemplos realizados o resultado da subtração é um número positivo!!! Veremos como tratar números negativos mais adiante. Multiplicação de números binários • Procede-se como em uma multiplicação no sistema decimal; Multiplicação de números binários • Exemplo 3: a) 11002 * 0112 = 1001002 b) 110102 * 1012 = 100000102 c) 1001012 * 10012 = 1010011012 Divisão Binária • Procede-se como em uma divisão no sistema decimal. No entanto, esse processo é mais simples com números binários, pois quando verificamos quantas vezes o divisor cabe dentro do dividendo, existem apenas duas possibilidades, 0 ou 1; • Exemplo 4: a) 11002 / 0112 = 1002 b)110102 / 1012 = 101,001100112 Representação de números com sinal • A representação de números binários positivos e negativos pode ser feita usando os sinais “+” ou “-” respectivamente. Na prática, porém, em hardware dos sistemas digitais que processam operações aritméticas, microcomputadores, por exemplo, esses sinais não podem ser utilizados, pois tudo deve ser codificado em 0 ou 1. • Uma forma de representar utilizada em alguns casos é a de acrescentar ao número um bit de sinal colocado à esquerda, na posição de algarismo mais significativo. • Se o número for positivo, o bit de sinal será zero, se o número for negativo, este será 1. Este processo de representação é denominado sinal- módulo; Representação de números com sinal • Exemplo: Representar +3510 e -7310 em binário utilizando a notação sinal-módulo: +3510 = +1000112 => 01000112 +7310 =>+10010012 -7310 => -10010012 => 110010012 Bit de sinal (0 -> indica número positivo) Bit de sinal (1 -> indica número negativo) Representação de números com sinal • Embora o sistema de sinal-magnitude seja uma representação direta, os computadores e as calculadoras normalmente não o utilizam, porque a implementação do circuito é mais complexa. O sistema mais usado para representar números binários com sinal é o sistema de complemento de 2. • Antes de estudarmos como é esse sistema, temos de determinar o complemento de 1 e o complemento de 2 de um número binário; • É obtido substituindo-se cada bit do número binário pelo seu complemento, isto é, substituindo-se cada 0 por 1 e cada 1 por 0; Representação de números com sinal • É obtido tomando-se o complemento de 1 do número binário e somando 1 na posição do bit menos significativo; Representação de números com sinal Porque usar o complemento de 2 ? Representação de números com sinal Exemplo 5: Represente cada um dos números decimais com sinal como um número binário com sinal no sistema de complemento de 2. Use um total de 5 bits incluindo o bit de sinal; a) +13 b) -9 c) +3 d) -2 e) -8 Representação de números com sinal Extensão de sinal • A maioria dos sistemas digitais atuais armazena número em registradores medidos em múltiplos pares de quatro bits, em outras palavras os registradores de armazenamento serão de 4, 8, 12, 16, 32 ou 64 bits; • Por exemplo, em um sistema que armazena números de 8 bits, sete bits representam a magnitude e um bit (MSB) representa o sinal; • Mas se precisarmos adicionar um número de 5 bits em um registrador de 8 bits? Número positivo? Acrescente 0s Acrescente 1s SIM Não • Exemplo: Considere o exemplo anterior do número 9 (com 5 bits) +9 => 000 01001 - 9 => 111 10111 Extensão de sinal para formato de 8 bits Representação de números com sinal Exemplo 6: Determine o valor decimal de cada número binário com sinal no sistema do complemento de 2. a) 01100 b) 11010 c) 10001 a) 01100 = +1210 b) 11010 = -610 c) 10001 = -1510 Representação de números com sinal Nesses casos especiais, tomar o complemento de 2 produz o valor com o qual começamos. Isso acontece porque estamos no limite negativo do intervalo de números que podem ser representados com esses bits. • A faixa completa de valores quer pode ser representada no sistema de complemento de 2 com N bits de magnitude é: Representação de números com sinal • Exemplo: A tabela abaixo relaciona todos os números que podem ser representados com quatro bits usando o complemento de 2. Neste caso, são 3 bits de magnitude, portanto N=3; Adição e Subtração no sistema de complemento de 2 • Para solucionar qualquer operação de soma ou subtração no sistema de complemento de 2, basta determinar o complemento de 2 do número negativo envolvido, considerando o mesmo número de bits do outro membro da operação e realizar a soma, desconsiderando, se houver, o estouro do número de bits do resultado; • Existem duas formas: Notação com bit de sinal (mais adequada); 1. Represente os números envolvidos em binário puro; 2. Verifique a quantidade de bits da representação, se necessário complete a sequencia de bits; 3. Identifique os números negativos e determine o seu complemento de 2; 4. Realize a soma binária; 5. Desconsidere o estouro de bits, se houver; 6. Verifique o bit de sinal do resultado, se for 0, o resultado é positivo, se for 1 o resultado é negativo; 7. Em caso de resultado negativo, determine o complemento de 2 do resultado para determinar a magnitude do número negativo obtido; Ex: Realizar a seguinte soma +32 com -45, considerando 8 bits (incluindo o bit de sinal); Adição e Subtração no sistema de complemento de 2 Notação sem bit de sinal (pode gerar problemas); 1. Represente os números envolvidos em binário puro; 2. Verifique se a quantidade de bits em todos os membros são as mesmas; 3. Se necessário complete os bits nos membros com quantidades de bits menor; 4. Identifique os números negativos e determine o seu complemento de 2; 5. Realize a soma binária; 6. Desconsidere o estouro de bits, se houver; 7. Verifique se o resultado deveria ser positivo ou negativo; 8. Em caso de negativo, determine o complemento de 2 para verificar a magnitude do resultado; Problema: Some +9 com +6 e verifique o resultado com a seguinte soma +8 com -9; Adição no sistema de complemento de 2 Somar +9 com -4 Utiliza-se o complemento de 2 de +4 Importante: A adição no sistema em complemento de 2, os números devem conter a mesma quantidade de bits; Adição no sistema de complemento de 2 Subtração no sistema de complemento de 2 • A operação de subtração que usa o sistema de complemento de 2 na verdade envolve a operação de soma e não é diferente dos diversos casos de adição já estudados; Exemplo 8: Efetue as adições no sistema do complemento de 2. OBS – Os números estão representados sem o bit de sinal a) 101010112 + (-10001002) b) 100112 + (-1001012) c) CA16 + (-7D16) Exemplo 8: a) 011001112 b) 1011102 = -010010 c) 4D16 Exemplo 7: Realize as seguintes operações no sistema do complemento de 2. Use oitobits (incluindo o bit de sinal) para cada número. Verifique os resultados convertendo o resultado binário de volta para decimal. a) Some +9 com +3; b) Some +14 com -17; c) Some +19 com -24; d) Some -48 com -80; Exemplo 7: a) 000011002 = +1210 b) 111111012 = -310 c) 111110112 = -510 d) 100000002 = -12810 Adição e Subtração no sistema de complemento de 2 • Considere a seguinte soma +9 com +8: • Como identificar o overflow? Representação em Ponto Flutuante • A notação mais usada para representar números fracionários é a notação em ponto em ponto flutuante padrão IEEE 754 –1950; • Permite representar números muito grandes e muito pequenos sem o aumento do número de bits e permite representar a parte inteira e fracionária; Representação em Ponto Flutuante Representação em Ponto Flutuante Representação em Ponto Flutuante • Para avaliar um número que já está representado em ponto flutuante devemos usar a seguinte fórmula: • Exemplo: • Portanto, o número em decimal é -407.680. Representação em Ponto Flutuante • Exercício 1: Converta os números abaixo para um número binário no formato de precisão simples a) 32480 b) 4,625 c) 2,75 Exercício 2: Determine os valores dos números em ponto flutuante de precisão simples a seguir: b) . Adição em BCD Adição em BCD Adição em BCD • Forma mais rápida!!! • Tome o complemento de 2 do subtraendo!!! Número do slide 1 Número do slide 2 Número do slide 3 Número do slide 4 Número do slide 5 Número do slide 6 Número do slide 7 Número do slide 8 Número do slide 9 Número do slide 10 Número do slide 11 Número do slide 12 Número do slide 13 Número do slide 14 Número do slide 15 Número do slide 16 Número do slide 17 Número do slide 18 Número do slide 19 Número do slide 20 Número do slide 21 Número do slide 22 Número do slide 23 Número do slide 24 Número do slide 25 Número do slide 26 Número do slide 27 Número do slide 28 Número do slide 29 Número do slide 30 Número do slide 31 Número do slide 32 Número do slide 33 Número do slide 34 Número do slide 35 Número do slide 36 Número do slide 37 Número do slide 38 Número do slide 39