Aulas arquitetura de computadores parte 1

3.155 visualizações

Publicada em

0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
3.155
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
109
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aulas arquitetura de computadores parte 1

  1. 1. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio Arquitetura de Computadores Prof.: Ricardo Gonçalves de AguiarPlano de Ensino • Estado da arte do computador, definições e aplicações • Conceitos de sistemas de numeração, conversão de bases, operações com binário • Portas lógicas • Memórias e armazenamento • Arquitetura de processadores, chip sets • Bios • Linguagem de alto nível • DMA • Periféricos • Processamento paralelo • Processamento distribuído • Lógica aplicada à programaçãoObjetivos Apresentar a arquitetura computacional com conhecimentos sobre a lógicabinária, critérios de projetos, funcionalidades e aplicações.BibliografiaBÁSICA:STALLINGS, Willian. Arquitetura e Organização de Computadores, 5ª Edição.Prentice Hall. São Paulo, 2006.TANENBAUM. Andrew S. Organização Estruturada de computadores. Edição 5ª.LTC. Rio de Janeiro, 2007.MACHADO, Francis B., MAIA, Luiz P. Arquitetura de Sistemas Operacionais.Edição 4ª. LTC. Rio de Janeiro, 2007.BIBLIOGRAFIA COMPLEMENTAR:WEBER, Raul Fernando. Arquitetura de computadores pessoais, Edição 2ª. SagraLuzzatto. Porto Alegre, 2003.WEBER, Raul Fernando. Fundamentos de Arquitetura de Computadores, Edição3ª, Porto Alegre, Sagra Luzzatto, 2004. ~1~
  2. 2. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioForma de AvaliaçãoSão três notas: Avaliação 1 (AV1), avaliação 2 (AV2) e avaliação 3 (AV3). A médiafinal é obtida através da média das duas maiores notas. Para que o aluno sejaaprovado, a média deve ser maior ou igual a 6,0Os componentes básicos de um computador A função de um computador é processar dados. Para processá-los épreciso movê-los até a unidade central de processamento, armazenar resultadosintermediários e finais em locais onde eles possam ser encontrados mais tarde econtrolar estas funções de transporte, armazenamento e processamento.Portanto, tudo que um computador faz pode ser classificado como uma destasquatro ações elementares: processar, armazenar, mover dados, ou controlar estas atividades Por mais complexas que pareçam as ações executadas por umcomputador, elas nada mais são que combinações destas quatro funções básicas. A função de mover dados é executada através do fluxo da corrente elétricaao longo de condutores que ligam os pontos de origem e destino e não dependede elementos ativos. As funções de controle são igualmente executadas através de pulsos decorrente, ou "sinais", propagados em condutores elétricos (estes pulsos sãointerpretados pelos componentes ativos, fazendo-os atuar ou não dependendo dapresença ou ausência dos sinais). Portanto estas duas funções, transporte econtrole, para serem executadas só dependem da existência de condutoreselétricos (fios, cabos, filetes metálicos nas placas de circuito impresso, etc.) e nãoexigem o concurso de componentes ativos. Restam as funções de armazenar eprocessar dados. Processar dados consiste basicamente em tomar decisões lógicas do tipo"faça isso em função daquilo". Por exemplo: "compare dois valores e tome umcurso de ação se o primeiro for maior, um curso diferente se ambos forem iguaisou ainda um terceiro curso se o primeiro for menor". Todo e qualquerprocessamento de dados, por mais complexo que seja, nada mais é que umacombinação de ações elementares baseadas neste tipo de tomada de decisõessimples. O circuito eletrônico elementar capaz de tomar decisões é denominado"porta lógica". Armazenar dados consiste em manter um dado em um certo localenquanto ele for necessário, de tal forma que ele possa ser recuperado quando osistema precisar dele. O circuito lógico elementar capaz de armazenar um dado ~2~
  3. 3. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio(expresso sob a forma do elemento mínimo de informação, o "bit", que podeexprimir apenas os valores numéricos "um" ou "zero" ou ainda os valores lógicosequivalentes, "verdadeiro" ou "falso") é a célula de memória – um dispositivocapaz de assumir um dentre dois estados possíveis e manter-se nesse estado atéque alguma ação externa venha a alterá-lo (dispositivo "bi-estável"). Tendo isto em vista, pode-se concluir que todo computador digital, por maiscomplexo que seja, pode ser concebido como uma combinação de um númerofinito de apenas dois dispositivos básicos, portas lógicas e células de memória,interligados por condutores elétricos. Resta ver como é possível implementar estes dispositivos usandocomponentes eletrônicos.Sistema binário Os computadores utilizam internamente o sistema binário (sistemanumérico posicional de base 2). A característica mais notável deste sistemanumérico é a utilização exclusiva dos algarismos "1" e "0", os chamados "dígitosbinários". Através do sistema binário, todas as quantidades e todos os valores dequaisquer variáveis poderão ser expressos usando uma combinação de umdeterminado número de dígitos binários, ou seja, usando apenas os algarismos "0"e "1". O uso do sistema binário pelos computadores decorre do fato dessasmáquinas se basearem em circuitos elétricos ou eletrônicos. Isto porque a grandemaioria dos componentes de circuitos elétricos podem assumir apenas um dentredois estados.Por exemplo: interruptores podem estar fechados ou abertos,capacitores carregados ou descarregados, lâmpadas acesas ouapagadas, circuitos energizados ou desenergizados e assim pordiante. O uso exclusivo dos algarismos "1" e "0" nos circuitos internos doscomputadores pode levar a crer que eles apenas servem para resolver problemasmuito específicos, cujas grandezas de entrada e saída assumam apenas doisvalores e que portanto sua utilização há de ser extremamente limitada. Estaconclusão é falsa. Na verdade, toda e qualquer grandeza do mundo real pode serrepresentada no sistema binário. Para que um dado ou informação possa ser processado por umcomputador, basta que ele seja codificado de tal forma que possa ser "modelado"através de um conjunto de números. Estes números serão então expressos nosistema binário e processados pelo computador. O processo de conversão das grandezas do mundo real em quantidadesexpressas no sistema binário chama-se "digitalização" (por exemplo: o dispositivo ~3~
  4. 4. Prof.: Ricardo Gonçalves de Aguiar Material de Apoiodenominado "escaner" nada mais é que um digitalizador de imagens, enquanto oprocesso de gravação de um CD de áudio é a digitalização de sons). Mas a digitalização é apenas o passo inicial: transformar as grandezas domundo real em números e exprimi-las no sistema binário. O passo seguinte éescolher uma ferramenta para trabalhar com os valores assim expressos.Esta ferramenta é a lógica digital.Lógica digital Todo o raciocínio lógico é baseado na tomada de uma decisão a partir documprimento de determinadas condições. Inicialmente tem-se os dados deentrada e uma condição (ou uma combinação de condições). Aplica-se a condiçãoaos dados de entrada para decidir quais são os dados de saída. A lógica digital não é diferente. Mas apresenta uma peculiaridade: trabalhaapenas com variáveis cujos valores alternam exclusivamente entre "um" e "zero","sim" e "não", "verdadeiro" e "falso" ou quaisquer outras grandezas cujo valorpossa assumir apenas um dentre dois estados possíveis (sistema binário). Exemplo: Para entender a lógica digital usemos como exemploo estatuto do Clube do Bolinha. A condição é: "Menina não entra". O dado de entrada é a situação do pretendente em relação àcondição de ser menina. O dado de saída, ou seja, a decisão sobre ofato do pretendente poder ou não entrar no Clube, é obtidomediante a aplicação da condição ao dado de entrada. É menina?Sim ou não? A decisão é "sim" se o pretendente "não" for menina. E"não" se, "sim", for menina. Este é um exemplo da mais simples dascondições, na qual há apenas um dado de entrada e o dado desaída é exatamente o oposto dele: um "sim" gera um "não" e um"não" gera um "sim". Esta condição é representada pela porta lógicaNOT (o advérbio "não" em inglês). Agora vamos dar um passo adiante. Imaginemos que o Sr.Bolinha decidiu dar uma festa para os membros do clube, porémresolveu cobrar o ingresso para cobrir os custos do evento. Portanto,para entrar, além de ser membro, terá que comprar um ingresso. Numa situação como essa a condição é mais complexa. Osdados de entrada agora são dois: a situação do pretendente emrelação ao fato de ser membro do clube (sim ou não) e a posse doingresso (sim ou não). Para que o dado de saída seja "sim", ou seja, ~4~
  5. 5. Prof.: Ricardo Gonçalves de Aguiar Material de Apoiopara que o pretendente ingresse na festa, ele tem que cumprirAMBAS as condições. Não basta ser membro do clube ("sim" para aprimeira condição) se não possui o ingresso ("não" para a segunda).Nem basta possuir o ingresso ("sim" para a segunda condição) se nãoé membro ("não" para a primeira). A decisão é tomada submetendoos dados de entrada à condição. Para uma decisão "sim" quegarante a entrada na festa é preciso, ao mesmo tempo, "sim", sermembro do clube e, "sim", dispor do ingresso. Ou seja, a saídasomente será "sim" se ambos os dados de entrada forem "sim". Estacondição é representada pela porta lógica AND (a conjunçãoaditiva "e" em inglês). Tomemos ainda outro exemplo. Imaginemos que os membrosdo clube tenham levado ao Presidente um reclamo: sendo elesmembros, e sendo a festa no clube, por que razão tinham que pagaringresso? O Sr. Bolinha considerou o pleito justo, mas alegou queainda assim precisaria de recursos para cobrir os custos. Decidiu-seentão abrir o evento à toda a comunidade e não apenas aosmembros do clube, cobrando o ingresso apenas dos que não fossemmembros. Então, para entrar, seria necessário ou ser membro doclube ou comprar um ingresso. Cumprida qualquer uma das duascondições, seja qual for, o pretendente poderia entrar,independentemente da outra. Examinemos a primeira condição.Comprou ingresso? Sim ou não? Se "sim", a primeira condição estácumprida e a decisão é "sim", o pretendente pode entrar. Masimaginemos que, "não", ele não comprou o ingresso. Examinemosentão a segunda condição. É membro do clube? Sim ou não? Se"sim", a segunda condição foi cumprida e "sim", ele pode entrarmesmo sem ingresso. Em um caso como este, para que o dado desaída seja "sim" basta que um dos dados de entrada seja "sim". Estacondição é representada pela porta lógica OR (a conjunçãoalternativa "ou" em inglês). Em um computador, todas as operações são feitas a partir de tomadas dedecisões que, por mais complexas que sejam, nada mais são que combinações ~5~
  6. 6. Prof.: Ricardo Gonçalves de Aguiar Material de Apoiodas três operações lógicas correspondentes às condições acima descritas: NOT,AND e OR. Para tomadas de decisões mais complexas, tudo o que é preciso écombinar estas operações. E para isto é necessário um conjunto de ferramentascapaz de manejar variáveis lógicas. Esse conjunto de ferramentas é a chamada"Álgebra Booleana". Veremos então como operar em binário e qual a importância da álgebrabooleana para um computador:Sistemas de numeração Para entendermos como funciona o sistema de numeração na base dois(sistema binário), temos que entender como funciona um sistema de numeraçãoem uma base geral. A necessidade de criação de números veio com a necessidade de contar,seja o número de animais, alimentos, ou coisas do tipo. Acredita-se que as bases 5, 10 e 20 foram as primeiras a serem criadas porquestões naturais como cinco dedos em cada mão, dez dedos nas mãos e vintededos nas mãos e nos pés. Sistema Quinário (Base 5): Tribos Africanas usavam o sistema quinário, provavelmente por possuirmos5 dedos em cada mão. Sistema vigesimal (Base 20): Usado pelos Maias e Astecas e pelos Celtas.Sabe-se também que no idioma francês, 80 é "quatrevingt" (quatro vezes vinte) eno sistema monetário francês, 1 franco = 20 sous. Sistema duo decimal (Base 12): Tem origem no fato de que os 4 dedos da mão (com exceção do polegar)têm 12 falanges.Aplicações: • Objetos contados em dúzias: ovos, talheres, pratos, canetas, lápis • O ano tem 12 meses • O dia tem 24 (2 x 12) horas • 12 dúzias = 1 grosa • 12 grosas = 1 massa • 1 pé = 12 polegadas (12 x 2,54 cm = 30,48 cm) ~6~
  7. 7. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio Sistema Sexagesimal (Base 60)Aplicações: • subdivisão da hora em 60 minutos; subdivisão do minuto em 60 segundos. • subdivisão de grau em 60 minutos; subdivisão do minuto em 60 segundos. segund Sistema Posicional: Todo sistema posicional utiliza a posição do número para indicar um valorcom relação à base utilizada.Exemplo: Na base 60 4 : 23 : 59Na base 10: 285Comparando base 10 com base 2 2: Base 10 Base 2 Representação da base 2 0 0 0 ‫2 ݔ‬଴ ൌ 0 1 1 1 ‫2 ݔ‬଴ ൌ 1 2 10 1 ‫2 ݔ‬ଵ ൅ 0 ‫2 ݔ‬଴ ൌ 2 3 11 1 ‫2 ݔ‬ଵ ൅ 1 ‫2 ݔ‬଴ ൌ 3 4 100 1 ‫2 ݔ‬ଶ ൅ 0 ‫2 ݔ‬ଵ ൅ 0 ‫2 ݔ‬଴ ൌ 4 5 101 1 ‫2 ݔ‬ଶ ൅ 0 ‫2 ݔ‬ଵ ൅ 1 ‫2 ݔ‬଴ ൌ 5 ~7~
  8. 8. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioSistemas usados em Informática: Sistema Binário (base2): Sistema Octal (base8): Sistema Hexadecimal (base16): ~8~
  9. 9. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio Relação entre as bases: Binária Octal Decimal Hexadecimal 00000000 0 0 0 00000001 1 1 1 00000010 2 2 2 00000011 3 3 3 00000100 4 4 4 00000101 5 5 5 00000110 6 6 6 00000111 7 7 7 00001000 10 8 8 00001001 11 9 9 00001010 12 10 A 00001011 13 11 B 00001100 14 12 C 00001101 15 13 D 00001110 16 14 E 00001111 17 15 F 00010000 20 16 10 00010001 21 17 11 00010010 22 18 12 00010011 23 19 13 00010100 24 20 14Representação e Armazenamento: Bit: Ficou definido que a menor unidade de informação, no computador, é o bit(dígito binário), e quem inventou a palavra foi um engenheiro belga, ClaudeShannon, em sua obra Teoria Matemática da Computação, de 1948. Cadacaractere do computador compreende um conjunto de 8 bits que chamamos byte. No entanto, foi necessária a criação de tabelas para que todos oscomputadores “conversassem” entre si. Chamamos essa tabela de ASCII(American Standard Character for Information Interchange) onde os computadoresrepresentam todos os caracteres. ~9~
  10. 10. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioMenor Valor: (00000000)2 = (0)10Maior Valor: +(11111111)2 = (255)10 Tabela ASCCI: Decimal Binário Hex Referência 0 00000000 00 Null - NUL 1 00000001 01 Start of Heading - SOH 2 00000010 02 Start of Text - STX ... ... ... ... 65 01000001 41 A 66 01000010 42 B 67 01000011 43 C ... ... ... ... 97 01100001 61 a 98 01100010 62 b 99 01100011 63 c ... ... ... ... 253 11111101 FD ² 254 11111110 FE ■ 255 11111111 FF byte: Embora os termos bit (unidade de informação) e byte (um conjunto de 8bits) dêem a impressão de ter nascido no mesmo dia, o bit é sete anos mais velhoque o byte. Foi a IBM quem inventou o nome byte, em 1956, mas não há registrosobre o inventor, nem sobre sua inspiração. Há quem diga que byte significabinary term e há quem diga que byte significa uma brincadeira com as palavras bit(pedacinho) e bite (morder). ~ 10 ~
  11. 11. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio Kilobyte - 210: A palavra kilo vem do grego khilioi, que significa mil, logo um kilobyte temmil bytes, certo? Infelizmente, a informática é simples, mas nem tanto. Um kilobytetem 1024 bytes. Porque a base de tudo é o número 2, e a capacidade deprocessamento evolui em múltiplos, sempre dobrando em relação à medidaanterior: 4K, 8K, 16K, 32K, 64K, 128K, 256K, 512K. O pulo seguinte, para 1024,dá o valor mais próximo de mil. Portanto, esse kilo de bytes aí já vem com umchorinho... Mas, para quem se liga em matemática, a explicação é que o sistemausa como base o logaritmo 2: o número 1024 corresponde a 2 elevado à décimapotência. Megabyte – 220: Tamanho de memória correspondente a 1.048.576 bytes, ou 2 elevado àpotência 20. O termo mega teve origem no termo grego megas, grande. Daíderivou, por exemplo, megalomania, a chamada mania de grandeza. Gigabyte – 230: Vulgo giga, equivale a 1.073.741.824 bytes ou o número 2 elevado àpotência 30. Uma página normal de um livro tem cerca de 3 000 caracteres, logoum gigabyte seria equivalente a mais de 6 000 livros com 500 páginas cada um. Apalavra giga é grega e significa gigante. Terabyte - 240: Pense um pouquinho: que nome você daria a uma medida 1.024 vezesmaior que um gigante? Monstruosa, talvez? Por isso mesmo, a palavra tera vemdo grego teras, monstro. Então, só para a gente não se perder, um terabyte são1.024 gigabytes, ou 1.073.741.824 quilobytes, ou 1.099.511.627.776 bytes 8,192bilhões de zerinhos e unzinhos, os bits. Ou seja, 2 elevado a potência de 40. Eisso vai longe. As próximas palavras que muito em breve vão aparecer nosanúncios de qualquer jornal de domingo, anunciando uma liquidação de micros noarmazém da esquina, são o petabyte, o exabyte, o zettabyte e o yottabyte. Velocidade de ciclo do processador: Quem tem, por exemplo, um daqueles relógios de parede antigos, compêndulos, notará que o pêndulo faz um vai-e-vem a cada 2 segundos. O relógio,portanto, oscila a velocidade de 0,5 Hz (1 ciclo a cada 2 segundos ou 0,5 ciclo porsegundo), ou 0,0000005 megahertz. Hoje em dia, já temos processador com 3gigahertz (GHz), ou seja, que funcionam a 3 bilhões de ciclos por segundo. ~ 11 ~
  12. 12. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioExercícios: 1. Basicamente, o que faz um computado? 2. Basicamente do que é composto um computador? 3. Explique a importância do sistema binário para uma máquina digital 4. Como um computador processa dados? Explique. 5. Como funciona um sistema de numeração posicional? 6. Em um sistema posicional vigesimal, quantos símbolos serão utilizados para representar os números? Dentre esses símbolos quanto vale o símbolo mais alto valor? 7. Explique como um caractere é representado no computador. E um número inteiro? 8. No que é baseada a medida de armazenamento de dados em um computador? Explique. 9. Como é medida a velocidade de um computador? Explique.Conversão entre sistemas de numeração Conversão de Binário para Decimal O sistema binário, por ter apenas dois algarismos, conseguimos convertê-lopara decimal usando a base (20, 21, 22, ..., 2n). Lembrando que qualquer númeroelevado a 0 resulta 1 (50 = 1; 2376790 = 1), como podemos converter o númerobinário 101101 em decimal?Exatamente da mesma forma que o decimal utilizando a base 2. veja: ~ 12 ~
  13. 13. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio EXERCÍCIOS: Converta para decimal a) 10011011(2) = ?(10) b) 10001101(2) = ?(10) c) 10110110(2) = ?(10) d) 010011(2) = ?(10) e) 11000000(2) = ?(10) f) 10101001(2) = ?(10) g) 11111111(2) = ?(10) h) 010101(2) = ?(10) Conversão de decimal para binário Para converter um número de decimal para binário, uma das formas édividir o número sucessivamente por 2. O número binário corresponderá ao últimoresultado da divisão e todos os restos, como veremos no exemplo: ~ 13 ~
  14. 14. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioExemplo2: EXERCÍCIOS: Converta para binário a) 135(10) = ?(2) b) 72(10) = ?(2) c) 37(10) = ?(2) d) 49(10) = ?(2) e) 46(10) = ?(2) f) 186(10) = ?(2) Conversão de Octal para Decimal Como podemos converter o número octal 23 em decimal? 23(8) = ?(10) Exatamente da mesma forma que convertemos um binário para decimal, noentanto utilizando a base 8. veja: ~ 14 ~
  15. 15. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio EXERCÍCIOS: Converta para decimal a) 127(8) = ?(10) b) 202(8) = ?(10) c) 165(8) = ?(10) d) 2(8) = ?(10) e) 51(8) = ?(10) f) 45(8) = ?(10) g) 353(8) = ?(10) h) 010101(8) = ?(10) Conversão de Decimal para Octal Para converter um número de decimal para octal, uma das formas é dividiro número sucessivamente por 8. O número octal corresponderá ao últimoresultado da divisão e todos os restos, como veremos no exemplo:Exemplo 2: ~ 15 ~
  16. 16. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio Converta para octal a) 143(10) = ?(8) b) 192(10) = ?(8) c) 54(10) = ?(8) d) 56(10) = ?(8) e) 374(10) = ?(8) f) 37(10) = ?(8) g) 218(10) = ?(8) h) 134(10) = ?(8) Conversão de Hexadecimal para Decimal Como podemos converter o número hexadecimal 2DA emdecimal?2DA(16) = ?(10) Exatamente da mesma forma que convertemos um binário,ou um octal para decimal, no entanto utilizando a base 16. veja: EXERCÍCIOS: Converta para decimal a) 8A7(16) = ?(10) b) AF1(16) = ?(10) c) 8B5(16) = ?(10) d) FB(16) = ?(10) e) 1C0A(16) = ?(10) f) 3FF(16) = ?(10) g) 1BC4(16) = ?(10) h) F2A(16) = ?(10) ~ 16 ~
  17. 17. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio Conversão de Decimal para Hexadecimal Para converter um número de decimal para hexadecimal, uma das formas édividir o número sucessivamente por 16. O número hexadecimal corresponderá aoúltimo resultado da divisão e todos os restos, como veremos no exemplo:Exemplo 2: ~ 17 ~
  18. 18. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio EXERCÍCIOS: Converta para hexadecimal a) 1798(10) = ?(16) b) 645(10) = ?(16) c) 54(10) = ?(16) d) 328(10) = ?(16) e) 618(10) = ?(16) f) 37(10) = ?(16) g) 174(10) = ?(16) h) 194(10) = ?(16) Conversão de Binário para Octal EXERCÍCIOS: Converta para Octal a) 10011011(2) = ?(8) b) 010011(2) = ?(8) c) 1011110110(2) = ?(8) d) 1010101001(2) = ?(8) e) 1111111111(2) = ?(8) f) 01011(2) = ?(8) g) 1001101(2) = ?(8) h) 11001(2) = ?(8) Conversão de Binário para Hexadecimal ~ 18 ~
  19. 19. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio EXERCÍCIOS: Converta para Hexadecimal a) 10011011(2) = ?(16) b) 010011(2) = ?(16) c) 1011110110(2) = ?(16) d) 1010101001(2) = ?(16) e) 1111111111(2) = ?(16) f) 01011(2) = ?(16) g) 1001101(2) = ?(16) h) 11001(2) = ?(16) Conversão de Octal para Binário EXERCÍCIOS: Converta para Binário a) 4571(8) = ?(2) b) 701(8) = ?(2) c) 512(8) = ?(2) d) 202(8) = ?(2) e) 453(8) = ?(2) f) 645(8) = ?(2) g) 4034(8) = ?(2) h) 10101(8) = ?(2) ~ 19 ~
  20. 20. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio Conversão de Hexadecimal para Binário EXERCÍCIOS: Converta para Binário a) 8A9(16) = ?(2) b) A051(16) = ?(2) c) 3B5(16) = ?(2) d) FA2(16) = ?(2) e) 9A23(16) = ?(2) f) AF5(16) = ?(2) g) 1B2F4(16) = ?(2) h) A23(16) = ?(2) Resumo das transformações entre bases: ~ 20 ~
  21. 21. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio EXERCÍCIOS: 1. Se você tivesse que converter um número octal em hexadecimal, como você faria? Descreva. Há outra forma de fazer a conversão? Qual a mais fácil na sua opinião? 2. Dado o No “010”, diga: Em qual base o No está representado? Explique o por quê? 3. Dado o número octal 36724: Quanto vale o número 7?Operações Aritméticas As operações aritméticas em sistemas digitais são geralmente feitas embinário. Sabe-se que projetar circuitos lógicos para aritmética binária é bem maisfácil do que para aritmética decimal. A aritmética binária é realizada de forma semelhante à aritmética decimal.• Adição (operação decimal) – A adição no sistema binário é realizada exatamente da mesma forma que uma adição no sistema decimal. – Vamos realizar uma adição na base 10 e posteriormente outra na base 2. – Seja a operação: – Somamos por colunas à partir da direita, temos 8+5=13, como a soma excedeu o maior dígito disponível, usamos a regra do transporte para a próxima coluna. – Assim, dizemos que dá 3 e “vai um”. – Este transporte “vai um” é computado na soma da próxima coluna, que passa a ser 8+1+1=10, novamente usamos o transporte e dizemos que dá 0 e “vai um” abrindo uma nova coluna que é 0+0+1=1. – Obtemos desta forma o resultado 103.• Adição (operação binária) A única operação aritmética que o computador mais complexo ou amáquina de calcular mais simples sabem resolver é a adição. Qualquer outraoperação matemática é resolvida à custa da adição: • Para subtrair adiciona-se a soma do simétrico • Para multiplicar fazem-se adições sucessivas • Para as restantes operações utilizam-se outros algoritmos baseados na adição ~ 21 ~
  22. 22. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio Uma operação de adição no sistema binário reduz-se à resolução de cinco reduz se simples operações: Exemplo: Outros exemplos: ~ 22 ~
  23. 23. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio EXERCÍCIOS: Faça as operações: a) 10101101 + 10101 b) 10010101+101101 c) 10101110+10111010 d) 11001101+10101010• Subtração (operação decimal) A subtração no sistema binário é realizada exatamente da mesma formaque uma subtração no sistema decimal. – Subtraímos por colunas à partir da direita, temos 3 – 6 = ?, como não dá para tirar 6 de 3, “pedimos emprestado” para próxima casa a esquerda. Tiramos 1 do 2 e somamos 10 ao 3. Assim 13 – 6 = 7 – Somamos 10 ao 3 pois esta é a base em que estamos trabalhando e cada ponto na casa a esquerda vale 10 na direita. – Na próxima conta temos 1 – 7 = ? (não é mais dois pois emprestou 1 ao 3). Como não dá p tirar 7 de 1 “pedimos emprestado” a próxima casa a esquerda. Subtraímos 1 do 7 e somamos 10 ao 1. Assim 11 – 7 = 4 – A última etapa é a do 6 – 1 = 5 – Obtemos desta forma o resultado 547. Uma operação de subtração no sistema binário reduz-se à resolução dequatro simples operações:Exemplos: ~ 23 ~
  24. 24. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio EXERCÍCIOS: Faça as operações: a) 10101101 – 1010 b) 1110011 – 01010010 c) 11100011 – 00110101 d) 01101100 – 01001100TÉCNICA COMPLEMENTO DE DOIS A implementação do algoritmo da subtração em computadores é complexa,requerendo vários testes, assim, em computadores a subtração em binário é feitapor um artifício. O método utilizado é o "Método do Complemento de dois". O Método Oscomputadores encontram o complemento de dois de um número através de umalgoritmo que pode ser assim descrito abaixo: • inverta subtraendo na subtração (todo 1 vira zero, todo zero vira um) • some 1 ao número em complemento • some as parcelas (na subtração, some o minuendo ao subtraendo) • se a soma em complemento acarretar "vai-um" ao resultado, ignore o "vai um" transporte final)Como exemplo, vamos usar o algoritmo acima na subtração 1101 - 1100 = 0001.mantém o minuendo 1101inverte o subtraendo 0011soma 1 ao subtraendo 0100soma o minuendo com o complemento-2 do subtraendo complemento 10001 0001ignora o "vai-um" 0001 Respostamantém o minuendo 101110inverte o subtraendo 111010soma 1 ao subtraendo 111011soma o minuendo com o complemento-2 do subtraendo complemento 1101001 101001ignora o "vai-um" 101001Resposta 101001 ~ 24 ~
  25. 25. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio EXERCÍCIOS: Faça as operações utilizando a algoritmo do complemento de 2: a) 10101101 – 1010 b) 1110011 – 01010010 c) 11100011 – 00110101 d) 01101100 – 01001100Funções e Portas Lógicas Em 1854 o matemático inglês George Boole apresentou um sistemamatemático de análise lógica conhecido como álgebra de Boole. Somente em 1938, um engenheiro americano utilizou as teorias da álgebrade Boole para a solução de problemas de circuitos de telefonia com relés, tendopublicado um artigo que praticamente introduziu na área tecnológica o campo daeletrônica digital. Os sistemas digitais são formados por circuitos lógicos denominados deportas lógicas que, utilizados de forma conveniente, podem implementar todas asexpressões geradas pela álgebra de Boole. Existem três portas básicas (E, OU e NÃO) que podem ser conectadas devárias maneiras, formando sistemas que vão de simples relógios digitais aoscomputadores de grande porte.Função “AND” (E). A função AND é aquela que executa a multiplicação de duas ou maisvariáveis booleanas. Sua representação algébrica para duas variáveis é ܵ ൌ ‫, ܤ .ܣ‬onde se lê: ܵ ൌ ‫.ܤ ݀݊ܽ ܣ‬ Para compreender a função AND da álgebra Booleana, deve-se analisar ocircuito da Figura abaixo, para o qual se adota as seguintes convenções: • ܿℎܽ‫ ܽݐݎܾ݁ܽ ݁ݒ‬ൌ 0, • ܿℎܽ‫݂ܿ݁ ݁ݒ‬ℎܽ݀ܽ ൌ 1, • ݈â݉‫ ܽ݀ܽ݃ܽ݌ܽ ܽ݀ܽ݌‬ൌ 0 e • ݈â݉‫ ܽݏ݁ܿܽ ܽ݀ܽ݌‬ൌ 1. A análise da Figura anterior revela que a lâmpada somente acenderá seambas as chaves estiverem fechadas e, seguindo a convenção, tem-se: ‫ ܣ ܪܥ‬ൌ 1,‫ ܤ ܪܥ‬ൌ 1, resulta em ܵ ൌ 1. Pode-se, desta forma, escrever todas as possíveis combinações deoperação das chaves na chamada Tabela da Verdade, que é definida como ummapa onde se depositam todas as possíveis situações com seus respectivos ~ 25 ~
  26. 26. Prof.: Ricardo Gonçalves de Aguiar Material de Apoioresultados. O número de combinações possíveis é igual a 2ே , onde ܰ é o númerode variáveis de entrada. Tabela Verdade da função AND A B S 0 0 0 0 1 0 1 0 0 1 1 1 A porta lógica AND é um circuito que executa a função AND da álgebrade Boole, sendo representada, na prática, através do símbolo visto na Figuraabaixo:“A saída da porta E será 1, somente se todas as entradas A e B forem 1”.Função “OR” (OU) A função OR é aquela que executa a soma de duas ou mais variáveisbooleanas. Sua representação algébrica para duas variáveis é ܵ ൌ ‫ ܣ‬൅ ‫ , ܤ‬onde selê: ܵ ൌ ‫.ܤ ݎ݋ ܣ‬ Para compreender a função OR da álgebra Booleana, deve-se analisar ocircuito da Figura abaixo, para o qual se adota as seguintes convenções: • ܿℎܽ‫ ܽݐݎܾ݁ܽ ݁ݒ‬ൌ 0, • ܿℎܽ‫݂ܿ݁ ݁ݒ‬ℎܽ݀ܽ ൌ 1, • ݈â݉‫ ܽ݀ܽ݃ܽ݌ܽ ܽ݀ܽ݌‬ൌ 0 e • ݈â݉‫ ܽݏ݁ܿܽ ܽ݀ܽ݌‬ൌ 1. O circuito anterior mostra que a lâmpada acende quando qualquer uma daschaves estiver fechada e permanece apagada se ambas estiverem abertas, ouseja, ‫ ܣ ܪܥ‬ൌ 0, ‫ ܤ ܪܥ‬ൌ 0, resulta ݁݉ ܵ ൌ 0. ~ 26 ~
  27. 27. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio A Fig. abaixo ilustra a porta lógica que executa a função OR da álgebra deBoole, juntamente com a sua tabela da verdade. A B S 0 0 0 0 1 1 1 0 1 1 1 1“A saída de uma porta OU será 1 se uma ou mais entradas forem 1”.Função “NOT” (NÃO) A função NOT inverte ou complementa o estado da variável de entrada, ouseja, se a variável estiver em 0, a saída vai para 1, e se estiver em 1 a saída vaipara 0. É representada algebricamente da seguinte forma: ܵ ൌ ‫ ’ܣ‬ou ‫ܣ‬ҧ, onde selê: NOT A. A análise do circuito da Fig. abaixo ajuda a compreender melhor a funçãoNOT da álgebra Booleana. Será utilizada a mesma convenção dos casosanteriores. Observando o circuito da Figura anterior, pode-se concluir que a lâmpadaestará acesa somente se a chave estiver aberta (‫ ܣ ܪܥ‬ൌ 0, ܵ ൌ 1), quando achave fecha, a corrente desvia por ela e a Lâmpada apaga (‫ ܣ ܪܥ‬ൌ 1, ܵ ൌ 0). O inversor é o bloco lógico que executa a função NOT. Sua representaçãosimbólica é vista na Figura abaixo, juntamente com sua tabela da verdade. A S 0 1 1 0“A saída de uma porta NOT assume o nível lógico 1 somente quando sua entradaé 0 e vice-versa”. ~ 27 ~
  28. 28. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioFunção “NAND” (NÃO E) Esta função é uma composição das funções AND e NOT, ou seja, é afunção AND invertida. Sua representação algébrica é ܵ ൌ (‫ ,)ܤ .ܣ‬onde o traço തതതതതതതതindica que ocorrerá uma inversão do produto booleano ‫.ܤ .ܣ‬ O circuito da Figura abaixo esclarece o comportamento da função NAND.Observa-se que a lâmpada apaga somente quando ambas as chaves sãofechadas, ou seja, ‫ ܣ ܪܥ‬ൌ 1, ‫ ܤ ܪܥ‬ൌ 1, implica em ܵ ൌ 0. A Figura abaixo ilustra o circuito que executa a função NAND da álgebra deBoole, juntamente com sua tabela da verdade. A B S 0 0 1 0 1 1 1 0 1 1 1 0“Esta função é o inverso da função E, ou seja, a saída será 0 somente quandotodas as entradas forem 1”.Função “NOR” (NÃO OU) Analogamente a função NOR é a composição da função OR com a funçãoNOT, ou seja, é a função OR invertida. É representada algebricamente daseguinte forma: ܵ ൌ (‫ ܣ‬൅ ‫ ,)ܤ‬onde o traço indica que ocorrerá uma inversão da തതതതതതതതതതsoma booleana ‫ ܣ‬൅ ‫. ܤ‬ ~ 28 ~
  29. 29. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio Para melhor compreender a função NOR da álgebra de Boole, pode-seanalisar o circuito da Figura abaixo, onde se observa que a lâmpada fica acesasomente quando as duas chaves estão abertas. Assim, ‫ ܣ ܪܥ‬ൌ 0, ‫ ܤܪܥ‬ൌ 0,resulta em ܵ ൌ 1. A Figura abaixo ilustra o circuito que executa a função NOR da álgebra deBoole, e sua tabela da verdade. A B S 0 0 1 0 1 0 1 0 0 1 1 0“Esta função é o inverso da função OU, ou seja, a saída será 0 se uma ou maisentradas forem 1”.Função “XOR” (OU EXCLUSIVO) Esta função apresenta saída com valor 1 quando as variáveis de entradaforem diferentes entre si. A notação algébrica que representa a função XOR é‫ , ܤ⨁ܣ‬onde se lê: ‫. ܤ ࡾࡻࢄ ܣ‬ Para entender melhor a função ࢄࡻࡾ, analisa-se o circuito da Figura abaixo.Na condição em que as chaves ‫ ܣ ܪܥ‬e ‫ ܤ ܪܥ‬estão abertas (e estão fechadas),não há caminho para a correntecircular e a lâmpada não acende. Alâmpada continua apagada quandoas chaves ‫ ܣ ܪܥ‬e ‫ ܤ ܪܥ‬estãofechadas, pois ‫ ܣ ܪܥ‬e ‫ ܤ ܪܥ‬estãoabertas interrompendo o fluxo decorrente. Portanto, pode-se concluirque este Bloco só terá nível 1 nasaída (lâmpada acesa), quando suasentradas forem diferentes. ~ 29 ~
  30. 30. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio A Figura abaixo ilustra o símbolo que representa, na prática, a função XORe sua tabela da verdade. A B S 0 0 0 0 1 1 1 0 1 1 1 0“Nesta função a saída será 1 se as entradas forem diferentes. A Figura a acima simplesmente simboliza o circuito lógico que executa afunção XOR. O circuito que executa a função é ilustrado abaixo:Observação importante: ao contrário dos outros blocos lógicos, cada circuitoXOR admite somente 2 variáveis de entrada.Função “XNOR” (COINCIDÊNCIA) Esta função, como seu próprio nome diz, apresenta saída com valor 1quando houver uma coincidência nos valores das variáveis de entrada. A notaçãoalgébrica que representa a função Coincidência é ‫ ܤ ⊙ ܣ‬ou തതതതതതതത, onde se lê: ‫ܤ⊕ܣ‬‫.ܤ ࡾࡻࡺࢄ ܣ‬ O circuito da Figura abaixo ajuda a compreender a operação da funçãoܱܴܺܰ. Quando as chaves ‫ ܣ ܪܥ‬e ‫ ܤ ܪܥ‬estão abertas (e estão fechadas) circulacorrente pela lâmpada e ela estará acesa. Quando ‫ ܣ ܪܥ‬ൌ 1 e ‫ ܤ ܪܥ‬ൌ 0 nãocircula corrente pela lâmpada, o que implica em lâmpada apagada. Na situaçãoinversa ‫ ܣ ܪܥ‬ൌ 0 e ‫ ܤ ܪܥ‬ൌ 1 ocorre a mesma coisa e a lâmpada não acenderá. A Figura abaixo ilustra o símbolo que representa, na prática, a funçãoCoincidência e sua tabela da verdade. ~ 30 ~
  31. 31. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio A B S 0 0 1 0 1 0 1 0 0 1 1 1 A Figura acima simplesmente representa simbolicamente o circuito lógicoque executa a função XNOR. Na verdade, o circuito capaz de realizar esta funçãoé ilustrado na Figura a abaixo:Observação importante: Assim como ocorre com o bloco lógico OUEXCLUSIVO, o circuito COINCIDÊNCIA é definido apenas para 2 variáveis deentrada. Composição de um circuito em função de portas lógicas. ~ 31 ~
  32. 32. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio Resumo: Tipo Símbolo (Norma ANSI) Função booleana Tabela verdade ENTRADA SAÍDA A B A AND B 0 0 0 AND 0 1 0 1 0 0 1 1 1 ENTRADA SAÍDA A B A OR B 0 0 0 OR 0 1 1 1 0 1 1 1 1 ENTRADA SAÍDA A NOT A NOT 0 1 1 0 ENTRADA SAÍDA A B A NAND B 0 0 1 NAND 0 1 1 1 0 1 1 1 0 ENTRADA SAÍDA A B A NOR B 0 0 1 NOR 0 1 0 1 0 0 1 1 0 ~ 32 ~
  33. 33. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio ENTRADA SAÍDA A B A XOR B 0 0 0 XOR 0 1 1 1 0 1 1 1 0 ENTRADA SAÍDA A B A XNOR B 0 0 1 XNOR 0 1 0 1 0 0 1 1 1Circuitos lógicos obtidos de expressões booleanas.Exemplo: (ܽ ൅ ܾ) ⊕ (ܿ · ݀)Exemplo: തതതതതതതതതതതതതതതതതതതത ݀)ሿ ሾ(ܽ . ܾ) ൅ (ܿҧ ൅ ത തതതതതതത തതതതതത തതതതതത ~ 33 ~
  34. 34. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio തതതതതതതതതതതതതതതതതതതതതതതതതത തതതതതതതതതതതതതതതതതതതതതതതതതതതതExemplo: {ሾ(ܽ . ܾ) ൅ (ܿҧ ൅ ݀)ሿ . ሾ(ܽ ⨁ ܾ) . (݀ . ܿҧ ൅ ܽ ሿ} ത തതതതതതതതതതത ത തതതതതതതതതതതതതത ത)Exercícios: Construir o circuito baseando-se na expressão booleana: തതതതതതതത a. (‫ )ݍ · ݌‬൅ ‫ݍ ⨁ ݌‬ ത ത b. ‫݌‬ҧ · തതതതതതതതതത · ‫݌‬ (‫)݌ ⨁ ݍ‬ തതതതതതതത c. (‫݌‬ҧ ⋅ ‫ ݍ ⨁ )ݎ‬൅ ‫ݎ‬ d. ‫ ݎ ⋅ ݌‬൅ ‫ݎ ⨁ ݍ‬ҧ ൅ ‫݌‬ തExpressões booleanas obtidas de circuitos lógicos.Exemplo: തതതതതതതതതതതതതതതതതതതതതതതതതത തതതതതതതതതതത ሾ(ܽ . ܾ) ൅ (ܿҧ ൅ ݀)ሿ ത ~ 34 ~
  35. 35. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioExercícios: Construir a expressão booleana baseando-se no circuito lógico:Tabelas da verdade obtidas de expressões booleanasPodemos obter a tabela verdade aplicando as funções booleanas na sua ordem: 1. Negação 2. E 3. OUExemplo: തതതതതതതതതതതതതതതതതതതതതതതതതത തതതതതതതതതതത ത ሾ(ܽ . ܾ) ൅ (ܾ ൅ ܽ)ሿ ത ത ത തതതതതതതതതതത ത (ܽ . ܾ) ൅ തതതതതതതതതതത ത തതതതതതതതതതതതതതതതതതതതതതതതതതܽ ܾ ܽ ത ܾ ܽ .ܾ ܾ ൅ ܽ ത (ܾ ൅ ܽ) ത (ܾ ൅ ܽ) ሾ(ܽ . ܾ) ൅ തതതതതതതതതതതሿ ത ത (ܾ ൅ ܽ)0 0 1 1 0 0 1 1 00 1 1 0 1 0 1 1 01 0 0 1 0 1 0 1 01 1 0 0 0 0 1 1 0Tabelas verdades obtidas de circuitos lógicos.O processo consiste em converter o circuito em expressão e construir a tabelaverdade. ~ 35 ~
  36. 36. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioCircuitos lógicos obtidos de tabelas da verdadeMinitermos e Maxitermos Dada uma tabela verdade podemos chegar na expressão do circuito pelo“e” dos minitermos ou pelo “ou”dos maxitermos: Um minitermo tem valor F igual a zero e um maxitermo tem valor F igual a 1 Minitermos: (‫ ܣ‬൅ ‫ ܤ‬൅ ‫ ܣ( .)ܥ‬൅ ‫ ܤ‬൅ ‫ ’ܣ( .)’ܥ‬൅ ‫ ܤ‬൅ ‫ )’ܥ‬ൌ ‫ܨ‬Maxitermos: ‫ ’ܥ .ܤ .’ܣ‬൅ ‫ ܥ .ܤ .’ܣ‬൅ ‫ ’ܥ .’ܤ .ܣ‬൅ ‫ ’ܥ .ܤ .ܣ‬൅ ‫ ܥ .ܤ .ܣ‬ൌ ‫ܨ‬ .Simplificação de expressões A partir de uma tabela, pode-se obter a sua função pelo do método de pode seLagrange (maxitermos e minitermos . Entretanto, esse método exige que se façam minitermos).simplificações na expressão obtida para se atingir a forma simplificada.Teremos que usar definições de álgebra booleana tais como: • ܽ·ܽൌ0 ത • ܽ൅ܽൌ1 ത • ܽ൅ܽ ൌܽ • ܽܿ ൅ ܽ݀ ൌ ܽ(ܿ ൅ ݀ ݀) • ܽ·1ൌܽ • ܽ·ܽൌܽ • ܽ൅ܽ ൌܽ • etc ~ 36 ~
  37. 37. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioComo exemplo, considere a tabela a seguir, e sua respectiva função:Mapa de Karnaugh O Mapa de Karnaugh é um diagrama utilizado na minimização de funçõesbooleanas de uma forma mais fácil. Chamamos esse diagrama de mapa, hajavista ser um mapeamento biunívoco a partir de uma tabela de verdade da função mapeamentoque está a ser analisada. Os diagramas foram originalmente criados por EdwardVeitch (1952) e aperfeiçoados pelo engenheiro de telecomunicações MauriceKarnaugh. Karnaugh utilizou os diagramas para simplificar circuitos utilizados em simplificartelefonia.Construindo o Mapa de Karnaugh para 02 variáveisConsidere a tabela verdade abaixo implementando a função AND: A B S 0 0 0 0 1 0 1 0 0 1 1 1 ~ 37 ~
  38. 38. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioConstruindo o Mapa de Karnaugh para 03 variáveis A B C S 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1Construindo o Mapa de Karnaugh para 04 variáveisA B C D S0 0 0 0 00 0 0 1 00 0 1 0 00 0 1 1 10 1 0 0 00 1 0 1 00 1 1 0 00 1 1 1 11 0 0 0 01 0 0 1 01 0 1 0 01 0 1 1 11 1 0 0 11 1 0 1 11 1 1 0 11 1 1 1 1 Metodologia de Leitura 1. Todo 1 deve ser lido pelo menos uma vez. 2. Os agrupamentos devem ter potência de 2 (1, 2, 4, 8, 16, ...). 3. O grupo deve ser o maior possível. 4. Deve-se ter o menor número possível de leituras. 5. A leitura corresponde às variáveis que se mantiverem constantes. ~ 38 ~
  39. 39. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioExemplo 1: A B S 0 0 0 0 1 0 1 0 1 1 1 1Exemplo 2: A B S 0 0 0 0 1 0 1 0 1 1 1 1Exemplo 3: A B C S 0 0 0 1 0 0 1 0 0 1 0 1 0 1 1 0 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1Lembrar que a tabela é tridimensional! ~ 39 ~
  40. 40. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio ~ 40 ~
  41. 41. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioAplicações de circuitos lógicos: Construção do circuito somador lógicos:Vamos lembrar a aritmética de ponto fixo, para a soma de dois bits. bits.0+0=00+1=11+0=11 + 1 = 0 e vai um. Se houver vai um na soma anterior, teremos: anterior,1 + 1 + 1 = 1 e vai um.CIRCUITO MEIO SOMADORO circuito meio-somador SOMA DOIS BITS (primeira soma: sem “vai um”). somador • Entrada - os dois bits a serem somados - A e B • Saída - a soma dos bits e o bit de carry out ("vai um") - S e CoComo descrevemos anteriormente, uma função lógica produz uma e apenas umasaída. Portanto, sendo duas as saídas, serão necessárias duas funçõesdiferentes, ou um circuito composto, podendo haver interseção de portas lógicas. interseção O processo de construção do circuito conta com: 1. Construir a tabela verdade 2. Forma algébrica 3. Simplificação (não há o que simplificar)1 - Construção da Tabela: A B S Co 2 - Forma Algébrica (Usando maxitermos): 0 0 0 0 0 1 1 0 ܵ ൌ ‫ܣ‬ҧ · ‫ ܤ‬൅ ‫ܤ · ܣ‬ ത 1 0 1 0 ‫ ݋ܥ‬ൌ ‫ܤ · ܣ‬ 1 1 0 13 – Construção do circuito: ~ 41 ~
  42. 42. Prof.: Ricardo Gonçalves de Aguiar Material de ApoioCIRCUITO SOMADOR COMPLETO (FULL ADDER)O circuito somador completo SOMA DOIS BITS e o bit de carry in (“vai um”) queveio da soma anterior. • Entrada - os dois bits a serem somados e o bit de carry in - A, B e Ci • Saída - a soma dos bits e o bit de carry out ("vai um") - S e Co1 - Construção da Tabela: A B Ci S Co 0 0 0 0 0 2 - Forma Algébrica Função S (Usando maxitermos): 0 0 1 1 0 0 1 0 1 0 ܵ ൌ ‫ܣ‬ҧ · ‫ ݅ܥ · ܤ‬൅ ‫ܣ‬ҧ · ‫ܥ · ܤ‬ଓ ൅ ‫ܥ · ܤ · ܣ‬ଓ ൅ ‫݅ܥ · ܤ · ܣ‬ ത ഥ ത ഥ Simplificação: 0 1 1 0 1 1 0 0 1 0 ܵ ൌ ‫ܣ( · ݅ܥ‬ҧ · ‫ ܤ‬൅ ‫ )ܤ · ܣ‬൅ ‫ܥ‬ଓ · (‫ܣ‬ҧ · ‫ ܤ‬൅ ‫) ܤ · ܣ‬ ത ഥ ത 1 0 1 0 1 തതതതതതതത ഥ ܵ ൌ ‫ ) ܤ ⨁ ܣ( · ݅ܥ‬൅ ‫ܥ‬ଓ · (‫)ܤ ⨁ ܣ‬ 1 1 0 0 1 ܵ ൌ ‫)ܤ ⨁ ܣ( ⨁ ݅ܥ‬ 1 1 1 1 1Forma Algébrica Função Co (Usando maxitermos):‫ ݋ܥ‬ൌ ‫ܣ‬ҧ · ‫ ݅ܥ · ܤ‬൅ ‫ ݅ܥ · ܤ · ܣ‬൅ ‫ܥ · ܤ · ܣ‬ଓ ൅ ‫݅ܥ · ܤ · ܣ‬ ത ഥSimplificação:‫ ݋ܥ‬ൌ ‫ܣ( · ݅ܥ‬ҧ · ‫ ܤ‬൅ ‫ ) ܤ · ܣ‬൅ ‫ ݅ܥ( · ܤ · ܣ‬൅ ‫ܥ‬ଓ) ത ഥ‫ ݋ܥ‬ൌ ‫ ) ܤ ⨁ ܣ( · ݅ܥ‬൅ ‫ܤ · ܣ‬3 – Construção do circuito: ~ 42 ~
  43. 43. Prof.: Ricardo Gonçalves de Aguiar Material de Apoio ~ 43 ~

×