Baixe o app para aproveitar ainda mais
Prévia do material em texto
Circuitos Lógicos Aula 02 Prof. Gutemberg Gonçalves dos Santos Júnior Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Departamento de Engenharia Elétrica 2022.2 - Campina Grande-PB - Brasil CRÉDITOS ▪ Slides baseados no material: ❑ Harris, D.; Harris, S., Digital Design and Computer Architecture – ARM Edition, 2016, Morgan Kaufman CL - Aula 02 2 REVISÃO – CONVERSÃO ENTRE BASES CL - Aula 02 3 Decimal Octal HexaDecimal Binário Polinômio – Base 8 Polinômio Base 2 Polinômio – Base 16 Divisão – Base 8 Divisão – Base 16 Divisão Base 2 Agrupamento 3 bits Agrupamento 4 bits EXERCÍCIOS DE REVISÃO ▪ Realize as seguintes conversões: ❑ 2310 → Hexadecimal ❑ 2316 → Binário ❑ 1101010012 → Octal ❑ 1101010012 → Hexadecimal ❑ AD16 → Octal ❑ AD16 → Decimal ❑ 458 → Decimal ❑ 348 → Binário CL - Aula 02 4 EXERCÍCIOS DE REVISÃO ▪ Realize as seguintes conversões: ❑ 2310 → 0x17 ❑ 2316 → 0b00100011 ❑ 1101010012 → 0o651 ❑ 1101010012 → 0x1A9 ❑ AD16 → 0o255 ❑ AD16 → 0d173 ❑ 458 → 0d37 ❑ 348 → 0b011100 CL - Aula 02 5 AULA 2 CL - Aula 026 VALORES BINÁRIOS E FAIXA DINÂMICA ▪ Considerando o sistema decimal: ❑ Quantos valores e qual a faixa de valores podemos representar dada uma quantidade N de dígitos? CL - Aula 02 7 VALORES BINÁRIOS E FAIXA DINÂMICA ▪ Considerando o sistema decimal: ❑ Quantos valores e qual a faixa de valores podemos representar dada uma quantidade N de dígitos? • Número de valores: 10N • Faixa: [0, 10N - 1] • Ex: 3 dígitos o Número de valores = 1000 (103) o Faixa: [0, 999] CL - Aula 02 8 VALORES BINÁRIOS E FAIXA DINÂMICA ▪ E quando consideramos o sistema Binário? ❑ Quantos valores e qual a faixa de valores podemos representar dada uma quantidade N de dígitos? CL - Aula 02 9 VALORES BINÁRIOS E FAIXA DINÂMICA ▪ E quando consideramos o sistema Binário? ❑ Quantos valores e qual a faixa de valores podemos representar dada uma quantidade N de dígitos? • Número de valores: 2N • Faixa: [0, 2N - 1] • Ex: 3 dígitos o Número de valores = 8 (23) o Faixa = [0, 7] = [0002 até 1112] CL - Aula 02 10 Binário (3 dígitos) 000 001 010 011 100 101 110 111 CONCEITOS DE NIBS, BYTES E NIBBLES ▪ Em uma palavra binária, chamamos cada dígito de um bit ❑ 101011000 • Bit mais significativo (MSB – Most Significant Bit) • Bit menos significativo (LSB – Least Significant Bit) ▪ O conjunto de 8 bits se chama Byte ❑ 10100011 ▪ O conjunto de 4 bits se chama Nibble ❑ CAFE5516 Byte Nibble Byte Menos Significativo Byte Mais Significativo CL - Aula 02 ESTIMANDO POTÊNCIAS DE 2 ▪ 210 = 1kilo = 1024 ≅ 1.000 ▪ 220 = 1 mega = 1.048.576 ≅ 1.000.000 ▪ 230 = 1 giga = 1.073.741.824 ≅ 1.000.000.000 ▪ Desta forma, como podemos estimar o valor 222? ❑ 22 x 220 ≅ 4 milhões ▪ Quantos valores podemos representar com 16 bits? ❑ 26 x 210 ≅ 64 mil valores CL - Aula 02 12 OPERAÇÕES ARITMÉTICAS CL - Aula 0213 ADIÇÃO ▪ Decimal ▪ Binário CL - Aula 02 14 3387 0145 1011 0010 + + ADIÇÃO ▪ Decimal ▪ Binário CL - Aula 02 15 3387 0145 3532 1011 0010 1101 + + 11 carries 1 carries ADIÇÃO EM BINÁRIO - EXEMPLOS ▪ Realize as seguintes operações CL - Aula 02 16 0111 0010+ 1011 0011+ 1001 0111+ ADIÇÃO EM BINÁRIO - EXEMPLOS ▪ Realize as seguintes operações CL - Aula 02 17 0111 0010 1001 + 1011 0011 1110 + 1001 0111 10000 + 11 11 1111 Overflow! OVERFLOW ▪ Os sistemas digitais operam com uma quantidade fixa de bits! ❑ O overflow representa um resultado que não pode ser representado na quantidade de bits disponíveis! • No exemplo anterior, fizemos a seguinte adição: CL - Aula 02 18 1001 0111 10000 + 1111 Overflow! 9 7 16 + Precisamos de 5 bits para representar este valor! SUBTRAÇÃO ▪ Decimal ▪ Binário CL - Aula 02 19 3387 0188 1010 0011 - - SUBTRAÇÃO ▪ Decimal ▪ Binário CL - Aula 02 20 3387 0188 3199 1010 0011 0111 - - 1 1 1 SUBTRAÇÃO EM BINÁRIO - EXEMPLOS ▪ Realize as seguintes operações CL - Aula 02 21 0111 0010- 1011 0011- 0101 0111- SUBTRAÇÃO EM BINÁRIO - EXEMPLOS ▪ Realize as seguintes operações CL - Aula 02 22 0111 0010 0101 - 1001 0011 0110 - 0101 0111 11110 - 1 1 Overflow! 1 1 1 REPRESENTAÇÃO DE NÚMEROS NEGATIVOS EM BINÁRIO ▪ Veremos duas maneiras para representar números negativos no sistema binário de numeração ❑ Sinal/Magnitude (S/M) ❑ Complemento de 2 CL - Aula 02 23 REPRESENTAÇÃO EM SINAL/MAGNITUDE (S/M) ▪ Considerando um número com N bits, temos: ❑ 1 bit que representa o sinal (bit de sinal) • Números positivos → Bit de sinal = 0 • Números negativos → Bit de sinal = 1 ❑ N-1 bits que representam a magnitude ❑ Ex: Em um sistema com N = 6, temos as seguintes representações para os valores -8 e +4: • -8 = 1 01000 • + 4 = 0 00100 CL - Aula 02 24 8- 4+ REPRESENTAÇÃO EM SINAL/MAGNITUDE (S/M) ▪ Na reprentação Sinal/Magnitude, temos a seguinte faixa dinâmica para representação de valores: ❑ Valor assumir como exemplo que N = 5; • Números positivos: • Números negativos: • Generalizando: CL - Aula 02 25 00000 → +0 01111 → +15 10000 → -0 11111 → -15 Faixa dinâmica [-15, +15] Faixa dinâmica [-(24-1), +(24-1)] Faixa dinâmica [-(2N-1-1), +(2N-1-1)] 25/2 valores 25/2 valores REPRESENTAÇÃO EM SINAL/MAGNITUDE (S/M) ▪ Problemas da representação Sinal/Magnitude ❑ Realizando a operação de adição: (+4) + (-4) CL - Aula 02 26 00100 10100+ (+4) (-4)+ REPRESENTAÇÃO EM SINAL/MAGNITUDE (S/M) ▪ Problemas da representação Sinal/Magnitude ❑ Realizando a operação de adição: (+4) + (-4) CL - Aula 02 27 00100 10100 11000 + 1 (+4) (-4) -8 + Errado! REPRESENTAÇÃO EM SINAL/MAGNITUDE (S/M) ▪ Problemas da representação Sinal/Magnitude ❑ Realizando a operação de adição: (+4) + (-4) ❑ Temos duas representações para o número 0 (+0 e -0) • 00000 → +0 • 10000 → -0 CL - Aula 02 28 00100 10100 11000 + 1 (+4) (-4) -8 + Errado! REPRESENTAÇÃO SINAL/MAGNITUDE ▪ Como realizar operações de soma com Sinal/Magnitude? ❑ Devemos estabelecer as seguintes regras: 1. Caso os sinais dos operandos sejam iguais, devemos somar os módulos e repetir o sinal 2. Caso os sinais dos operandos sejam diferentes, devemos subtrair o número de menor módulo do número de maior módulo. O sinal que prevalecerá será o do número de maior módulo. CL - Aula 02 29 REPRESENTAÇÃO SINAL/MAGNITUDE ▪ Como realizar operações de soma com Sinal/Magnitude? ❑ Devemos estabelecer as seguintes regras: 1. Caso os sinais dos operandos sejam iguais, devemos somar os módulos e repetir o sinal 2. Caso os sinais dos operandos sejam diferentes, devemos subtrair o número de menor módulo do número de maior módulo. O sinal que prevalecerá será o do número de maior módulo. CL - Aula 02 30 00100 00100 01000 + 1 (+4) (+4) +8 + REPRESENTAÇÃO SINAL/MAGNITUDE ▪ Como realizar operações de soma com Sinal/Magnitude? ❑ Devemos estabelecer as seguintes regras: 1. Caso os sinais dos operandos sejam iguais, devemos somar os módulos e repetir o sinal 2. Caso os sinais dos operandos sejam diferentes, devemos subtrair o número de menor módulo do número de maior módulo. O sinal que prevalecerá será o do número de maior módulo. CL - Aula 02 31 10010 10100 10110 + (-2) (-4) -6 + REPRESENTAÇÃO SINAL/MAGNITUDE ▪ Como realizar operações de soma com Sinal/Magnitude? ❑ Devemos estabelecer as seguintes regras: 1. Caso os sinais dos operandos sejam iguais, devemos somar os módulos e repetir o sinal 2. Caso os sinais dos operandos sejam diferentes, devemos subtrair o número de menor módulo do número de maior módulo. O sinal que prevalecerá será o do número de maior módulo. CL - Aula 02 32 10110 00100 10010 - (-6) (+4) -2 + Maior módulo REPRESENTAÇÃO SINAL/MAGNITUDE ▪ Como realizar operações de soma com Sinal/Magnitude? ❑ Devemos estabelecer as seguintes regras: 1. Caso os sinais dos operandossejam iguais, devemos somar os módulos e repetir o sinal 2. Caso os sinais dos operandos sejam diferentes, devemos subtrair o número de menor módulo do número de maior módulo. O sinal que prevalecerá será o do número de maior módulo. CL - Aula 02 33 00110 10100 00010 - (+6) (-4) +2 + Maior módulo REPRESENTAÇÃO SINAL/MAGNITUDE ▪ Exercícios ❑ Realize as seguintes operações, utilizando a representação S/M, considerando N = 6: • (+10) + (+3) = • (+10) + (-13) = • (+19) + (+13) = • (-7) + (-3) = • (-14) + (-25) = • (+10) + (-25) = CL - Aula 02 34 REPRESENTAÇÃO SINAL/MAGNITUDE ▪ Exercícios ❑ Realize as seguintes operações considerando N = 6: • (+10) + (+3) = 001101 • (+10) + (-13) = 100011 • (+19) + (+13) = overflow! • (-7) + (-3) = 101010 • (-14) + (-25) = overflow! • (+10) + (-25) = 101111 CL - Aula 02 35 COMPLEMENTO DE 2 (C2) ▪ Não apresenta os problemas listados com a representação Sinal/Módulo ❑ Podemos somar números positivos com negativos; ❑ Não há dupla representação para o valor ‘0’ CL - Aula 02 36 COMPLEMENTO DE 2 (C2) ▪ Procedimento para obtenção do complemento de 2 ▪ Método: ❑ Inverter os bits (complemento de 1) ❑ Adicionar 1 CL - Aula 02 37 COMPLEMENTO DE 2 (C2) ▪ Procedimento para obtenção do complemento de 2 ▪ Método: ❑ Inverter os bits (complemento de 1) ❑ Adicionar 1 ▪ Exemplo ❑ Como representar o valor -3 em complemento de 2 considerando N = 4? CL - Aula 02 38 COMPLEMENTO DE 2 (C2) ▪ Procedimento para obtenção do complemento de 2 ▪ Método: ❑ Inverter os bits (complemento de 1) ❑ Adicionar 1 ▪ Exemplo ❑ Como representar o valor -3 em complemento de 2 considerando N = 4? • +3 = 0011 CL - Aula 02 39 COMPLEMENTO DE 2 (C2) ▪ Procedimento para obtenção do complemento de 2 ▪ Método: ❑ Inverter os bits (complemento de 1) ❑ Adicionar 1 ▪ Exemplo ❑ Como representar o valor -3 em complemento de 2 considerando N = 4? • +3 = 0011 • -3 → 1100 + 1 = 1101 CL - Aula 02 40 COMPLEMENTO DE 2 (C2) ▪ Vamos considerar um sistema com N = 6 bits: ❑ Qual o número positivo com maior módulo? • 011111 = +31 → +(25 - 1) ❑ Qual o número negativo com maior módulo? • 100000 = -32 → -(25) ❑ Note que o bit mais significativo continua indicando o sinal • 1 → negativo e 0 → positivo ❑ Qual a faixa dinâmica? • [-32, 31] CL - Aula 02 41 COMPLEMENTO DE 2 (C2) ▪ Generalizando para um valor qualquer de N ❑ Qual o número positivo com maior módulo? • + (2N-1 - 1) ❑ Qual o número negativo com maior módulo? • - (2N-1) ❑ Note que o bit mais significativo continua indicando o sinal • 1 → negativo e 0 → positivo ❑ Qual a faixa dinâmica? • [-(2N-1), +(2N-1 - 1)] CL - Aula 02 42 EXERCÍCIOS ▪ Represente os números abaixo utilizando a representação C2 com N = 6 ❑ +20 ❑ -20 ❑ -12 ❑ +15 ❑ +28 ❑ -32 CL - Aula 02 43 EXERCÍCIOS ▪ Represente os números abaixo utilizando a representação C2 com N = 6 ❑ +20 → 010100 ❑ -20 → 101100 ❑ -12 → 110100 ❑ +15 → 001111 ❑ +28 → 011100 ❑ -32 → 100000 CL - Aula 02 44 EXERCÍCIOS ▪ Considerando a representação C2 com N = 6, qual o valor em decimal dos números abaixo? ❑ 101010 ❑ 010101 ❑ 011100 ❑ 101111 ❑ 111111 ❑ 000000 ❑ 100000 CL - Aula 02 45 EXERCÍCIOS ▪ Considerando a representação C2 com N = 6, qual o valor em decimal dos números abaixo? ❑ 101010 → -22 ❑ 010101 → +21 ❑ 011100 → +28 ❑ 101111 → -17 ❑ 111111 → -1 ❑ 000000 → 0 ❑ 100000 → -32 CL - Aula 02 46 REGRAS PARA EXPANDIR A QUANTIDADE DE BITS ▪ Para expandir a quantidade de bits de N para M (M > N), temos: ❑ Copiar o bit de sinal na direção do MSB ❑ Exemplo: • Sistema com N = 5 e queremos expandir M = 8 o +5 = 00101 → 00000101 o -5 = 11011 → 11111011 o É o mesmo procedimento ao representar +5 ou -5 considerando desde o início M = 8 ❖ +5 = 00000101 ❖ -5 → 11111010 + 1 → 11111011 CL - Aula 02 47 Inversão de bits +5 (c/8 bits) ATENÇÃO ▪ Se expandirmos a quantidade de bits adicionando zero a esquerda em C2, temos: ❑ Para valores positivos → Ok! ❑ Para valores negativos → o valor será alterado ❑ Exemplo: • Sistema com N = 5 e queremos expandir M = 8 o +5 = 00101 → 00000101 → +5 o -5 = 11011 → 00011011 → +27 CL - Aula 02 48 COMPARAÇÃO DE SISTEMAS DE NUMERAÇÃO CL - Aula 02 49 Sistema de numeração Faixa Dinâmica Sem sinal (Unsigned) [0, 2N-1] Sinal/Magnitude (S/M) [-(2N-1-1), +(2N-1-1)] Complemento de 2 (C2) [-(2N-1), +(2N-1-1)] Exemplo considerando 4 bits -8 -7 -6 -5 -4 -3 -2 -1 0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11+12+13 +14+15 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111Sem sinal 1000 1001 1010 1011 1100 1101 1110 1111 0000 0001 0010 0011 0100 0101 0110 0111 C2 1111 1110 1101 1100 1011 1010 1001 0000 0001 0010 0011 0100 0101 0110 0111 1000 S/M EXERCÍCIOS CL - Aula 0250 ALGUMA DÚVIDA? CL - Aula 0251 Slide 1 Slide 2: Créditos Slide 3: Revisão – conversão entre bases Slide 4: Exercícios de REvisão Slide 5: Exercícios de REvisão Slide 6: aula 2 Slide 7: Valores binários e faixa dinâmica Slide 8: Valores binários e faixa dinâmica Slide 9: Valores binários e faixa dinâmica Slide 10: Valores binários e faixa dinâmica Slide 11: Conceitos de Nibs, Bytes e Nibbles Slide 12: Estimando potências de 2 Slide 13: Operações Aritméticas Slide 14: Adição Slide 15: Adição Slide 16: Adição em binário - Exemplos Slide 17: Adição em binário - Exemplos Slide 18: overflow Slide 19: Subtração Slide 20: Subtração Slide 21: Subtração em binário - Exemplos Slide 22: Subtração em binário - Exemplos Slide 23: Representação de números negativos em binário Slide 24: Representação em Sinal/Magnitude (S/M) Slide 25: Representação em Sinal/Magnitude (S/M) Slide 26: Representação em Sinal/Magnitude (S/M) Slide 27: Representação em Sinal/Magnitude (S/M) Slide 28: Representação em Sinal/Magnitude (S/M) Slide 29: Representação sinal/magnitude Slide 30: Representação sinal/magnitude Slide 31: Representação sinal/magnitude Slide 32: Representação sinal/magnitude Slide 33: Representação sinal/magnitude Slide 34: Representação sinal/magnitude Slide 35: Representação sinal/magnitude Slide 36: Complemento de 2 (C2) Slide 37: Complemento de 2 (C2) Slide 38: Complemento de 2 (C2) Slide 39: Complemento de 2 (C2) Slide 40: Complemento de 2 (C2) Slide 41: Complemento de 2 (C2) Slide 42: Complemento de 2 (C2) Slide 43: exercícios Slide 44: exercícios Slide 45: exercícios Slide 46: exercícios Slide 47: Regras para expandir a quantidade de bits Slide 48: Atenção Slide 49: Comparação de sistemas de numeração Slide 50: Exercícios Slide 51: Alguma dúvida?
Compartilhar