Baixe o app para aproveitar ainda mais
Prévia do material em texto
Arquitetura de Computadores Aritmética binária, portas lógicas e a álgebra de Boole Arquitetura de Computadores Aritmética binária, portas lógicas e a álgebra de Boole 2 Sistemas Numéricos Sistemas Numéricos � Sistemas numéricos � Sistemas de notação usados para representar quantidades abstratas denominadas números � São definido pela base que utiliza � base = número de símbolos diferentes (algarismos) necessários para representar um número qualquer � Sistema Decimal � Dez símbolos diferentes ou dígitos para representar um número (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) � Um sistema numérico de base 10 � Sistemas numéricos � Sistemas de notação usados para representar quantidades abstratas denominadas números � São definido pela base que utiliza � base = número de símbolos diferentes (algarismos) necessários para representar um número qualquer � Sistema Decimal � Dez símbolos diferentes ou dígitos para representar um número (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) � Um sistema numérico de base 10 3 Sistemas Numéricos Sistemas Numéricos � Sistema de Número Posicional � Número é representado por uma seqüência de dígitos onde cada posição de dígito tem um peso associado � No sistema decimal � Valor de d3d2d1d0 � d3*103 + d2*102+ d1*101 + d0*100 � Cada dígito di tem um peso de 10i � Exemplo: 3.098.323 � representação de 3*106+0*105+9*104+8*103+3*102+2*101+3*100 � Sistema de Número Posicional � Número é representado por uma seqüência de dígitos onde cada posição de dígito tem um peso associado � No sistema decimal � Valor de d3d2d1d0 � d3*103 + d2*102+ d1*101 + d0*100 � Cada dígito di tem um peso de 10i � Exemplo: 3.098.323 � representação de 3*106+0*105+9*104+8*103+3*102+2*101+3*100 4 Sistema Octal Sistema Octal � Sistema Octal ou Base 8 � Apresenta oito dígitos: 0, 1, 2, 3, 4, 5, 6, 7 � Contagem é realizada como segue: 0, 1, 2, 3, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16, 17, 20,... � Conversão Octal para Decimal � Valor de um número octal de 4 dígitos o3o2o1o0 � o3*83 + o2*82+ o1*81 + o0*80 � Cada dígito oi tem um peso de 8i � Valor octal 175o � 5*1+7*8+1*64 = 125d � Sistema Octal ou Base 8 � Apresenta oito dígitos: 0, 1, 2, 3, 4, 5, 6, 7 � Contagem é realizada como segue: 0, 1, 2, 3, 4, 5, 6, 7, 10, 11, 12, 13, 14, 15, 16, 17, 20,... � Conversão Octal para Decimal � Valor de um número octal de 4 dígitos o3o2o1o0 � o3*83 + o2*82+ o1*81 + o0*80 � Cada dígito oi tem um peso de 8i � Valor octal 175o � 5*1+7*8+1*64 = 125d 5 Sistema Octal Sistema Octal � Exercício: Qual é a representação Decimal de 2154o? � Valor de um número octal de 3 dígitos o2o1o0 � o3*83+ o2*82+ o1*81 + o0*80 2154o = 2*521+1*82+5*81+4*80 = 1024+64+40+4=1132 � Exercício: Qual é a representação Decimal de 2154o? � Valor de um número octal de 3 dígitos o2o1o0 � o3*83+ o2*82+ o1*81 + o0*80 2154o = 2*521+1*82+5*81+4*80 = 1024+64+40+4=1132 6 Sistema Octal Sistema Octal � Conversão Decimal para Octal � Sistema decimal: � 654 = 4 unidades, 5 dezenas e 6 centenas � Para verificar isto, divide-se o número pela sua base (que é 10): 654/10 = 65 Resto 4 (*1) /10 = 6 Resto 5 (*10) /10 = 0 Resto 6 (*100) � Para converter Decimal para Octal basta dividir por 8 � 200d 200/8= 25 Resto 0 25/8 = 3 Resto 1 3/8 = 0 Resto 3 200d=310o � Exercício: Qual é o valor na base 8 do número 1534d? � Conversão Decimal para Octal � Sistema decimal: � 654 = 4 unidades, 5 dezenas e 6 centenas � Para verificar isto, divide-se o número pela sua base (que é 10): 654/10 = 65 Resto 4 (*1) /10 = 6 Resto 5 (*10) /10 = 0 Resto 6 (*100) � Para converter Decimal para Octal basta dividir por 8 � 200d 200/8= 25 Resto 0 25/8 = 3 Resto 1 3/8 = 0 Resto 3 200d=310o � Exercício: Qual é o valor na base 8 do número 1534d? 7 Sistema BinárioSistema Binário � Sistema Binário (Base 2) � Apresenta unicamente dois dígitos: 0,1 � Contagem é realizada como segue: 0, 1, 10, 11, 100, 101, 110, 111, 1000, ... � Conversão Binário para Decimal � Valor de um número binário de 8 dígitos b7b6b5b4b3b2b1b0 � b7*27 + b6*26+ b5*25 + b4*24 + d3*23 + d2*22+ d1*21 + d0*20 � dígito bi tem um peso de 2i � Valor binário 10101010b � 10101010b = 0*1+1*2+0*4+1*8+0*16+1*32+0*64+1*128 = 170d � Exercício: Qual é o valor decimal de 10001b � Sistema Binário (Base 2) � Apresenta unicamente dois dígitos: 0,1 � Contagem é realizada como segue: 0, 1, 10, 11, 100, 101, 110, 111, 1000, ... � Conversão Binário para Decimal � Valor de um número binário de 8 dígitos b7b6b5b4b3b2b1b0 � b7*27 + b6*26+ b5*25 + b4*24 + d3*23 + d2*22+ d1*21 + d0*20 � dígito bi tem um peso de 2i � Valor binário 10101010b � 10101010b = 0*1+1*2+0*4+1*8+0*16+1*32+0*64+1*128 = 170d � Exercício: Qual é o valor decimal de 10001b 8 Sistema Binário Sistema Binário � Conversão Decimal para Binário � Mesmo processo para conversão de decimal para octal, mas dividindo por 2 � 200d 200/2=100 Resto 0 100/2= 50 Resto 0 50/2 = 25 Resto 0 25/2 = 12 Resto 1 12/2 = 6 Resto 0 6/2 = 3 Resto 0 3/2 = 1 Resto 1 � Conversão Decimal para Binário � Mesmo processo para conversão de decimal para octal, mas dividindo por 2 � 200d 200/2=100 Resto 0 100/2= 50 Resto 0 50/2 = 25 Resto 0 25/2 = 12 Resto 1 12/2 = 6 Resto 0 6/2 = 3 Resto 0 3/2 = 1 Resto 1= 1 1 0 0 1 0 0 0b 9 Sistema Binário Sistema Binário � Exercícios �Qual é o valor binário de 1233d? �Qual é o valor decimal de 10101011b? � Exercícios �Qual é o valor binário de 1233d? �Qual é o valor decimal de 10101011b? 10 Sistema Hexadecimal Sistema Hexadecimal � Sistema Hexadecimal �Na base hexadecimal tem-se 16 dígitos � 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, � A, B, C, D, E, F � Representam os números 10d a 15d �Contamos os dígitos hexadecimais � 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, 10, 11, 12, ..., 19, 1A, 1B, 1C, 1D, 1E, 1F, 20, 21, ... � Sistema Hexadecimal �Na base hexadecimal tem-se 16 dígitos � 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, � A, B, C, D, E, F � Representam os números 10d a 15d �Contamos os dígitos hexadecimais � 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, 10, 11, 12, ..., 19, 1A, 1B, 1C, 1D, 1E, 1F, 20, 21, ... 11 Sistema Hexadecimal Sistema Hexadecimal � Conversão Binário para Hexadecimal � Exemplo: 101011b (1+2+8+32=43d) � Passo 1: dividir o número binário em grupos de 4 bits (da direita para a esquerda) � 0010; 1011 � Passo 2: tomar cada grupo como um número independente e converter em dígitos decimais � 0010;1011=2;11 � Passo 3: substituir todos os números decimais maiores que 9 pelas suas respectivas representações em hexadecimal � 00101011b = 2Bh � Conversão Hexadecimal para Binário � Inverter os passos � Exercícios: � Qual é o valor hexadecimal de 1110001b? � Qual é o valor binário de 2AF01? � Conversão Binário para Hexadecimal � Exemplo: 101011b (1+2+8+32=43d) � Passo 1: dividir o número binário em grupos de 4 bits (da direita para a esquerda) � 0010; 1011 � Passo 2: tomar cada grupo como um número independente e converter em dígitos decimais � 0010;1011=2;11 � Passo 3: substituir todos os números decimais maiores que 9 pelas suas respectivas representações em hexadecimal � 00101011b = 2Bh � Conversão Hexadecimal para Binário � Inverter os passos � Exercícios: � Qual é o valor hexadecimal de 1110001b? � Qual é o valor binário de 2AF01? 12 Sistema HexadecimalSistema Hexadecimal � Conversão Hexadecimal em Decimal �Mesma fórmula utilizada na conversão binário para decimal � sendo que a base 2 é trocada por 16 �Converter B2Ah em decimal: B -> 11*162 = 2816d 2 -> 2*161 = 32d A -> 10*160 = 10d 2858d � Conversão Hexadecimal em Decimal �Mesma fórmula utilizada na conversãobinário para decimal � sendo que a base 2 é trocada por 16 �Converter B2Ah em decimal: B -> 11*162 = 2816d 2 -> 2*161 = 32d A -> 10*160 = 10d 2858d 13 Sistema HexadecimalSistema Hexadecimal � Conversão Decimal para Hexadecimal �Mesma fórmula utilizada na conversão de um número decimal para binário � dividindo por 16 em vez de 2 �Converter 1069d em hexadecimal 1069/16 = 66 Resto 13d = Dh 66/16 = 4 Resto 2d = 2h 4/16 = 0 Resto 4d = 4h 1069d = 42Dh � Conversão Decimal para Hexadecimal �Mesma fórmula utilizada na conversão de um número decimal para binário � dividindo por 16 em vez de 2 �Converter 1069d em hexadecimal 1069/16 = 66 Resto 13d = Dh 66/16 = 4 Resto 2d = 2h 4/16 = 0 Resto 4d = 4h 1069d = 42Dh 14 Sistema HexadecimalSistema Hexadecimal � Exercícios �Converta o número 011101b para hexadecimal �Converta o número A10h para binário �Converta o número 120d para hexadecimal �Converta o número FACAh para decimal � Exercícios �Converta o número 011101b para hexadecimal �Converta o número A10h para binário �Converta o número 120d para hexadecimal �Converta o número FACAh para decimal 15 Operações Aritméticas: Aritmética Binária Operações Aritméticas: Aritmética Binária � Adição binária � Fazem-se as contas coluna a coluna, da direita para a esquerda, fazendo o transporte de um (<e vai um>) quando for o caso � Observando-se as seguintes operações básicas: � 0 + 0 = 0 � 0 + 1 = 1 � 1 + 1 = 0 e vai 1 (1 mais 1 é igual a 0 e vai 1) � 1 + 1 + 1 = 1 e vai 1 (1 mais 1 mais 1 é igual a 1 e vai 1) � Exemplos � Adição binária � Fazem-se as contas coluna a coluna, da direita para a esquerda, fazendo o transporte de um (<e vai um>) quando for o caso � Observando-se as seguintes operações básicas: � 0 + 0 = 0 � 0 + 1 = 1 � 1 + 1 = 0 e vai 1 (1 mais 1 é igual a 0 e vai 1) � 1 + 1 + 1 = 1 e vai 1 (1 mais 1 mais 1 é igual a 1 e vai 1) � Exemplos 101 +1101 0 1 1 1 010 11001 +10011 0 1 0 1 1110 ExercícioExercício Adicionar os seguintes números binários. a) 101110 + 100101 b) 1001 + 1100 Adicionar os seguintes números binários. a) 101110 + 100101 b) 1001 + 1100 16 Arq. de Computadores I Exercício – soluçãoExercício – solução 17Arq. de Computadores I 18 Operações Aritméticas: Aritmética Binária Operações Aritméticas: Aritmética Binária � Subtração binária � Como o conjunto de símbolos contém apenas 2 dígitos � ao se efetuar a subtração parcial entre 2 dígitos � se o segundo (subtraendo) exceder o primeiro (minuendo) � subtrai-se uma unidade ao dígito imediatamente à esquerda no minuendo (se existir e o seu valor for 1), convertendo-o a 0 � substituímos o diminuendo por 10b (2d) � Se o dígito imediatamente à esquerda for 0 � procura-se nos dígitos consecutivos � Subtração binária � Como o conjunto de símbolos contém apenas 2 dígitos � ao se efetuar a subtração parcial entre 2 dígitos � se o segundo (subtraendo) exceder o primeiro (minuendo) � subtrai-se uma unidade ao dígito imediatamente à esquerda no minuendo (se existir e o seu valor for 1), convertendo-o a 0 � substituímos o diminuendo por 10b (2d) � Se o dígito imediatamente à esquerda for 0 � procura-se nos dígitos consecutivos 19 Operações Aritméticas: Aritmética Binária Operações Aritméticas: Aritmética Binária � Subtração binária � Exemplos: 11101 – 111 � Subtração binária � Exemplos: 11101 – 111 1 1 1 0 1 - 1 1 1 0 0 2 1 0 2 101 Exercício Exercício a) 111 – 101 b) 1101 - 1010 a) 111 – 101 b) 1101 - 1010 20Arq. de Computadores I Exercício – soluçãoExercício – solução 21Arq. de Computadores I 22 Operações Aritméticas: Aritmética Binária Operações Aritméticas: Aritmética Binária � Subtração Binária (Método do Complemento de Dois) � a-b = a+(-b) � Complemento de dois transforma um número positivo em negativo � Para realizar o complemento de dois � Número de dígito dos operandos devem ser o mesmo � trocar os uns pelos zeros e vice-versa e adicionar um ao resultado � 0101001 (41d) ���� 1010110+1 = 1010111 � Exemplo: 1110-101 (14d-5d) 1. Completa-se o número de dígitos do diminuidor: 0101 2. Realiza-se o complemento de dois do diminuidor: 1010+1=1011 3. Soma-se os dois operandos 1110+1011=11001 4. Despreza-se o transporte final: 1001 (9d) � Subtração Binária (Método do Complemento de Dois) � a-b = a+(-b) � Complemento de dois transforma um número positivo em negativo � Para realizar o complemento de dois � Número de dígito dos operandos devem ser o mesmo � trocar os uns pelos zeros e vice-versa e adicionar um ao resultado � 0101001 (41d) ���� 1010110+1 = 1010111 � Exemplo: 1110-101 (14d-5d) 1. Completa-se o número de dígitos do diminuidor: 0101 2. Realiza-se o complemento de dois do diminuidor: 1010+1=1011 3. Soma-se os dois operandos 1110+1011=11001 4. Despreza-se o transporte final: 1001 (9d) ExercícioExercício Calcule o complemento dois dos seguintes números binários: a) 1001 b) 1101 Calcule o complemento dois dos seguintes números binários: a) 1001 b) 1101 23Arq. de Computadores I Exercício – soluçãoExercício – solução 24Arq. de Computadores I ExercícioExercício Subtraia os seguintes números em binários. a) 13 - 7 b) 6 -9 Subtraia os seguintes números em binários. a) 13 - 7 b) 6 -9 25Arq. de Computadores I Exercício – soluçãoExercício – solução a) 13 = 1101 7 = 0111 Calculando o 2º complemento de 7 (0111), temos: a) 13 = 1101 7 = 0111 Calculando o 2º complemento de 7 (0111), temos: 26Arq. de Computadores I OBSERVAÇÃO: Sempre que houver carry do bit mais significativo, ele deverá ser desprezado. Exercício – soluçãoExercício – solução b) 6 = 0110 9 = 1001 Calculando o complemento dois de 9 (1001), temos: b) 6 = 0110 9 = 1001 Calculando o complemento dois de 9 (1001), temos: 27Arq. de Computadores I Somando Se no resultado da soma (1101) não existe carry, devemos achar o 2º complemento deste número e acrescentar o sinal negativo (-). 28 Operações Aritméticas: Aritmética Binária Operações Aritméticas: Aritmética Binária � Multiplicação (1a Opção) � Pode fazer-se por adições sucessivas � para calcular A*B basta somar A a si própria B vezes � Exemplo: 101b*100b = ? Lembrado que 100b = 4d, então � 101 * 100 = � Multiplicação (1a Opção) � Pode fazer-se por adições sucessivas � para calcular A*B basta somar A a si própria B vezes � Exemplo: 101b*100b = ? Lembrado que 100b = 4d, então � 101 * 100 = 29 Operações Aritméticas: Aritmética Binária Operações Aritméticas: Aritmética Binária � Multiplicação (2a Opção) � Semelhante à multiplicação decimal � exceto pelo fato da soma final dos produtos se fazer em binário � As seguintes igualdades devem ser respeitadas: � 0*0=0; 0*1=0; 1*0=0; 1*1=1 � Exemplos: multiplicar os números 1011 e 1101 � Exercício: multiplicar 10101 e 101 � Multiplicação (2a Opção) � Semelhante à multiplicação decimal � exceto pelo fato da soma final dos produtos se fazer em binário � As seguintes igualdades devem ser respeitadas: � 0*0=0; 0*1=0; 1*0=0; 1*1=1 � Exemplos: multiplicar os números 1011 e 1101 � Exercício: multiplicar 10101 e 101 30 Operações Aritméticas: Aritmética Binária Operações Aritméticas: Aritmética Binária � Divisão(1a Opção) � Pode ser feita por subtrações sucessivas até obtermos uma diferença menor que o divisor (resto) � Exemplo: � Divisão(1a Opção) � Pode ser feita por subtrações sucessivas até obtermos uma diferença menor que o divisor (resto) � Exemplo: 31 Operações Aritméticas: Aritmética Binária Operações Aritméticas: Aritmética Binária � Divisão (2a Opção) � Pode ser feitade maneira idêntica à divisão decimal � exceto pelo fato das multiplicações e subtrações internas ao processo serem feitas em binário � Divisão (2a Opção) � Pode ser feita de maneira idêntica à divisão decimal � exceto pelo fato das multiplicações e subtrações internas ao processo serem feitas em binário 32 Operações Aritméticas: Aritmética Binária Operações Aritméticas: Aritmética Binária � Divisão (2a Opção)� Divisão (2a Opção) 33 Operações Aritméticas Hexadecimal Operações Aritméticas Hexadecimal � Adição � Exemplo: 8+5 � em decimal, o valor seria 13 � em hexadecimal, o valor 13 é representado por Dh � Sempre que o resultado ultrapassar a base � subtraímos a base do resultado e “vai-um” � Exemplo: 19+9 � em decimal, o resultado de 9+9 é 18 � como o valor ultrapassa a base, subtraímos esta do resultado: 18-16=2 � fazendo o transporte para a coluna seguinte obtemos o resultado: 22h � Adição � Exemplo: 8+5 � em decimal, o valor seria 13 � em hexadecimal, o valor 13 é representado por Dh � Sempre que o resultado ultrapassar a base � subtraímos a base do resultado e “vai-um” � Exemplo: 19+9 � em decimal, o resultado de 9+9 é 18 � como o valor ultrapassa a base, subtraímos esta do resultado: 18-16=2 � fazendo o transporte para a coluna seguinte obtemos o resultado: 22h 34 Operações Aritméticas Hexadecimal Operações Aritméticas Hexadecimal � Subtração � A partir de um exemplo: 27h-1Eh � Efetuamos a operação de subtração coluna a coluna � primeira coluna o diminuidor (E) é superior ao diminuendo (7) � então adicionamos a base ao diminuendo, executamos a subtração, e há transporte de uma unidade que somamos ao diminuidor da coluna seguinte � Subtração � A partir de um exemplo: 27h-1Eh � Efetuamos a operação de subtração coluna a coluna � primeira coluna o diminuidor (E) é superior ao diminuendo (7) � então adicionamos a base ao diminuendo, executamos a subtração, e há transporte de uma unidade que somamos ao diminuidor da coluna seguinte 27h -1Eh 1 9h 1 0 35 Operações Aritméticas Hexadecimal Operações Aritméticas Hexadecimal � Multiplicação � Esta operação pode fazer-se facilmente por meio da tabela de dupla entrada � Multiplicação � Esta operação pode fazer-se facilmente por meio da tabela de dupla entrada 36 Operações Aritméticas Hexadecimal Operações Aritméticas Hexadecimal � Divisão � Exemplos � 2Fh/12h � Divisão � Exemplos � 2Fh/12h 37 Computador com 6 níveis Circuito integradoCircuito integrado 38Arq. de Computadores I 39 � Computador digital - máquina projetada para armazenar e manipular informações representadas apenas por algarismos (ou dígitos) e que só podem assumir dois valores distintos, 0 e 1. � Computador digital - máquina projetada para armazenar e manipular informações representadas apenas por algarismos (ou dígitos) e que só podem assumir dois valores distintos, 0 e 1. ♦Informação binária (0 ou 1) - representada em um sistema digital por quantidades físicas (sinais elétricos). Portas lógicas e a Álgebra de Boole Portas lógicas e a Álgebra de Boole 40 � Operações de um computador digital - operações aritméticas e lógicas básicas: somar bits, complementar bits, comparar bits, mover bits. � As operações são fisicamente realizadas por circuitos digitais. � Componentes básicos dos circuitos digitais - "portas" (gates) lógicas � Circuitos lógicos - circuitos que contêm as portas lógicas. � Operações de um computador digital - operações aritméticas e lógicas básicas: somar bits, complementar bits, comparar bits, mover bits. � As operações são fisicamente realizadas por circuitos digitais. � Componentes básicos dos circuitos digitais - "portas" (gates) lógicas � Circuitos lógicos - circuitos que contêm as portas lógicas. Portas lógicas e a Álgebra de Boole Portas lógicas e a Álgebra de Boole 41 � Quadro Resumo� Quadro Resumo Portas lógicas e a Álgebra de Boole Portas lógicas e a Álgebra de Boole 42 � Quadro Resumo Portas lógicas e a Álgebra de Boole Portas lógicas e a Álgebra de Boole 43 � O circuito elétrico da porta lógica que implementa a função AND : � O circuito elétrico da porta lógica que implementa a função AND : ♦Torna-se difícil desenhar o esquema elétrico de um projeto composto por várias portas lógicas desta forma. ♦Solução: uso de uma SIMBOLOGIA. Portas lógicas e a Álgebra de Boole Portas lógicas e a Álgebra de Boole 44 Portas lógicas básicasPortas lógicas básicas A B S A A AA B BB S S SS AND OR NOT NAND NOR Lucínio Preza de Araújo 45 Circuitos integrados digitais Circuitos integrados digitais 1 2 3 4 5 6 7 891011121314 Marca 46 Exemplos de Circuitos Integrados 47 Excência da algebra de BooleExcência da algebra de Boole 48Arq. de Computadores I Simplificação lógicaSimplificação lógica 49Arq. de Computadores I Tabela verdade…Tabela verdade… 50Arq. de Computadores I Meio SomadorMeio Somador CIRCUITO MEIO-SOMADOR (HALF ADDER) O circuito meio-somador SOMA DOIS BITS (sem levar em conta bit de carry). CIRCUITO MEIO-SOMADOR (HALF ADDER) O circuito meio-somador SOMA DOIS BITS (sem levar em conta bit de carry). 51Arq. de Computadores I Somador competoSomador competo 52Arq. de Computadores I EXPRESSÕES LÓGICASEXPRESSÕES LÓGICAS S = S1+C S = A .B + C S = S1+C S = A .B + C OBTENÇÃO DE EXPRESSÕES BOOLEANASOBTENÇÃO DE EXPRESSÕES BOOLEANAS
Compartilhar