Baixe o app para aproveitar ainda mais
Prévia do material em texto
SISTEMAS LÓGICOS Universidade Federal da Bahia Escola Politécnica PROF. EDSON PINTO SANTANA edsonps@ufba.br Sistemas Lógicos 2 SUMÁRIO 4. ARITMÉTICA BINÁRIA 4.1. Representação no sistema sinal-magnitude 4.2. Representação no sistema complemento de 2 4.3. Adição, subtração, multplicação e divisão binárias 4.4. Adição, subtração, multiplicação e divisão no sistema complemento de 2 4.5. Adição BCD 4.6. Aritmética hexadecimal Sistemas Lógicos 3 4.1. Representação no Sistema Sinal-Magnitude ● Como representar quantidades negativas em números binários? ● Alta complexidade em hardware para efetuar as diferentes operações aritméticas Sistemas Lógicos 4 4.2. Representação no Sistema Complemento de 2 ● Equivale a negação de um número binário ● Possibilita simplificação de hardware: mesmo circuito utilizado para realizar a soma é utilizado para realizar a subtração ● Números positivos representados de forma idêntica ao sistema sinal-magnitude ● Números negativos possuem bits de magnitude em complemento de 2 Sistemas Lógicos 5 4.2. Representação no Sistema Complemento de 2 ● Hodômetro binário +7 0 1 1 1 +6 0 1 1 0 +5 0 1 0 1 +4 0 1 0 0 +3 0 0 1 1 +2 0 0 1 0 +1 0 0 0 1 0 0 0 0 0 -1 1 1 1 1 -2 1 1 1 0 -3 1 1 0 1 -4 1 1 0 0 -5 1 0 1 1 -6 1 0 1 0 -7 1 0 0 1 -8 1 0 0 0 Sistemas Lógicos 6 4.2. Representação no Sistema Complemento de 2 ● Maior número positivo: 2N - 1 ● Menor número negativo: -2N ● Quantidade total de valores representados: 2N+1 N – número de bits referente somente a magnitude, desconsiderando o bit de sinal Sistemas Lógicos 7 4.3.1. Adição Binária ● Operações básicas: – 0 + 0 = 0 – 0 + 1 = 1 – 1 + 0 = 1 – 1 + 1 = 10 = 0 + carry (1) – 1 + 1 + 1 = 11 = 1 + carry (1) carry → vai-um Sistemas Lógicos 8 4.3.1. Adição Binária ● Exemplo: 0 1 0 1 0 1 1 1 + 0 0 1 1 0 1 0 1 _______________ Sistemas Lógicos 9 4.3.1. Adição Binária ● Exemplo: 1 0 1 0 1 0 1 1 1 + 0 0 1 1 0 1 0 1 _______________ 0 Sistemas Lógicos 10 4.3.1. Adição Binária ● Exemplo: 1 1 0 1 0 1 0 1 1 1 + 0 0 1 1 0 1 0 1 _______________ 0 0 Sistemas Lógicos 11 4.3.1. Adição Binária ● Exemplo: 1 1 1 0 1 0 1 0 1 1 1 + 0 0 1 1 0 1 0 1 _______________ 1 0 0 Sistemas Lógicos 12 4.3.1. Adição Binária ● Exemplo: 1 1 1 0 1 0 1 0 1 1 1 + 0 0 1 1 0 1 0 1 _______________ 1 1 0 0 Sistemas Lógicos 13 4.3.1. Adição Binária ● Exemplo: 1 1 1 1 0 1 0 1 0 1 1 1 + 0 0 1 1 0 1 0 1 _______________ 0 1 1 0 0 Sistemas Lógicos 14 4.3.1. Adição Binária ● Exemplo: 1 1 1 1 1 0 1 0 1 0 1 1 1 + 0 0 1 1 0 1 0 1 _______________ 0 0 1 1 0 0 Sistemas Lógicos 15 4.3.1. Adição Binária ● Exemplo: 1 1 1 1 1 1 0 1 0 1 0 1 1 1 + 0 0 1 1 0 1 0 1 _______________ 0 0 0 1 1 0 0 Sistemas Lógicos 16 4.3.1. Adição Binária ● Exemplo: 1 1 1 1 1 1 0 1 0 1 0 1 1 1 + 0 0 1 1 0 1 0 1 _______________ 1 0 0 0 1 1 0 0 Sistemas Lógicos 17 4.3.1. Adição Binária ● Exemplo: 1 1 1 1 1 1 0 1 0 1 0 1 1 1 (1+2+4+16+64 = 87) + 0 0 1 1 0 1 0 1 (1+4+16+32 = 53) _______________ 1 0 0 0 1 1 0 0 (4+8+128 = 140) Sistemas Lógicos 18 4.3.2. Subtração Binária ● Operações básicas: – 0 - 0 = 0 – 1 - 0 = 1 – 1 - 1 = 0 – 10 - 1 = 1 Sistemas Lógicos 19 4.3.2. Subtração Binária ● Exemplo: 1 1 0 0 1 0 0 0 - 0 1 1 1 1 1 0 1 _______________ Sistemas Lógicos 20 4.3.2. Subtração Binária ● Exemplo: 1 1 0 0 1 0 0 0 - 0 1 1 1 1 1 0 1 _______________ Lembrar da operação de subtração no sistema decimal: 8 0 2 - 1 2 6 _________ Sistemas Lógicos 21 4.3.2. Subtração Binária ● Exemplo: 1 1 0 0 1 0 0 0 - 0 1 1 1 1 1 0 1 _______________ Lembrar da operação de subtração no sistema decimal: -1 8 0 12 - 1 2 6 _________ Sistemas Lógicos 22 4.3.2. Subtração Binária ● Exemplo: 1 1 0 0 1 0 0 0 - 0 1 1 1 1 1 0 1 _______________ Lembrar da operação de subtração no sistema decimal: -1 8 0 12 - 1 2 6 _________ 6 Sistemas Lógicos 23 4.3.2. Subtração Binária ● Exemplo: 1 1 0 0 1 0 0 0 - 0 1 1 1 1 1 0 1 _______________ Lembrar da operação de subtração no sistema decimal: -1 -1 8 10 12 - 1 2 6 _________ 6 Sistemas Lógicos 24 4.3.2. Subtração Binária ● Exemplo: 1 1 0 0 1 0 0 0 - 0 1 1 1 1 1 0 1 _______________ Lembrar da operação de subtração no sistema decimal: -1 -1 8 10 12 - 1 2 6 _________ 7 6 Sistemas Lógicos 25 4.3.2. Subtração Binária ● Exemplo: 1 1 0 0 1 0 0 0 - 0 1 1 1 1 1 0 1 _______________ Lembrar da operação de subtração no sistema decimal: -1 -1 8 10 12 - 1 2 6 _________ 6 7 6 Sistemas Lógicos 26 4.3.2. Subtração Binária ● Exemplo: 1 1 0 0 1 0 0 0 - 0 1 1 1 1 1 0 1 _______________ Sistemas Lógicos 27 4.3.2. Subtração Binária ● Exemplo: -1 1 1 0 0 1 0 0 10 - 0 1 1 1 1 1 0 1 _______________ Sistemas Lógicos 28 4.3.2. Subtração Binária ● Exemplo: -1 1 1 0 0 1 0 0 10 - 0 1 1 1 1 1 0 1 _______________ 1 Sistemas Lógicos 29 4.3.2. Subtração Binária ● Exemplo: -1 -1 1 1 0 0 1 0 10 10 - 0 1 1 1 1 1 0 1 _______________ 1 Sistemas Lógicos 30 4.3.2. Subtração Binária ● Exemplo: -1 -1 1 1 0 0 1 0 10 10 - 0 1 1 1 1 1 0 1 _______________ 1 1 Sistemas Lógicos 31 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 1 1 0 0 1 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 1 1 Sistemas Lógicos 32 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 1 1 0 0 1 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 0 1 1 Sistemas Lógicos 33 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 -1 1 1 0 0 11 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 0 1 1 Sistemas Lógicos 34 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 -1 1 1 0 0 11 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 1 0 1 1 Sistemas Lógicos 35 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 -1 -1 1 1 0 10 11 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 1 0 1 1 Sistemas Lógicos 36 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 -1 -1 1 1 0 10 11 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 0 1 0 1 1 Sistemas Lógicos 37 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 -1 -1 -1 1 1 10 10 11 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 0 1 0 1 1 Sistemas Lógicos 38 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 -1 -1 -1 1 1 10 10 11 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 0 0 1 0 1 1 Sistemas Lógicos 39 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 -1 -1 -1 -1 1 11 10 10 11 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 0 0 1 0 1 1 Sistemas Lógicos 40 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 -1 -1 -1 -1 1 11 10 10 11 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 1 0 0 1 0 1 1 Sistemas Lógicos 41 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 -1 -1 -1 -1 1 11 10 10 11 10 10 10 - 0 1 1 1 1 1 0 1 _______________ 0 1 0 0 1 0 1 1 Sistemas Lógicos 42 4.3.2. Subtração Binária ● Exemplo: -1 -1 -1 -1 -1 -1 -1 1 11 10 10 11 10 10 10 (8+64+128 = 200) - 0 1 1 1 1 1 0 1 (1+4+8+16+32+64 = 125) _______________ 0 1 0 0 1 0 1 1 (1+2+8+64 = 75) Sistemas Lógicos 43 4.3.3. Multiplicação Binária 1 0 0 1 x 1 0 1 1 1 0 0 1 1 0 0 1 0 0 0 0 1 0 0 1 1 1 0 0 0 1 1 ● Exemplos: Sistemas Lógicos 44 4.3.4. Divisão Binária 1 0 0 1 1 1 1 0 1 0 1 0 0 1 0 0 0 0 1 1 10 1 0 0 1 0. 1 - 1 1 - 1 0 0 0 0 1 1 0 0 1 0 0 - 1 1 - 1 0 0 0 0 ● Exemplos: Sistemas Lógicos 45 4.4.1. Adição no Sistema Complemento de 2 ● Caso I: dois números positivos 8 3 0 1 0 1 0 0 1 1 + + 1 6 0 0 0 1 0 0 0 0 9 9 0 1 1 0 0 0 1 1 1 0 0 0 1 1 0 0 1 0 0 + + 1 0 0 0 1 1 0 0 1 0 0 2 0 0 1 1 0 0 1 0 0 0 Overflow aritimético (faixa -128 a 127) Sistemas Lógicos 46 4.4.1. Adição no Sistema Complemento de 2 ● Caso II: Positivo e negativo menor 1 2 5 0 1 1 1 1 1 0 1 + + - 6 8 1 0 1 1 1 1 0 0 5 7 1 0 0 1 1 1 0 0 1 Descartado (hodômetro de 8 bits) Sistemas Lógicos 47 4.4.1. Adição no Sistema Complemento de 2 ● Caso III: Positivo e negativo maior 3 7 0 0 1 0 0 1 0 1 + + - 1 1 5 1 0 0 0 1 1 0 1 - 7 8 1 0 1 1 0 0 1 0 Sistemas Lógicos 48 4.4.1. Adição no Sistema Complemento de 2 ● Caso IV: dois números negativos - 4 3 1 1 0 1 0 1 0 1 + + - 7 8 1 0 1 1 0 0 1 0 - 1 2 1 1 1 0 0 0 0 1 1 1 Descartado (hodômetro de 8 bits) Sistemas Lógicos 49 4.4.3. Multiplicação no Sistema Complemento de 2 ● Efetua-se a multiplicação em binário direto, realizando-se as conversões necessárias nos operandos e no resultado para complemento de 2. Sistemas Lógicos 50 4.4.4. Divisão no Sistema Complemento de 2 ● Efetua-se a divisão em binário direto, realizando-se as conversões necessárias nos operandos e no resultado para complemento de 2. Sistemas Lógicos 51 4.5. Adição em Código BCD ● Soma inferior a 9: Soma binários diretamente. Ex.: 4 2 0 1 0 0 0 0 1 0 + + 3 3 0 0 1 1 0 0 1 1 7 5 0 1 1 1 0 1 0 1 Sistemas Lógicos 52 4.5. Adição em Código BCD ● Soma superior a 9: adiciona fator corretivo 6 (equivalente a pular códigos inválidos) e propaga um carry para o próximo dígito. Ex.: 4 7 0 1 0 0 0 1 1 1 + + 3 5 0 0 1 1 0 1 0 1 8 2 0 1 1 1 1 1 0 0 + 1 0 1 1 0 1 0 0 0 0 0 1 0 Sistemas Lógicos 53 4.5. Adição em Código BCD ● Obs: quando a soma for superior a 16, o carry propaga-se automaticamente na soma binária. 4 8 0 1 0 0 1 0 0 0 + + 8 9 1 0 0 0 1 0 0 1 1 3 7 1 1 0 1 0 0 0 1 + 0 0 0 1 0 1 1 0 0 1 1 0 0 0 0 1 0 0 1 1 0 1 1 1 Sistemas Lógicos 54 4.5. Aritmética Hexadecimal ● O complemento pode ser obtido subtraindo-se cada dígito de “F” e somando “1”. Ex: ● Adição e subtração hexadecimal. Ex.: ● Números negativos em hexadec. possuem MSD ≥ 8 F F F -7 -3 -A 8 C 5 + 1 8 C 6 5 9 2 - 3 A 5 ? 5 9 2 + C 5 B 1 1 E D 3 A F + 2 3 C 5 E B Descartado Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30 Slide 31 Slide 32 Slide 33 Slide 34 Slide 35 Slide 36 Slide 37 Slide 38 Slide 39 Slide 40 Slide 41 Slide 42 Slide 43 Slide 44 Slide 45 Slide 46 Slide 47 Slide 48 Slide 49 Slide 50 Slide 51 Slide 52 Slide 53 Slide 54
Compartilhar