SlideShare une entreprise Scribd logo
1  sur  103
Télécharger pour lire hors ligne
Guia de Estudo


 Arquitetura e
Organização de
Computadores


  2º Período


Unidade 1 a 3
SABE – Sistema Aberto de Educação

                      Av. Cel. José Alves, 256 - Vila Pinto
                           Varginha - MG - 37010-540
                  Tele: (35) 3219-5204 - Fax - (35) 3219-5223




        Instituição Credenciada pelo MEC – Portaria 4.385/05

              Centro Universitário do Sul de Minas - UNIS/MG
            Unidade de Gestão da Educação a Distância – GEaD

                              Mantida pela
        Fundação de Ensino e Pesquisa do Sul de Minas - FEPESMIG




                                Varginha/MG


                                                                   1

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
004.165
G633g. GOMES, José Eduardo Silva.
          Guia de Estudo - Arquitetura e Organização de
          Computadores - José Eduardo Silva Gomes.
          Varginha: GEaD-UNIS/MG, 2007.
              103p.
         1. Sistemas Digitais. 2. Microprocessadores.
    3. Programação. 4. Informática I. Título




                                                             2

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
REITOR
                           Prof. Ms. Stefano Barra Gazzola


                                      GESTOR
                           Prof. Ms. Tomás Dias Sant’ Ana


                                 Supervisor Técnico
                        Prof. Ms. Wanderson Gomes de Souza


                    Coord. do Núcleo de Recursos Tecnológicos
                       Profª. Simone de Paula Teodoro Moreira


                 Coord. do Núcleo de Desenvolvimento Pedagógico
                          Profª. Vera Lúcia Oliveira Pereira


                           Revisão ortográfica / gramatical
                       Profª. Maria José Dias Lopes Grandchamp


                                 Design/diagramação
                            Prof. César dos Santos Pereira


                         Equipe de Tecnologia Educacional
                       Profª. Débora Cristina Francisco Barbosa
                             Jacqueline Aparecida da Silva
                             Prof. Lázaro Eduardo da Silva



                                       Autor
                           JOSÉ EDUARDO SILVA GOMES
Técnico em Eletrônica (1984) pela ETEFMC, Santa Rita do Sapucaí – MG, Bacharel em
Administração de Empresas (1992) pela FACECA, Varginha – MG, Bacharel em Ciência da
Computação (2002) pelo UNIS, Varginha – MG, Pós-Graduação em Redes de
Computadores (2003) pelo UNIS e mestrando em Engenharia Elétrica pela UNIFEI
(Universidade Federal de Itajubá). Atua também como Supervisor Técnico do Departamento
de Engenharia da EPTV Sul de Minas, emissora de televisão afiliada a Rede Globo e é
professor das instituições UNIS e FACECA nos cursos de Sistemas de Informação, Ciência
da Computação, Engenharia de Produção.




                                                                                         3

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
TABELA DE ÍCONES
                 REALIZE. Determina a existência de atividade a ser realizada.
                 Este ícone indica que há um exercício, uma tarefa ou uma
                 prática para ser realizada. Fique atento a ele.

                 PESQUISE. Indica a exigência de pesquisa a ser realizada na
                 busca por mais informação.

                 PENSE. Indica que você deve refletir sobre o assunto
                 abordado para responder a um questionamento.

                 CONCLUSÃO. Todas as conclusões, sejam de idéias, partes
                 ou unidades do curso virão precedidas desse ícone.
                 IMPORTANTE. Aponta uma observação significativa. Pode
                 ser encarado como um sinal de alerta que o orienta para
                 prestar atenção à informação indicada.
                 HIPERLINK. Indica um link (ligação), seja ele para outra
                 página do módulo impresso ou endereço de Internet.
                 EXEMPLO. Esse ícone será usado sempre que houver
                 necessidade de exemplificar um caso, uma situação ou
                 conceito que está sendo descrito ou estudado.
                 SUGESTÃO DE LEITURA. Indica textos de referência
                 utilizados no curso e também faz sugestões para leitura
                 complementar.
                 APLICAÇÃO PROFISSIONAL. Indica uma aplicação prática
                 de uso profissional ligada ao que está sendo estudado.
                 CHECKLIST ou PROCEDIMENTO. Indica um conjunto de
                 ações para fins de verificação de uma rotina ou um
                 procedimento (passo a passo) para a realização de uma
                 tarefa.
                 SAIBA MAIS. Apresenta informações adicionais sobre o tema
                 abordado de forma a possibilitar a obtenção de novas
                 informações ao que já foi referenciado.
                 REVENDO. Indica a necessidade          de   rever   conceitos
                 estudados anteriormente.




                                                                                 4

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Índice de Figuras



Figura 1 – Ábaco. ..................................................................................................... 14
Figura 2 – Bastões de Napier. .................................................................................. 14
Figura 3 – Régua de Cálculo. ................................................................................... 14
Figura 4 – Calculadora de Pascal............................................................................. 15
Figura 6 – Z3, fabricado em 1941 por Konrad Zuse. ................................................ 15
Figura 7 – Mark I, construído em 1944 pela Universidade de Harvard e a IBM........ 15
Figura 8 – Relé e Válvulas........................................................................................ 16
Figura 9 – ENIAC...................................................................................................... 17
Figura 10 – IBM 650. ................................................................................................ 17
Figura 11 – DEC PDP-1............................................................................................ 18
Figura 12 – IBM 7094. .............................................................................................. 18
Figura 13 – IBM 360. ................................................................................................ 19
Figura 14 – DEC PDP-11.......................................................................................... 19
Figura 15 – Microprocessadores Intel 386 e 486/DX2.............................................. 19
Figura 16 – Altair 8800.............................................................................................. 20
Figura 17 – Apple II. ................................................................................................. 20
Figura 18 – IBM/XT................................................................................................... 20
Figura 19 – Osborne I. .............................................................................................. 20
Figura 20 – Processadores: Intel Core 2 Extreme e AMD Athlon 64 X2 Dual-Core. 21
Figura 21 – Modelo de von Neuman......................................................................... 22
Figura 22 – Modelo de von Neuman (Estrutura em Barramento). ............................ 22
Figura 23 – Componentes de um Computador......................................................... 23
Figura 24 – Unidade Central de Processamento (CPU). .......................................... 24
Figura 25 – Hierarquia de Memórias. ....................................................................... 27
Figura 26 – Dispositivos de Entrada. ........................................................................ 28
Figura 27 – Dispositivos de Saída. ........................................................................... 28
Figura 28 – Dispositivos de Entrada e Saída............................................................ 28
Figura 29 – Disco Magnético. ................................................................................... 50
Figura 30 – Memórias RAM e Cache........................................................................ 53
Figura 31 – Diagrama em Blocos do SAP-1. ............................................................ 57

                                                                                                                             5

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Figura 32 – Diagrama em Blocos do SAP-2. ............................................................ 69
Figura 33 – Utilização de tempo e circuito em um computador básico..................... 88
Figura 34 – Modificação para uma estrutura com pipeline. ...................................... 89
Figura 35 – Movimento da instrução na pipeline. ..................................................... 90
Figura 36 – Movimento da instrução e temporização da pipeline. ............................ 90
Figura 37 – Fluxo da instrução por meio do circuito de pipeline. .............................. 91
Figura 38 – Aumento da velocidade de um processador de von Neumann.............. 97
Figura 39 – Símbolo para um elemento de processamento genérico....................... 98
Figura 40 – Máquina de instrução única, segmento de dados único (SISD). ........... 98
Figura 41 – Máquina de instrução única, segmento de dados múltiplo (SIMD). ....... 99
Figura 42 – Máquina de instrução múltipla, segmento de dados único (MISD). ..... 100
Figura 43 – Máquina de instrução múltipla, segmento de dados múltiplo (MIMD).. 101




                                                                                                           6

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Índice de Tabelas




Tabela 1 – Tabela de Medidas. ................................................................................ 29
Tabela 2 – Conversão de Base Numérica. ............................................................... 36
Tabela 3 – Porta NOT............................................................................................... 37
Tabela 4 – Porta OR. ................................................................................................ 38
Tabela 5 – Porta AND............................................................................................... 38
Tabela 6 – Porta NOR. ............................................................................................. 39
Tabela 7 – Porta NAND. ........................................................................................... 40
Tabela 8 – Porta XOR............................................................................................... 41
Tabela 9 – Porta XNOR. ........................................................................................... 42
Tabela 10 – Regras da Álgebra Booleana. ............................................................... 43
Tabela 11 – Conjunto de Instruções do SAP-1......................................................... 59
Tabela 12 – Códigos de Operação do SAP-1........................................................... 61
Tabela 13 – Conjunto de Instruções do SAP-2......................................................... 79
Tabela 14 – Ciclos de Clock / Utilização do Circuito................................................. 90




                                                                                                                           7

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Sumário



Apresentação .......................................................................................................... 11
1. INTRODUÇÃO ..................................................................................................... 12
   1.1.     Conceitos Básicos ...................................................................................... 12
   1.2.     Arquitetura X Organização ......................................................................... 12
   1.3.     Evolução Histórica das Arquiteturas de Computadores ............................. 13
      1.3.1.       Geração Zero (1642 - 1945) – Mecânicos e eletromecânicos............. 14
      1.3.2. As Máquinas de Primeira Geração (1945 - 1955) – Válvulas .................. 16
      1.3.3. As Máquinas de Segunda Geração (1955 - 1965) – Transistores .......... 17
      1.3.4. As Máquinas de Terceira Geração (1965 - 1980) – Circuitos Integrados 18
      1.3.5. As Máquinas de Quarta Geração (1980 - 1990) – Circuitos LSI.............. 19
      1.3.6. As Máquinas de Quinta Geração (1990 - dias atuais) – Circuitos ULSI .. 20
      1.3.7. O modelo de von Neumann ..................................................................... 22
   1.4. Principais Componentes de um Computador................................................ 23
      1.4.1.       A Unidade Central de Processamento (CPU) ..................................... 23
      1.4.2.       Barramentos........................................................................................ 25
      1.4.3.       Clock ................................................................................................... 25
      1.4.4.       Memória Principal................................................................................ 26
      1.4.5.       Memória Cache ................................................................................... 26
      1.4.6.       Memória Secundária ........................................................................... 27
      1.4.7.       Dispositivos de Entrada e Saída (E/S ou I/O)...................................... 27
2. SISTEMAS DIGITAIS ........................................................................................... 29
   2.1.     O Bit, a Palavra, o Caractere, o Nibble e o Byte......................................... 29
   2.2.     Sistemas Numéricos................................................................................... 30
      2.2.1.       Sistema Decimal ................................................................................. 30
      2.2.2.       Sistema Binário ................................................................................... 31
          2.2.2.1. Conversão de Binário em Decimal.................................................... 31
          2.2.2.2. Conversão de Decimal em Binário.................................................... 32
          Exercícios: Converta os valores para as bases indicadas. ............................ 33
      2.2.3.       Sistema Octal ...................................................................................... 33


                                                                                                                                  8

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
2.2.3.1. Conversão de Binário em Octal ........................................................ 33
         2.2.3.2. Conversão de Octal em Binário ........................................................ 33
         2.2.3.3. Conversão de Octal em Decimal....................................................... 34
         2.2.3.4. Conversão de Decimal em Octal....................................................... 34
     2.2.4.       Sistema Hexadecinal........................................................................... 34
         2.2.4.1. Conversão de Hexa em Binário ........................................................ 35
         2.2.4.2. Conversão de Binário em Hexa ........................................................ 35
         2.2.4.3. Conversão de Hexa nos demais sistemas e vice-versa .................... 35
  2.3.      Portas Lógicas............................................................................................ 36
     2.3.1.       Portas NOT (Inversoras) ..................................................................... 37
     2.3.2.       Portas OU (OR, + , ∨).......................................................................... 37
     2.3.3.       Portas E (AND, . , ∧)............................................................................ 38
     2.3.4.       Portas NÃO OU (NOR)........................................................................ 39
     2.3.5.       Portas NÃO E (NAND) ........................................................................ 39
     2.3.6.       Portas OU Exclusiva – XOU (XOR, ⊕) ................................................ 40
     2.3.7.       Portas NÃO OU Exclusiva – XNOU (XNOR,                               ).................................. 41
  2.4.      Álgebra Booleana e Mapa de Karnaugh..................................................... 42
     2.4.1.       Álgebra Booleana................................................................................ 42
         2.4.1.1. Expressões Lógicas – Aplicações das Portas................................... 43
         2.4.1.2. Simplificação de Expressões Lógicas ............................................... 44
     2.4.2.       Mapas de Karnaugh ............................................................................ 45
         2.4.2.1. Regras para Minimização (Simplificação) ......................................... 46
  2.5.      Memórias.................................................................................................... 49
     2.5.1.       Memória de Massa.............................................................................. 50
     2.5.2.       Memória Semicondutora ..................................................................... 51
         2.5.2.1. Memória ROM................................................................................... 51
         2.5.2.2. Memória RAM .................................................................................. 52
3. MICROPROCESSADORES ................................................................................. 55
  3.1.      O Microprocessador SAP-1 ........................................................................ 55
     3.1.1.       Definição dos Blocos do SAP-1........................................................... 55
     3.1.2. Diagrama em Blocos .............................................................................. 57
     3.1.3.       Conjunto de Instruções do SAP-1 ....................................................... 57
     3.1.4.       Programação do SAP-1 ...................................................................... 61
     3.1.5.       Análise do Diagrama Temporal (Fasorial) ........................................... 62

                                                                                                                               9

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
3.2.      O Microprocessador SAP-2 ........................................................................ 67
      3.2.1. Definição dos Blocos do SAP-2............................................................. 67
      3.2.2. Diagrama em Blocos .............................................................................. 69
      3.2.3. Instruções do SAP-2................................................................................ 70
          3.2.3.1. Instruções com Referência à Memória............................................. 70
          3.2.3.2. Instruções de Registradores ............................................................ 70
          3.2.3.3. Instruções de JUMPS (Saltos) ......................................................... 72
          3.2.3.4. Instruções Lógicas ........................................................................... 75
          3.2.3.5. Outras Instruções............................................................................. 76
      3.2.4. Conjunto de Instruções do SAP-2............................................................ 78
   3.3.      A Linguagem Assembly.............................................................................. 85
      3.3.1.       Linguagem de Máquina ....................................................................... 85
      3.3.2.       Linguagem Assembly .......................................................................... 85
      3.3.3.       Linguagem de Alto Nível ..................................................................... 86
      3.3.4.       Vantagens e Desvantagens da Linguagem Assembly ........................ 86
      3.3.5.       Aplicações da Linguagem Assembly................................................... 86
      3.3.6.       Programa Debug ................................................................................. 87
   3.4.      A Técnica do Pipeline................................................................................. 87
   3.5.      Arquiteturas CISC e RISC .......................................................................... 94
      3.5.1.       Máquinas CISC ................................................................................... 94
      3.5.2.       Máquinas RISC ................................................................................... 95
      3.5.3.       Computadores Modernos .................................................................... 96
   3.6.      Conceitos Básicos em Processamento Paralelo ........................................ 96
      3.6.1.       Classificação de Máquinas Paralelas.................................................. 98
          3.6.1.1. SIMD ................................................................................................ 99
          3.6.1.2. MISD .............................................................................................. 100
          3.6.1.3. MIMD.............................................................................................. 100
REFERÊNCIAS ...................................................................................................... 102




                                                                                                                              10

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Apresentação

                                       Tenha em mente que tudo que você aprende na escola é
                                       trabalho de muitas gerações. Receba essa herança,
                                       honre-a, acrescente a ela e, um dia, fielmente, deposite-a
                                       nas mãos de seus filhos.
                                                                  Albert Einstein


Prezado(a) aluno(a):

Este é o seu Guia de Estudos da disciplina de Arquitetura e Organização de Computadores,
ministrada para o curso de Bacharelado em Sistemas de Informação pelo Centro
Universitário do Sul de Minas – UNIS-MG. Ele será utilizado no desenvolvimento da
disciplina, apresentando os conteúdos e demais informações para que você realize as
atividades programadas.
O estudo de Arquitetura e Organização de Computadores apresenta a estrutura interna de
um microprocessador e as várias técnicas utilizadas na sua construção. Este conhecimento
irá ajudá-lo a entender melhor o funcionamento de um sistema operacional, e você terá uma
idéia de como as instruções são, fisicamente, executadas na implementação de programas
computacionais, apesar da abstração do hardware que as modernas linguagens de
programação proporcionam.
Porém, antes de estudarmos o funcionamento dos microprocessadores, veremos os
conceitos básicos de sistemas digitais. O estudo de sistemas digitais exige o domínio de
outros sistemas de numeração além do decimal, que usamos no nosso cotidiano. Assim
inicialmente estudaremos os sistemas binário, octal e hexadecimal. Então iremos projetar
sistemas digitais, usando dispositivos lógicos, metodologias e técnicas empregadas no
desenvolvimento de circuitos digitais que podem ser usadas em outras situações como, por
exemplo, em programação.
Darei uma especial atenção à fixação destes conceitos uma vez que, se não forem bem
assimilados, poderão comprometer o seu desempenho no decorrer da disciplina.
Trata-se de uma disciplina básica, diretamente inserida no escopo do curso. O
conhecimento da Arquitetura e Organização de Computadores será empregado em diversas
áreas de estudo do curso como: Linguagens e Técnicas de Programação, Sistemas
Operacionais, Estrutura de Dados, Redes de Computadores, etc.
A minha expectativa é mostrar a relação entre hardware e software focalizando conceitos
que são a base dos atuais computadores e apresentar os paradigmas organizacionais que
determinam a capacidade e o desempenho de sistemas de computação.
Acredito que o curso de Sistemas de Informação esteja sendo um período de
desenvolvimento intelectual e de crescimento pessoal e desejo que esta disciplina contribua
para o seu sucesso profissional, portanto, mãos à obra.

José Eduardo Silva Gomes
Professor de Arquitetura e Organização de Computadores




                                                                                                    11

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
1. INTRODUÇÃO

                                     A mente que se abre a uma nova idéia jamais voltará ao
                                     seu tamanho original.
                                                             Albert Einstein


Neste primeiro capítulo, você encontrará os conceitos básicos da arquitetura e
organização de computadores e um breve histórico sobre os computadores. Para
finalizar o tópico, serão apresentados os principais componentes de um computador.


1.1. Conceitos Básicos
A Arquitetura de Computadores trata do comportamento funcional de um sistema
computacional do ponto de vista do programador.


          Tamanho de um tipo de dados – 32 bits para um inteiro.



A Organização de Computadores trata da estrutura interna que não é visível para o
programador.


          Freqüência do relógio (clock) ou tamanho da memória física.



Existe um conceito de níveis na arquitetura de computadores. A idéia básica é que
existem muitos níveis nos quais o computador pode ser considerado, do nível mais
alto, onde o usuário executa programas, ao nível mais baixo, que consiste de
transistores e fios (MURDOCCA, 2000).


1.2. Arquitetura X Organização
Arquitetura: são os atributos visíveis para o programador:
       conjunto de instruções;
       número de bits utilizado para a representação de dados;
       mecanismos de E/S;
       técnicas de endereçamento.



                                                                                              12

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Existe uma instrução de divisão?
          Quais os formatos de endereçamento existentes?


Organização: como as características da arquitetura são implementadas:
      sinais de controle disponíveis;
      interfaces;
      tecnologias de memória.
      como o conjunto de instruções é executado.


          Existe uma unidade para divisão ou a divisão é feita por subtrações
          sucessivas?



             Toda a família Intel X86 possui a mesma arquitetura básica.
             A organização é diferente de uma máquina para outra dentro da
             mesma família.
             Ter a mesma arquitetura garante a compatibilidade do código.


1.3. Evolução Histórica das Arquiteturas de Computadores
O computador se desenvolveu paralelamente à necessidade crescente de cálculos
rápidos e exatos da humanidade. Os ancestrais do computador remontam a mais
de 3000 anos.
O primeiro elemento com que o homem contou para fazer seus cálculos foi o
conjunto de dedos de suas mãos, daí a palavra digital deriva de dígito, que por sua
vez procede do latim digitus, significando dedo. Com a evolução da humanidade,
fizeram-se necessárias novas invenções para auxiliar os cálculos.



             Ábaco (aproximadamente 2500 a.C.).
             Bastões de Napier (1610 - 1614).
             Réguas de Cálculo (1621).




                                                                                      13

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Figura 1 – Ábaco.




                                                         Figura 2 – Bastões de Napier.




                               Figura 3 – Régua de Cálculo.




1.3.1. Geração Zero (1642 - 1945) – Mecânicos e eletromecânicos

O primeiro a construir uma máquina de calcular foi o filósofo e matemático francês
Blaise Pascal em 1642. Essa máquina era inteiramente mecânica e só somava e
subtraía. A linguagem de programação PASCAL é assim chamada em homenagem
a esse cientista. Trinta anos mais tarde, surge um filósofo e matemático alemão
chamado Leibnitz que cria uma máquina que realizava as quatro operações.
No século XIX, o matemático inglês Charles Babbage construiu sua máquina de
diferenças que calculava tabelas úteis à navegação naval, mais tarde construiu a
máquina analítica que possuía quatro componentes: o armazenamento (memória), o
engenho (unidade de cálculo), a seção de entrada (leitora de cartões perfurados) e a
seção de saída (saída perfurada e impressa). Uma vez que essa máquina era
programável, ele contrata a 1ª programadora da história chamada Ada Lovelace cujo
nome serviu para a moderna linguagem de programação, ADA, desenvolvida para o
departamento de defesa dos EUA.
Em 1889, Herman Hollerith desenvolveu o cartão perfurado para guardar os dados e
também uma máquina tabuladora mecânica, acionada por um motor elétrico, que
contava, classificava e ordenava informações armazenadas em cartões perfurados.
Ele fundou a empresa Tabulating Machines Corporation que, em 1924, transformou-
se na famosa IBM (International Business Machines).
Konrad Zuse (Alemanha) construiu durante a década de 1930 uma série de
máquinas de calcular baseadas em relés eletromagnéticos, mas a Segunda Guerra
Mundial impediu o seu avanço e ainda causou a sua destruição. Howard Aiken

                                                                                         14

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
(Estados Unidos da América) construiu em 1944 uma máquina de propósito geral
chamada Mark I, baseada no trabalho de Babbage, mas que usava relés
eletromagnéticos no lugar de engrenagens.




      Figura 4 – Calculadora de Pascal.




                                                 Figura 5 – Máquina Diferencial de Babbage.

Figura 6 – Z3, fabricado em 1941 por Konrad Zuse.




         Figura 7 – Mark I, construído em 1944 pela Universidade de Harvard e a IBM.




                                                                                              15

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
1.3.2. As Máquinas de Primeira Geração (1945 - 1955) – Válvulas

Os computadores de primeira geração eram baseados em tecnologias de relés e
válvulas eletrônicas. Eles normalmente quebravam após não muitas horas de uso.
Tinham dispositivos de entrada/saída primitivos, calculavam com uma velocidade só
de milésimos de segundo e eram programados em linguagem de máquina.




                              Figura 8 – Relé e Válvulas.



Os cartões perfurados foram o principal meio usado para armazenar os arquivos de
dados e para carregá-los no computador. A grande utilidade dessas máquinas era o
processamento de dados. No entanto tinham uma série de desvantagens como:
custo elevado, relativa lentidão, pouca confiabilidade, grande quantidade de energia
consumida e necessitavam de grandes instalações de ar condicionado para dissipar
o calor gerado por um alto número de válvulas (cerca de 20 mil).
A Segunda Grande Guerra estava no seu auge e a demanda por computadores
cada vez mais rápidos vinha crescendo. Os britânicos criavam a menos famosa
Colossus para decifrar os códigos nazistas, e, em 1945, os americanos
apresentavam o ENIAC (Eletronic Numerical Integrator and Calculator). O modelo
utilizava válvulas eletrônicas e os números eram manipulados na forma decimal.
Apesar da alta velocidade para a época, era extremamente difícil mudar as
instruções contidas dentro do computador, já que a programação era feita por meio
de válvulas e fios que eram trocados de posição de acordo com o que se desejava.
O sucessor do ENIAC foi o EDVAC (Electronic Discrete Variable Computer), apesar
de ser mais moderno, não diminuiu de tamanho e ocupava 100% do espaço que o
ENIAC ocupava. Todavia ele era dotado de cem vezes mais memória interna que o
ENIAC - um grande salto para a época. Um outro grande avanço do EDVAC foi o
abandono do modelo decimal e a utilização dos códigos binários, reduzindo
drasticamente o número de válvulas.
Baseado na revolucionária teoria de von Neumann, em 1951, foi construído o
UNIVAC I (Universal Automatic Computer) era bem menor que seus predecessores.
Tinha "apenas" vinte metros quadrados e cerca de cinco toneladas. O computador
recebia as instruções de cartões magnéticos e não mais de cartões perfurados.
Foram produzidas quinze unidades do UNIVAC I e ele foi o primeiro computador
comercial da história.
O computador IBM 650 foi disponibilizado publicamente nos USA pela IBM em
dezembro de 1954. Media 1,5 m X 0,9 m X 1,8 m e tinha uma massa de 892 Kg. O

                                                                                       16

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
IBM 650 era indicado para resolver problemas comerciais e científicos. A empresa
projetou a venda de 50 exemplares do computador (mais do que todos os
computadores do mundo juntos) - o que foi considerado um exagero. Apesar do
pessimismo, em 1958, duas mil unidades do IBM 650 estavam espalhadas pelo
mundo.




                Figura 9 – ENIAC.                    Figura 10 – IBM 650.



1.3.3. As Máquinas de Segunda Geração (1955 - 1965) – Transistores

Em 1948, surgiu um novo componente que apresentava inúmeras vantagens em
relação às antigas válvulas: ele tinha características como menor aquecimento,
maior poder de cálculo e confiabilidade e um consumo de energia bem menor - com
o adicional de que não necessitava de tempo para aquecer. A Bell Laboratories
inventava o transistor. Os cálculos passaram a ser medidos de segundos para
microssegundos. As linguagens utilizadas para esses computadores eram
normalmente a FORTRAN, COBOL ou ALGOL.
A partir desse momento, devido à maior facilidade e praticidade do transistor, muitos
modelos de computador surgiram. O primeiro modelo de computador 100%
transistorizado foi o TRADIC, da Bell Laboratories. Outro modelo dessa época era o
IBM 1401, com uma capacidade memória base de 4.096 bytes operando em ciclos
de memória de 12 microssegundos. A instalação de um IBM 1401 ocupava uma
sala, e o tamanho dos computadores ainda era bastante grande. Existiam também
outros modelos, como o sofisticado IBM 7094. O IBM TX-0, de 1958, tinha um
monitor de vídeo de alta qualidade, além de ser rápido e relativamente pequeno. A
Digital Equipment Corporation (DEC) tinha então uma posição proeminente no setor
com sua linha PDP. O primeiro minicomputador foi o PDP-1, criado em 1959 e
instalado em 1961. No entanto, os elevados custos destas máquinas restringiam sua
utilização a aplicações estratégicas do governo, grandes empresas e universidades.




                                                                                        17

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Figura 11 – DEC PDP-1.                    Figura 12 – IBM 7094.



1.3.4. As Máquinas de Terceira Geração (1965 - 1980) – Circuitos Integrados

A terceira geração inicia-se com a introdução dos circuitos integrados (transistores e
outros componentes eletrônicos miniaturizados e montados numa única pastilha de
silício - o chip), aos computadores. Com esses circuitos integrados, o tempo passou
a ser medido em nanosegundos (bilionésimos de segundos). A tecnologia utilizada,
na época, era a de pequena escala de integração (SSI – Small Scale of Integration)
com a qual ao redor de mil transistores podiam-se integrar no circuito de uma
pastilha. Com isso os computadores eram menores, mais confiáveis, com maior
velocidade de operação e um custo bem mais baixo do que as máquinas das
gerações anteriores. Também eram usados discos magnéticos para
armazenamento, o que permitiu o acesso direto a arquivos muito grandes.
Os custos de produção de um computador começavam a cair, atingindo uma faixa
de mercado que abrangia empresas de médio porte, centros de pesquisa e
universidades menores. O Burroughs B-2500 foi um dos primeiros modelos dessa
geração. O PDP-5, produzido pela DEC, foi o primeiro minicomputador comercial e o
INTEL 4004 o primeiro microprocessador.
O exemplo típico dessa geração foi o IBM 360, série que introduziu o conceito de
família de computadores compatíveis, facilitando a migração dos sistemas quando é
necessário mudar para um computador mais potente. Esta estratégia permitiu que a
IBM se posicionasse, já neste período, como líder do mercado de computadores.
Outros computadores desta geração que conheceram grande sucesso,
particularmente nas universidades e centros de pesquisa, foram os
minicomputadores da série PDP-11.
Mais uma novidade introduzida por esta classe de computadores foi o conceito de
multiprogramação, na qual diversos programas poderiam estar residentes na
memória da máquina. No caso em que um programa entrasse em espera para uma
operação de entrada/saída de dados, a unidade central passava a executar a parte
de um outro programa.




                                                                                         18

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Figura 13 – IBM 360.                   Figura 14 – DEC PDP-11.


1.3.5. As Máquinas de Quarta Geração (1980 - 1990) – Circuitos LSI

Ainda mais avançados que os circuitos integrados, eram os circuitos LSI (Large
Scale of Integration) com mil transistores por "chip" e VLSI (Very Large Scale of
Integration) com cem mil transistores por "chip". O uso desses circuitos na
construção de processadores representou outro salto na história dos computadores.
As linguagens mais utilizadas eram a PROLOG, FP, UNIX e o início da utilização da
linguagem C. Logo em 1981, nasce o microprocessador 286 utilizando slots ISA de
16 bits e memórias de 30 pinos. Quatro anos mais tarde, era a vez do 386, com
maior velocidade de processamento. Ao contrário do 286, era possível rodar o
Windows 3.11 no 386. Introduziram-se, no mercado, as placas VGA e suporte a 256
cores. Em 1989, eram lançados os primeiros 486 DX, eles vinham com memórias de
72 pinos (muito mais rápidas que as antigas de 30 pinos) e possuíam slots PCI de
32 bits - o que representava o dobro da velocidade dos slots ISA.




                  Figura 15 – Microprocessadores Intel 386 e 486/DX2.

Desde o início da década de 80, os preços haviam caído de tal maneira que
começava ser possível a uma pessoa ter o seu próprio computador. Foi cunhado o
conceito de "PC", ou "Personal Computer", e os computadores pessoais passaram a
ser utilizados de uma maneira relativamente distinta dos grandes computadores de
então.
O primeiro microcomputador da história foi o Altair 8800, que usava o chip Intel
8088, tornou-se o padrão mundial da época para os microcomputadores de uso
pessoal, abrindo uma nova era na história da informática.
Sthephen Wozniak e Steve Jobs criaram, em 1976, uma pequena empresa, a Apple,
quando construíram, numa garagem de fundo de quintal, o Apple I. Um ano depois,
com um novo e melhor projeto, surge o Apple II, primeiro microcomputador com

                                                                                    19

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
grande sucesso comercial e, mais tarde, o Apple III. Em 1983, entra no mercado o
Lisa e, em 1984, o Macintosh, com tecnologia de 32 bits.




          Figura 16 – Altair 8800.



                                                    Figura 17 – Apple II.

Em 1981, a IBM entrou no mercado de micros, introduzindo o PC, um
microcomputador com tecnologia de 16 bits (Intel 8088) que em pouco tempo se
tornou um padrão. O PC/XP usava o sistema operacional PC/MS-DOS, uma versão
do MS-DOS desenvolvida para a IBM pela Microsoft.
Além disso, diversos modelos e estilos foram sendo lançados nessa época: Lotus 1-
2-3, Sinclair ZX81/ZX Spectrum, Osborne1, etc.




            Figura 18 – IBM/XT.                   Figura 19 – Osborne I.



1.3.6. As Máquinas de Quinta Geração (1990 - dias atuais) – Circuitos ULSI

As aplicações exigem cada vez mais uma maior capacidade de processamento e
armazenamento de dados. Sistemas especialistas, sistemas multimídia (combinação
de textos, gráficos, imagens e sons), banco de dados distribuídos e redes neurais,
são apenas alguns exemplos dessas necessidades. Uma das principais
características dessa geração é a simplificação e miniaturização do computador,
além de melhor desempenho e maior capacidade de armazenamento. Tudo isso,
com os preços cada vez mais acessíveis.
A tecnologia VLSI foi substituída pela ULSI (Ultra Large Scale Integration). O
conceito de processamento está partindo para os processadores paralelos, ou seja,

                                                                                     20

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
a execução de muitas operações simultâneas pelas máquinas. A redução dos custos
de produção e do volume dos componentes permitiu a aplicação destes
computadores nos chamados sistemas embutidos, que controlam aeronaves,
embarcações, automóveis e computadores de pequeno porte. Os micros que
utilizam a linha de processadores Pentium, da Intel, são exemplos desta geração de
computadores que surgiu em 1993. As grandes mudanças neste período ficariam
por conta das memórias DIMM de 108 pinos, do aparecimento das placas de vídeo
AGP e de um aprimoramento da slot PCI melhorando ainda mais seu desempenho.
Em 1997 surge o Pentium II, em 1999 o Pentium III, em 2001 o Pentium 4 e mais
recentemente os processadores da nova microarquitetura Intel Core, com
processadores com mais de um núcleo em um único encapsulamento (sem contar
os modelos similares da concorrente AMD).




      Figura 20 – Processadores: Intel Core 2 Extreme e AMD Athlon 64 X2 Dual-Core.



Enfim, a informática evolui cada vez mais rapidamente e as velocidades de
processamento dobram em períodos cada vez mais curtos. Para se ter uma noção
disso, basta observar que entre os modelos de computador mais antigos, os
espaçamentos entre uma novidade e outra eram de dezenas de anos, sendo que
hoje não chega a durar nem um mês. Isso nos leva a concluir que o avanço científico
e do poder de cálculo avança de maneira que não se encontra paralelo na história
humana, barateando os custos e tornando acessíveis os computadores às pessoas
de baixa renda.
Quem sabe uma nova geração de computadores não está por vir? Alguns falam em
processadores quânticos quando os limites da miniaturização do silício forem
atingidos, enquanto outros falam em moléculas de água armazenando informações -
mas o fato é que coisas novas vão surgir e novas gerações deixarão a atual tão
longe e ultrapassada como está a segunda para nós. Mesmo rompendo
recentemente a barreira dos terabytes, a evolução dos computadores ainda está
longe de terminar.


            Leia, no Ambiente Virtual de Aprendizagem, na Midiateca, a
            apresentação “Uma Breve História da Computação”. Material
            baseado em uma compilação da Profa. Dra. Rosely Sanches.




                                                                                      21

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Pesquise a respeito das especificações técnicas (memória,
            processamento, barramento, clock, instruções, etc.) dos computadores
            de 1ª a 5ª geração.
            Faça um pequeno relatório com as especificações técnicas de uma
            máquina de cada geração.



1.3.7. O modelo de von Neumann

A grande maioria dos computadores existentes atualmente segue um modelo
proposto pelo matemático americano John von Neumann por volta de 1940. Nesse
modelo, um elemento processador segue as instruções armazenadas em uma
memória de programas, para ler canais de entrada, enviar comandos sobre canais
de saída e alterar as informações contidas em uma memória de dados. A Figura 21
indica a estrutura desse modelo.




                         Figura 21 – Modelo de von Neuman.

Esse modelo inicial evoluiu para uma estrutura em barramento (Figura 22), que é a
base dos computadores modernos. Nessa estrutura, as memórias de dados e de
programa são fundidas em uma memória única, e as comunicações entre elementos
são efetuadas através de uma via comum de alta velocidade.




             Figura 22 – Modelo de von Neuman (Estrutura em Barramento).

Uma variante do modelo básico de máquinas von Neumann é denominado de
máquinas Harvard, no qual há vias separadas para dados e instruções entre



                                                                                    22

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
memória principal e CPU. A origem do termo vem dos computadores Mark I a Mark
IV, desenvolvidos em Harvard, com memórias de dados e instruções separadas.


1.4. Principais Componentes de um Computador


Existem três elementos fundamentais em um sistema computacional, cada um
executando uma tarefa especial. Estes elementos são:
1. A Unidade Central de Processamento (CPU).
2. A Memória Principal.
3. Os Dispositivos ou Portas de Entradas e Saídas (I/O).




                     Figura 23 – Componentes de um Computador.




1.4.1. A Unidade Central de Processamento (CPU)

A CPU, ou processador, tem como função principal unificar todo o sistema,
controlando as funções realizadas por cada unidade funcional. A CPU executa o
processamento numérico, as operações lógicas e as funções de temporização. As
operações da CPU são controladas por um conjunto de instruções que, quando
organizadas em uma seqüência lógica, formam o chamado programa.
Os programas e os dados a serem manipulados obrigatoriamente deverão estar
armazenados na memória principal. A CPU é alimentada com dados e sinais de
controle, executa uma instrução por vez e produz como saída dados e sinais de
controle.




                                                                                23

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Internamente, uma CPU é formada por 3 unidades fundamentais:
1. Os Registradores.
2. A Unidade Lógica e Aritmética (ULA).
3. O Circuito de Controle.




                  Figura 24 – Unidade Central de Processamento (CPU).




Registradores – são dispositivos de alta velocidade para armazenamento
temporário de dados. Os registradores, geralmente numerosos, são utilizados para
assegurar o armazenamento temporário de informações importantes para o
processamento de uma determinada instrução. Um registrador memoriza um número
limitado de bits, geralmente uma palavra de memória. Os registradores mais
importantes são:
•   Contador de Programa (PC - Program Counter), que aponta para a próxima
    instrução a ser executada.
•   Registrador de Instrução (IR - Instruction Register) que armazena a instrução em
    execução.
•   Outros registradores     que   permitem     o   armazenamento       de   resultados
    intermediários.

Unidade Lógica e Aritmética (ALU) – assume todas as tarefas relacionadas às
operações lógicas (ou, e, negação, etc.) e aritméticas (adições, subtrações, etc...) a
serem realizadas no contexto de uma tarefa.

Unidade de Controle – coordena todas as atividades do microprocessador. É esta
unidade que assume toda a tarefa de controle das ações a serem realizadas pelo
computador, comandando todos os demais componentes de sua arquitetura. Através
de pulsos externos de temporização chamados "clocks", o circuito de controle gera
as seqüências apropriadas de eventos necessários à execução das tarefas de
processamentos.




                                                                                          24

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
1.4.2. Barramentos

A CPU, a memória principal e os dispositivos de I/O são interligados por meio de
linhas de comunicação denominadas barramentos ou vias. Um barramento (bus) é
um conjunto de fios paralelos (linhas de transmissão), nos quais trafegam
informações como dados, endereços ou sinais de controle.
Os dados trafegam na CPU, memória e I/O através de via de dados. Estes dados
poderão ser instruções para CPU ou informações da CPU para portas I/O e vice-
versa.
A via de endereço é utilizada pela CPU para selecionar uma célula de memória ou
um dispositivo I/O por meio de um código binário.
A via de controle conduz os sinais de controle para a memória e para os dispositivos
I/O, especificando as direções dos dados em relação à CPU, o momento exato da
transferência, o tipo de operação, etc.


          Se um processador quiser armazenar um dado 10101100b no endereço
          5h, ele deverá colocar, no barramento de dados, o valor do dado
          (10101100b), no barramento de endereços, o valor do endereço (5h) e,
          no barramento de controle, confirmar que se trata de uma operação de
          escrita em memória. Tudo isso é feito simultaneamente e é transparente
          ao usuário.


1.4.3. Clock

Clock é um circuito oscilador que tem a função de sincronizar e ditar a medida de
velocidade de transferência de dados no computador, por exemplo, entre o
processador e a memória principal. Esta freqüência é medida em ciclos por segundo,
ou Hertz.
Existe a freqüência própria do processador, comandando operações internas a ele e
a freqüência do computador a ele associado, basicamente ciclos CPU-Memória
principal.
Os processadores Pentium-100, Pentium MMX-233, Pentium II-300 acessam a
memória principal a 66 MHz. Suas freqüências respectivas de 100, 233 e 300 MHz
são atingidas, tão somente, no interior do chip. Dizem respeito, portanto, ao
processamento interno do processador e não à freqüência na relação CPU-Memória
do computador. Já o processador Pentium II-350 tem uma freqüência externa de 100
MHz, acarretando um desempenho melhor do microcomputador, tanto no
processamento propriamente dito quanto nas operações de disco e vídeo.


          25MHz são 25 milhões de ciclos por segundo. A duração de um ciclo, seu
          período, é o inverso da freqüência, então cada ciclo será o inverso de
          25.000.000 ou 1/25.000.000 = 0,00000004 ou 40x10-9 = 40 ηseg.


                                                                                       25

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
1.4.4. Memória Principal

É o componente do sistema com a função de armazenar informações que são, foram
ou serão manipuladas pelo processador. Ela é conhecida também como primária e é
formada por dois tipos de memória: RAM (Random Access Memory) – Memória de
Acesso Aleatório e a ROM (Read Only Memory) – Memória Somente de Leitura.
Atualmente, os microcomputadores possuem memória principal (RAM) de 256MB
(Mega Bytes) a 2GB (Giga Byte). A RAM é uma memória volátil, porém há uma
pequena parte da memória principal composta por memória não volátil (ROM) que
armazenamos instruções que são sempre executadas quando o computador é
ligado. O software gravado na ROM recebe o nome de firmware. Eles são
basicamente três:
•   BIOS (Basic Input/Outpu System) – Conjunto de instruções básicas de software
    que permite ao processador trabalhar com periféricos básicos.
•   POST (Power-On Self Test) – Autoteste de inicialização, realizado sempre que o
    computador é inicializado.
•   SETUP – Programa de configuração do hardware do computador.


1.4.5. Memória Cache

A memória cache é uma memória volátil de alta velocidade normalmente integrada
aos processadores. O tempo de acesso a um dado nela contido é muito menor que
se fosse buscá-lo diretamente na memória principal. Este tempo é de 10 a 25ηs e
normalmente sua capacidade varia de 256KB, 512KB e 1MB.
Toda vez que o processador faz referência a um dado armazenado na memória
principal, ele “olha” antes na memória cache. Se o processador encontrar o dado na
cache, não há necessidade do acesso à memória principal; do contrário, o acesso é
obrigatório.


                                          • 30% mais lento para processamento.
            Um computador sem cache:      • 20% mais lento para acesso a disco.
                                          • 10% mais lento para acesso a vídeo.



          Imagine a memória RAM como uma mesa do outro lado da sala. Quando
          você vai pegar uma informação lá, por exemplo, um número de telefone,
          você vai anotá-lo para trazê-lo para sua mesa. Por quê? Se você precisar
          do mesmo número de telefone outra vez, não vai precisar se levantar e
          buscá-lo na outra mesa, só precisa ler no papel perto de você.




                                                                                     26

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
1.4.6. Memória Secundária

Conhecida também como memória auxiliar ou memória de massa é um meio
permanente (não volátil) de armazenamento de programas e dados. Enquanto a
memória principal precisa estar sempre energizada para manter suas informações, a
memória secundária não precisa de alimentação.
A memória secundária pode ser constituída por diferentes tipos de dispositivos,
alguns diretamente ligados ao sistema para acesso imediato, como no caso dos
discos rígidos (HDs), e outros que podem ser conectados quando desejado
(disquetes, fitas, CD-ROM, DVD, etc.).
O acesso à memória secundária é lento se comparado com o acesso à memória
cache ou à principal, porém seu custo é baixo e sua capacidade de armazenamento
é bem superior à da memória principal. O tempo de acesso/ciclo de memória é alto
devido a esses dispositivos serem, em geral, eletromecânicos e não circuitos
puramente eletrônicos. HDs de 5 a 40ms, CD-ROM de 120 a 300 ms e fitas
magnéticas na ordem de segundos.




                         Figura 25 – Hierarquia de Memórias.




1.4.7. Dispositivos de Entrada e Saída (E/S ou I/O)

Os dispositivos de entrada e saída, também conhecidos por periféricos, são
utilizados para permitir a comunicação entre o computador e mundo externo. Através
desses dispositivos, o computador pode armazenar, ler, transmitir e receber dados.
Dentre os diversos dispositivos de E/S, existem alguns que são especializados
apenas em ENTRADA, outros especializados apenas em SAÍDA e outros em
ENTRADA e SAÍDA.




                                                                                     27

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Entrada: teclado, mouse, microfone, scanner, caneta óptica, mesa
            digitalizadora, leitora de códigos de barras, leitora de cartão
            magnético, joystick, câmera de vídeo, sensores, etc.
            Saída: monitor de vídeo, projetor de vídeo, impressora, plotadora,
            caixa de som, controladores, etc.
            Entrada e Saída: drive de disquete (floppy disk), disco rígido (HD),
            modem, placa de rede, leitor e gravador de CD/DVD, pen drive, etc.




                        Figura 26 – Dispositivos de Entrada.




                         Figura 27 – Dispositivos de Saída.




                    Figura 28 – Dispositivos de Entrada e Saída.




                                                                                   28

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
2. SISTEMAS DIGITAIS

Os computadores são equipamentos eletrônicos digitais, portanto toda a informação
a ser armazenada, movimentada e processada internamente deverá ser
transformada para o código binário, ou seja, usam apenas DUAS grandezas,
representadas pelos algarismos 0 e 1.


2.1. O Bit, a Palavra, o Caractere, o Nibble e o Byte
A menor unidade de informação armazenável em um computador é o algarismo
binário ou dígito binário, conhecido como bit (binary digit). O bit assume dois
valores: 0 e 1.
O menor grupo ordenado de bits representando uma informação útil e inteligível para
o ser humano é o caracter. Cada sistema poderá definir como cada conjunto de bits
irá representar um determinado caractere, quantos bits e como se organizam.
O conjunto de 4 bits é chamado de nibble, termo pouco empregado. O conjunto de 8
bits foi definido pela primeira vez pela IBM e é chamado de byte. Daí em diante,
todos os fabricantes adotam o mesmo padrão até os dias de hoje.
A palavra é o conjunto de bits que representa uma informação útil e está
relacionada com o armazenamento e a transferência de informações entre a
Memória Principal e a CPU. Portanto a palavra é um conjunto de bytes. Um
computador com uma palavra de 32 bits tem 4 bytes/palavra. As operações de
armazenamento e recuperação de dados na memória são feitas byte a byte ou
palavra a palavra, portanto é comum mencionarmos o tamanho de uma memória em
termos de bytes.
Para representar valores maiores, utilizaremos o sistema métrico de grandeza, com
algumas adaptações para os computadores.


     Sufixo           Quantidade
     Kilo (K)         1 Kilobytes ou 1 KB = 1024 = 210
     Mega (M)         1 Megabytes ou 1 MB = 1.048.576 = 220
     Giga (G)         1 Gigabytes ou 1 GB = 1.073.741.824 = 230
     Tera (T)         1 Terabytes ou 1 TB = 1.099.511.627.776 = 240
     Peta (P)         1 Petabytes ou 1 PB = 1.125.899.906.843.624 = 250
     Exa (E)          1 Exabytes ou 1 EB = 1.152.921.504.607.870.976 = 260
                       Tabela 1 – Tabela de Medidas.




                                                                                      29

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Devemos ter cuidado para não cometermos falsos arredondamentos.
          65.536, por exemplo, representa, em binário, 64 K (e não 65 K, como
          parece), assim como 157.286.400 representa 150 M (e não 157 M).
          (TORRES, 1999).


2.2. Sistemas Numéricos
Sistemas numéricos são sistemas de notação usados para representar quantidades
abstratas denominadas números. Um sistema numérico é definido pela base que
utiliza.
A base de um sistema é o número de símbolos diferentes, ou algarismos,
necessários para representar um número qualquer. O sistema decimal, utilizado hoje
de forma universal, utiliza dez símbolos diferentes ou dígitos para representar um
número e é, portanto, um sistema numérico na base 10.
Os computadores utilizam a base 2 (sistema binário) e os programadores, por
facilidade, usam em geral uma base que seja uma potência de 2, tal como 24 (base
16 ou sistema hexadecimal) ou eventualmente ainda 23 (base 8 ou sistema octal).
Se na base 10, dispomos de 10 algarismos para a representação do número: 0, 1, 2,
3, 4, 5, 6, 7, 8 e 9. Na base 2, seriam apenas 2 algarismos: 0 e 1. Na base 16,
seriam 16: os 10 algarismos aos quais estamos acostumados, mais os símbolos A,
B, C, D, E e F, representando respectivamente 10, 11, 12, 13, 14 e 15 unidades.
Generalizando, temos que uma base b qualquer disporá de b algarismos, variando
entre 0 e (b-1).


2.2.1. Sistema Decimal

Entre os sistemas numéricos existentes, o sistema decimal é o mais utilizado. Os
símbolos ou dígitos utilizados são os algarismos 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Os
elementos são agrupados de dez em dez e, por essa razão, os números podem ser
expressos por intermédio de potência de dez e recebem o nome de sistema de
numeração decimal.



          486 = 400 + 80 + 6 = 4 x 100 + 8 x 10 + 6 x 1 = 4 x 102 + 8 x 101 + 6 x
          100, ou seja, 486 = 4 x 102 + 8 x 101 + 6 x 100.




                                                                                     30

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Observe que o número 4 está numa posição tal que seu peso é igual
             a 2 e que o número 6, por sua vez, tem o peso igual a zero. Então
             podemos concluir que o algarismo ou dígito, dependendo do seu
             posicionamento, terá um peso. Note que aquele situado na extrema
             esquerda do número está sendo multiplicado pela potência de dez
             maior, ou seja, é o dígito mais significativo (most significant digit –
             MSD). Analogamente, o que está situado na extrema direita será
             multiplicado pela menor potência, ou seja, é o dígito menos
             significativo (least significant digit – LSD).



           a) O princípio de posicionamento, que formula o expoente da base 10,
              pode ser estendido a qualquer sistema numérico, ou seja, independe
              da base numérica em que está representado.
           b) Por ser o sistema padrão de uso (é o sistema que utilizamos em
              nosso dia-a-dia), o sistema decimal não necessita de representação
              de base, a fim de simplificação de escrita.


2.2.2. Sistema Binário

Como o próprio nome já indica tem base 2, pois utiliza apenas dois símbolos ou
algarismos: 0 e 1. Também vale ressaltar que, em processamentos digitais, o dígito
1 também é conhecido por nível lógico 1, nível lógico alto, ligado, verdadeiro e
energizado. Já o dígito 0 pode ser nível lógico 0, nível lógico baixo, desligado, falso
e desenergizado.
Assim, a cada posição de cada algarismo corresponde uma potência de 2, como foi
exposto para número decimal, ao qual correspondia uma potência de 10.


2.2.2.1. Conversão de Binário em Decimal
É o mesmo processo já estudado para base 10, ou seja:


           10111(2) = 1x24 + 0x23 + 1x22 + 1x21 + 1x20 = 16 + 0 + 4 + 2 + 1 = 23, ou
                    seja,
           10111(2) = 23(10) ou 10111(2) = 23




                                                                                          31

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Como os dígitos binários são chamados de bit, da mesma forma como
          falamos no sistema decimal, dependendo do posicionamento o algarismo
          ou bit terá um peso; o da extrema esquerda será o bit mais significativo
          (most significant bit – MSB) e o da extrema direita o bit menos
          significativo (least significant bit – LSB).
           43210
           1 1 0 1 1(2) = 1x24 + 1x23 + 0x22 + 1x21 + 1x20 = 16 + 8 + 0 + 2 + 1 = 27
                         MSB                           LSB


2.2.2.2. Conversão de Decimal em Binário
Na conversão decimal-binário, podem ser utilizados dois métodos: o primeiro que é
mais geral, dito das divisões sucessivas, consiste em dividir sucessivamente o
número por 2 até obtermos o cociente 0 (zero). O resto dessa divisão colocado na
ordem inversa corresponde ao número binário correspondente ao decimal dado.


          54 = ?(2)




          54 = 1 1 0 1 1 0 (2)



O segundo método de conversão consiste em, começando como número decimal a
ser convertido, extrair a maior potência de 2 (menor ou igual) possível. Repetindo
este processo para o resto dessa subtração até que o resto seja zero. Concluindo,
marque com o dígito 1 os expoentes utilizados e com o dígito zero os expoentes não
utilizados.


          54 = ?(2)              256   128   64   32   16    8   4   2   1
                          54 – 32 = 22       22 – 16 = 6         6–4=2       2–2=0
          Portanto nós utilizamos as potências 32=25, 16=24, 4=22 e 2=21, ou seja:
                                  5    4     3    2    1     0
                                  32   16    8    4    2     1
                 Resposta = 1          1     0    1    1     0 (2)




                                                                                       32

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Este método, evidentemente, exige um pouco mais de raciocínio, devido ao
problema de memorização das potências de dois e subtrações.


             Exercícios: Converta os valores para as bases indicadas.
             a) 111011(2) = ?             b) 110110(2) = ?          c) 10011(2) = ?
             d) 10110(2) = ?              e) 215 = ? (2)            f) 43 = ? (2)
             g) 101 = ? (2)               h) 36 = ? (2)             i) 543 = ? (2)



2.2.3. Sistema Octal

O sistema octal ou base 8 é composto por oito símbolos ou dígitos: 0, 1, 2, 3, 4, 5, 6,
e 7. Os números binários, como vimos, são longos demais para manipularmos; são
muito apropriados para as máquinas ou computadores, mas para seres humanos
são muito trabalhosos.
Se considerarmos três dígitos binários, o maior que pode ser expresso por esses
três dígitos é 111(2) ou em decimal 7. Como o 7 é também o algarismo mais
significativo do sistema octal, conclui-se que com a combinação de três dígitos
binários pode-se ter o algarismo octal correspondente; daí também se pode dizer
que os números octais têm um terço do comprimento de um número binário e
fornecem a mesma informação.


2.2.3.1. Conversão de Binário em Octal
É feita pela combinação de três dígitos binários, podendo assim ter todos os
algarismos octais:


           11011011(2) = 11       011 011 = 3 3 3 (8)        →   11011011(2) = 333(8)
           1011101(2) =       1   011 101 = 1 3 5 (8)        →   1011101(2) = 135(8)


2.2.3.2. Conversão de Octal em Binário
A conversão de uma base em outra é bastante simples, uma vez que se trata da
operação inversa à já descrita, ou seja, basta converter individualmente cada dígito
octal em três binários.




                                                                                          33

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
137(8) = ?(2)
          O número 1 equivale a 001(2), o número 3 igual a 011(2) e o número 7 vale
          111(2).
          Portanto:
          137(8) = 001011111(2), ou seja, 137(8) = 1011111(2).


2.2.3.3. Conversão de Octal em Decimal
Esta conversão se passa pela conversão em binário e posteriormente em decimal,
ou seja:


          17(8) = ?
          17(8) → 001 111(2) → 1x23 + 1x22 + 1x21 + 1x20 → 8 + 4 + 2 + 1 = 15.



2.2.3.4. Conversão de Decimal em Octal
Conforme vimos anteriormente, também neste caso, devemos passar pelo sistema
binário.


          22 = ?(8)
          22 → 10110(2) → 10 110(2) → 26(8),ou seja, 22 = 26(8).



            Exercícios: Converta os valores para as bases indicadas.
            a) 45(8) = ?(2) = ?        b) 1011(2) = ? (8) = ?      c) 56(8) = ?
            d) 101 = ? (8)             e) 101(2) = ? (8) = ?       f) 47(8) = ?(2) = ?



2.2.4. Sistema Hexadecinal

O sistema hexadecimal (hexa) foi criado com o mesmo propósito do sistema octal,
para minimizar a representação de um número binário que é o utilizado em
processamento. Tanto os números em hexa como em octal são os meios de
manipulação do homem, porém existirão sempre conversores internos à máquina
que os converta em binário, com o qual a máquina trabalha.
Analogamente, se considerarmos quatro dígitos ou bits binários, o maior número que
pode ser expresso por esses quatro dígitos é 1111 ou em decimal 15, da mesma
forma que 15 é o algarismo mais significativo do sistema hexadecimal, portanto com

                                                                                         34

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
a combinação de 4 bits ou dígitos binários pode-se ter o algarismo hexadecimal
correspondente.
Assim, com esse agrupamento de 4 bits ou dígitos, podem-se definir 16 símbolos, de
0 até 15. Contudo, como não existem símbolos dentro do sistema arábico que
possam representar os números decimais entre 10 e 15 sem repetir os símbolos
anteriores, foram usados os símbolos A, B, C, D, E e F, portanto o sistema
hexadecimal será formato por 16 símbolos alfanuméricos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
A, B, C, D, E e F.


2.2.4.1. Conversão de Hexa em Binário
Basta converter cada dígito hexadecimal em seu similar binário, ou seja, cada dígito
em hexa equivale a um grupo de 4 bits.


          B15(16) = ? (2)                     B(16) →   11    →     1011(2)
                                              1(16) →    1    →     0001(2)
                                              5(16) →    5    →     0101(2)
          Logo, B15(16) = 101100010101(2)



2.2.4.2. Conversão de Binário em Hexa
De maneira análoga, basta realizar o processo inverso de hexa para binário.


          10011011(2) = ? (16)            1001(2) →      9    →     9(16)
                                          1011(2) →     11    →     B(16)
          Portanto, 10011011(2) = 9B(16)


2.2.4.3. Conversão de Hexa nos demais sistemas e vice-versa
Como podemos perceber, para realizarmos a conversão nos demais sistemas, basta
passarmos pela binária e/ou pelo sistema decimal.


            Exercícios: Converta os valores para as bases indicadas.
            a) 211 = ? (2) = ? (8) = ? (16)             b) 1101011(2) = ? (16) = ? = ? (8)
            c) 3747(8) = ? (16) = ? (2) = ?             d) AAE(16) = ? = ? (8) = ? (2)
            e) Fazer um programa para conversão de sistemas numéricos entre as
               diversas bases (2, 8, 10 e 16), somente números inteiros.



                                                                                             35

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Baixe da Midiateca, no Ambiente Virtual de Aprendizagem, o programa
            Sisnum.exe que é um conversor de base numérica desenvolvido pelo
            aluno Márcio Henrique da Silva. Este software será útil para a correção
            dos exercícios propostos.



                    TABELA DE CONVERSÃ0
            Decimal   Binário  Octal Hexadecimal
               0       0000     0         0
               1       0001     1         1
               2       0010     2         2
               3       0011     3         3
               4       0100     4         4
               5       0101     5         5
               6       0110     6         6
               7       0111     7         7
               8       1000               8
               9       1001               9
              10       1010               A
              11       1011               B
              12       1100               C
              13       1101              D
              14       1110               E
              15       1111               F
                        Tabela 2 – Conversão de Base Numérica.



2.3. Portas Lógicas
Durante séculos, os matemáticos sentiram que havia uma conexão entre a
Matemática e a Lógica, mas ninguém antes de George Boole pôde achar este elo
ausente. Em 1854, ele inventou a lógica simbólica, conhecida por álgebra booleana.
Cada variável, na álgebra booleana, tinha qualquer um de dois valores: verdadeiro
ou falso. Após algumas décadas, os engenheiros entenderam que a álgebra
booleana podia ser aplicada à Eletrônica dos Computadores.




                                                                                      36

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
2.3.1. Portas NOT (Inversoras)

Uma inversora é uma porta com apenas um sinal de entrada e um sinal de saída, o
estado da saída é sempre o oposto da entrada.


                       Simbologia:



                                  Tabela Verdade
                                     A          Ā
                                     0          1
                                     1          0
                                 Tabela 3 – Porta NOT.

                   Representação em Álgebra Booleana: S = A




2.3.2. Portas OU (OR, + , ∨)

A porta OR tem dois ou mais sinais de entrada (padrão 2 ou 3), mas somente um
sinal de saída. Se qualquer sinal de entrada for alto (nível 1 - fechado), o sinal de
saída será alto.




                 Simbologia:




                                                                                        37

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Tabela Verdade
                          A            B          C            S
                          0            0           0           0
                          0            0           1           1
                          0            1           0           1
                          0            1           1           1
                          1            0           0           1
                          1            0           1           1
                          1            1           0           1
                          1            1           1           1
                                    Tabela 4 – Porta OR.

                   Representação em Álgebra Booleana: S = A + B + C


2.3.3. Portas E (AND, . , ∧)

A porta AND tem dois ou mais sinais de entrada (padrão 2 ou 3), mas somente um
sinal de saída. Se qualquer sinal de entrada for baixo (nível 0 - aberto), o sinal de
saída será baixo.




                 Simbologia:




                                    Tabela Verdade
                               A             B             S
                                0             0            0
                                0             1            0
                                1             0            0
                                1             1            1
                                 Tabela 5 – Porta AND.

                     Representação em Álgebra Booleana: S = A . B



                                                                                        38

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Exercícios:
            a) Fazer o circuito de portas lógicas equivalente para seguinte equação
               booleana:
                                 S = (A + C) . B
            b) Fazer a tabela verdade para porta AND com 3 entradas.
            c) Fazer a tabela verdade para porta OR com 4 entradas.
            d) Fazer o circuito de portas lógicas equivalente a:
                                 S = ((A + B) . C) + (A . C) + B
            e) Fazer o circuito de portas lógicas para:
                                   S = ((A . B) + C) . ( A + B) . C



2.3.4. Portas NÃO OU (NOR)

As portas NOR apresentam as mesmas características das portas OR, com relação
à entrada e saída. Sua diferença está no fato de ter associado a sua saída uma
porta NOT, o que inverte o resultado de S, ou seja, só teremos nível lógico 1 na
saída quando todas as entradas forem de nível 0.
                Simbologia:




                                    Tabela Verdade
                               A             B            S
                               0              0           1
                               0              1           0
                               1              0           0
                               1              1           0
                                Tabela 6 – Porta NOR.

                    Representação em Álgebra Booleana: S = A + B


2.3.5. Portas NÃO E (NAND)

De maneira análoga às portas NOR, as portas NAND nada mais são que portas
AND onde foram acrescentadas portas NOT em sua saída. Portanto, só obteremos
nível 0 quando todas as suas entradas forem de nível 1.



                                                                                      39

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Simbologia:




                                 Tabela Verdade
                             A         B          S
                             0          0         1
                             0          1         1
                             1          0         1
                             1          1         0
                             Tabela 7 – Porta NAND.

                    Representação em Álgebra Booleana: S = A . B
Talvez esta porta seja a mais importante de todas, pois através dela podemos
implementar as demais:
         Porta NOT




         Porta AND




         Porta OR




2.3.6. Portas OU Exclusiva – XOU (XOR, ⊕)

Uma porta XOR reconhece apenas quando houver um número ímpar de entradas
em nível alto.

                                                                               40

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Circuito
   equivalente:




                  Simbologia:




                                    Tabela Verdade
                                A         B             S
                                0          0            0
                                0          1            1
                                1          0            1
                                1          1            0
                                Tabela 8 – Porta XOR.

          Representação em Álgebra Booleana: S = A . B + A . B = A ⊕ B




2.3.7. Portas NÃO OU Exclusiva – XNOU (XNOR,                )

Como nas demais portas, para obtermos uma porta XNOR, basta adicionarmos ao
final de uma porta XOR uma porta inversora, o que provocará a inversão dos
resultados na saída.


                  Simbologia:




                                                                              41

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Tabela Verdade
                                A          B          S
                                0           0         1
                                0           1         0
                                1           0         0
                                1           1         1
                                 Tabela 9 – Porta XNOR.

      Representação em Álgebra Booleana: S = A . B + A . B = A ⊕ B = A        B



             Exercícios:
             Consultar o livro Microcomputadores e Microprocessadores, do autor
             Albert Paul Alvino. Fazer os problemas 2-1 a 2-25 e os problemas 3-1 a
             3-34 do livro.




2.4. Álgebra Booleana e Mapa de Karnaugh
Iremos estudar a álgebra booleana e os mapas de Karnaugh, tópicos indispensáveis
ao projetista digital. O projeto digital, usualmente, inicia-se especificando uma saída
desejada com uma tabela-verdade. A pergunta então é como apresentar um circuito
lógico que tenha a mesma tabela-verdade? A álgebra booleana e os mapas de
Karnaugh são as ferramentas usadas para transformar uma tabela-verdade num
circuito lógico prático.



2.4.1. Álgebra Booleana

O que se segue é uma discussão das relações básicas em álgebra booleana. Muitas
destas relações são as mesmas da álgebra comum, o que facilita lembrá-las.




                                                                                          42

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Relações Booleanas: Leis Comutativas, Associativas e Distributivas:
                                     RELAÇÕES BOOLEANAS
 A+0=A                                A + 1= 1                     A+A=A
 A + A =1                             A=A                          A .1= A

 A .0 = 0                             A.A =A                       A.A =0
 A +B= A.B                            A .B = A + B                 A + A .B = A
 A . ( A + B) = A                     A + A .B = A + B             A . ( A + B) = A . B
 A +B=B + A                           A .B = A B                   AB=B A
 A + (B + C) = ( A + B) + C           A (B C) = ( A B) C           A (B + C) = A B + A C
 A + B C = ( A + B) + ( A + C) ⇒ Vale lembrar que não se trata de álgebra comum.
                             Tabela 10 – Regras da Álgebra Booleana.



2.4.1.1. Expressões Lógicas – Aplicações das Portas
Uma expressão lógica ou uma função lógica pode ser definida como sendo uma
expressão algébrica formada por variáveis lógicas (binárias), por símbolos
representativos de uma operação lógica (+, . , etc.), por parênteses (às vezes) e por
um sinal de igual.
Prioridades:
1º - sempre serão resolvidos os parênteses, do mais interno para o mais externo;
2º - o operador NOT quando ele envolve apenas um elemento;
3º - o operador AND;
4º - o operador OR;
5º - o operador XOR.


            X = A + B . C ⊕ ( A + B)
            Para A = 1 , B = 0 e C = 1:
            1º - A + B = 1 + 0 = 1 = 0 ⇒ Resolvemos primeiro o parêntese
            2º - B . C = 0 . 1 = 0
            3º - A + B . C = 1 + 0 = 1

            4º - ( A + B . C) ⊕ ( A + B) = 1 ⊕ 0 = 1




                                                                                           43

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Exercícios:
            Seja A = 1001, B = 0010, C = 1110 e D = 1111. Calcule:
            a) X = A ⊕ (B . C + D) + (B ⊕ D )
            b) Y = ( A + (B ⊕ C . D )) . (C + B)

            c) W = ( A + B) . ( C + D) + ( A . C)




2.4.1.2. Simplificação de Expressões Lógicas
   Utilização das regras da álgebra Booleana para obter expressões mais simples.
   Usualmente há mais de uma possibilidade de simplificação.



          F = A .B.C + A .B. C + A .C

          A . B . C + A . B . C + A . C ⇒ = A . B . (C + C ) + A . C ⇒

          ⇒ = A .B .1+ A . C ⇒ F = A .B + A . C



            Exercícios:
            a) Desenhar o circuito digital simplificado para:
               a.1) S = A B C D + A B C D + A B C D

               a.2) S = A B C D + A B C D + A B C D + A B C D

            b) Escreva a equação booleana para:




                                                                                   44

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
c) Determinar o circuito lógico digital e tabela verdade para a seguinte
               expressão booleana:
                                      S = B C + A (B + C)
                        A    B    C     BC     Ā       B+C    Ā(B+C)    S
                        0    0    0
                        0    0    1
                        0    1    0
                        0    1    1
                        1    0    0
                        1    0    1
                        1    1    0
                        1    1    1

            d) Idem ao exercício anterior para a expressão:
                                      S = A (B + C) + A B


2.4.2. Mapas de Karnaugh

Como se pode constatar, a minimização ou simplificação é imprescindível em um
comando digital. Para realizarmos tal tarefa utilizaremos a minimização por mapas
de Karnaugh que é um método, uma vez entendido, muito simples.
O método consiste em fazer a minimização a partir de uma tabela da verdade, ou
mapa, porém a simplificação é feita sobre um mapa característico chamado mapa de
Karnaugh, que contém os mesmos elementos de uma tabela verdade comum,
porém com uma distribuição diferente.


           Tabela Verdade:                      Mapa de Karnaugh:
             A      B       C     S                    AB
                                                   C         00   01   11   10
              0     0       0     0
                                                       0     0    1    0     1
              0     0       1     0
              0     1       0     1
                                                       1     0    1    1     1
              0     1       1     1             Obs.: Observe que há uma inversão
                                                      de seqüência no mapa.
              1     0       0     1
              1     0       1     1
              1     1       0     0
              1     1       1     1



                                                                                       45

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Podemos observar que no mapa de Karnaugh a combinação para as variáveis A, B
e C se obtém pela combinação de uma linha com uma coluna, ou seja, a
combinação 0, 0 e 0 se obtém pela combinação da primeira linha com a primeira
coluna. Assim, observamos que temos todas as combinações de entrada mostradas
na tabela verdade.
Devemos ressaltar que a expressão booleana é escrita a partir da tabela verdade
perguntando-se quando obteremos a saída igual a nível 1, ou seja:
                  S = A .B. C + A .B.C + A . B . C + A . B .C + A .B.C


2.4.2.1. Regras para Minimização (Simplificação)
A simplificação consiste em reunir células adjacentes que possuam a mesma saída
(1), formando conjuntos denominados de subcubos e obedecendo às seguintes
regras:
a) o número de células reunidas deve ser o maior possível, mesmo que para isso
   uma mesma célula possa pertencer a dois ou mais conjuntos diferentes;
b) o número de células reunidas em um subcubo deve ser sempre potência de 2, ou
   seja, 1, 2, 4, 8, 16,...;
c) uma mesma célula pode pertencer a subcubos diferentes para satisfazer o item
   a, mas não fazer agrupamentos desnecessários (pelo menos uma célula tem de
   pertencer a um subcubo somente) e
d) deve-se formar tantos agrupamentos até que não reste nenhuma saída igual a 1
   que não tenha sido agrupada.
A expressão da saída se obtém dos subcubos formados. Cada subcubo define uma
função AND entre as variáveis que não mudam de nível lógico dentro do subcubo.
Os diversos subcubos obtidos no mapa formam uma função OR.
Voltando ao exemplo anterior e aplicando-se o mapa de Karnaugh, obteremos a
seguinte expressão booleana simplificada:
            AB                                        AB
        C        00    01     11       10         C             00   01   11       10
         0        0     1     0        1              0         0    1     0       1
         1        0     1     1        1              1         0    1     1       1


             S = A .B + A .C + A . B        ou            S = A .B + B.C + A . B
Um mapa de Karnaugh para 4 variáveis (A, B, C e D) seria da seguinte forma:
                                  AB
                            CD         00   01   11        10
                              00
                              01
                              11
                              10
                                                                                        46

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Exercícios:
           a) Dado a tabela verdade abaixo, determinar a expressão booleana
              simplificada por Karnaugh e o circuito digital resultante.
                      A      B       C   S
                      0      0       0   1
                      0      0       1   0
                      0      1       0   0
                      0      1       1   0
                      1      0       0   1
                      1      0       1   1
                      1      1       0   0
                      1      1       1   1

           b) Um guindaste deve permitir a elevação de massas compreendidas
              entre 20 e 80 quilos, pela atuação do motor M (é a nossa saída S).
              Para isso ele possui uma plataforma repousando sobre molas. De
              acordo com o peso das cargas a elevar, três sensores de carga (A,
              B e C) são atuados. As condições de funcionamento são as
              seguintes:
                  em vazio o guindaste deve funcionar, isto é, quando nenhum
                  dos sensores é acionado;
                  para cargas até 20 Kg, ou seja, 0<peso<20, o guindaste não
                  deve funcionar. Situação em que somente o sensor A está
                  atuado;
                  para cargas compreendidas entre 20 e 80 Kg, 20<peso<80, o
                  guindaste deve funcionar, quando os sensores A e B
                  permanecem atuados e
                  para cargas superiores a 80 Kg, peso>80, o guindaste não deve
                  funcionar, quando todos os sensores permanecem atuados.
              Com base no sistema descrito, determinar:
              1) tabela verdade de funcionamento;
              2) equação Booleana simplificada por Karnaugh e
              3) circuito digital.




                                                                                   47

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
c) Em um circuito digital eletrônico, utiliza-se um DISPLAY de 7
              segmentos (a, b, c, d, e, f, g) para representar os números decimais
              positivos de um dígito somente. Com base nas informações de
              posicionamento dos segmentos e tabela de atuação, completar a
              tabela e montar o circuito lógico digital simplificado que atenda às
              necessidades decimais.




             Dec.   A     B    C    D    a    b    c   d    e    f   g    LED
              0     0     0    0    0    1    1    1   1    1    1   0
              1     0     0    0    1    0    1    1   0    0    0   0
              2     0     0    1    0    1    1    0   1    1    0   1
              3     0     0    1    1    1    1    1   1    0    0   1
              4     0     1    0    0
              5     0     1    0    1
              6     0     1    1    0
              7     0     1    1    1
              8     1     0    0    0
              9     1     0    0    1

           Obs:
           1) Os números que não estão sendo utilizados na codificação ABCD,
              não interferem no resultado, ou seja, são condições irrelevantes
              (representados no mapa de Karnaugh por um “X”). Tais condições
              de irrelevância devem ser utilizadas como sendo nível lógico 0 ou 1,
              o que irá facilitar nas simplificações.
           2) Cada segmento deve ser considerado como uma saída individual do
              nosso circuito.



           Baixe da Midiateca, no Ambiente Virtual de Aprendizagem, o programa
           mk.exe que resolve Mapas de Karnaugh até 3 variáveis e foi
           desenvolvido pelo aluno Márcio Henrique da Silva. Este software será
           útil para a correção dos exercícios propostos.




                                                                                     48

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Baixe da Midiateca, no Ambiente Virtual de Aprendizagem, o programa
            DW20_95.exe, Digital Works versão 2.0 (freeware). Este software é um
            simulador de circuitos digitais que permite a construção de circuitos
            com portas lógicas, flip-flops, dispositivos tri-state e memórias. As
            entradas podem ser implementadas usando chaves, clocks,
            seqüenciadores e dispositivos de entrada iterativos. As saídas podem
            ser visualizadas usando LED's, dispositivos de sete segmentos e
            dispositivos numéricos.


            Baixe da Midiateca, no Ambiente Virtual de Aprendizagem, o vídeo
            ExemploDW.avi. Nele implemento, usando o Digital Works, o circuito
            digital mostrado no Exercício b do item 2.4.1.2. (Simplificação de
            Expressões Lógicas), do nosso Guia de Estudo. Este vídeo procura
            apenas mostrar um exemplo de utilização do software. O programa
            possui vários componentes e ferramentas que permitem que você
            construa circuitos digitais mais complexos.



            Exercícios:
            No Ambiente Virtual de Aprendizagem, na Midiateca, você vai
            encontrar o arquivo ExercSisDig.doc com uma lista de exercícios para
            aplicação de Álgebra Booleana e Mapa de Karnaugh.


2.5. Memórias
Existem 2 tipos de memórias:
   1. Memória de Massa.
   2. Memória Semicondutora.
Os microprocessadores usam dispositivos semicondutores para armazenar
programas e dados. Os mais utilizados são:
   • RAM (Random Access Memory): memória de acesso aleatório.
   • ROM (Read Only Memory): memória somente de leitura.
Para expandir o espaço de armazenamento de dados, os sistemas
microprocessados usam alguns dispositivos de armazenamento de massa, tais
como:
   • discos flexíveis (disquetes);
   • discos rígidos (HDs);
   • fitas magnéticas;
   • disco Óptico (CD, DVD).




                                                                                    49

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
2.5.1. Memória de Massa

São memórias utilizadas para armazenagem de grandes quantidades de
informações, ficam externamente à CPU e normalmente requerem dispositivo
periférico de interfaceamento.
Todos os discos magnéticos (disquetes, discos rígidos, Zip disk, etc.) são divididos
magneticamente em círculos concêntricos chamados trilhas. As trilhas, por sua vez,
são divididas em setores. Em cada setor cabem 512 bytes de informação (esse valor
é fixo). Dependendo do disco, ele poderá ter uma formatação com um maior número
de trilhas e setores. Quanto maior esse número, mais dados o disco poderá
armazenar (TORRES, 1999).
Para calcular a capacidade máxima de um disco, você pode utilizar a fórmula abaixo:


Capacidade de armazenamento = número de trilhas x número de setores por trilha
                              x número de faces do disco x 512 bytes.



          Um disco formado por 80 trilhas, 18 setores por trilha e possuindo duas
          faces, terá a capacidade de 1.474.560 bytes ou 1.440 KB. Essa é a
          formatação utilizada pelo nosso conhecidíssimo disquete de 1.44 MB.




                             Figura 29 – Disco Magnético.




          O termo formatar um disquete ou HD consiste em criar trilhas e setores
          neles.




                                                                                       50

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
2.5.2. Memória Semicondutora

São memórias utilizadas para armazenagem de pequenas quantidades de
informações, não necessitam de interface com a CPU, têm velocidade elevada em
relação à memória de massa (para acesso) e trabalham em blocos para
armazenamento de dados.
Há duas classes básicas de memória semicondutoras:
   Memória ROM: Os circuitos de memória ROM só permitem leitura, mas, em
   compensação, não perdem o conteúdo quando são desligadas, ou seja, não são
   voláteis. Além disto, as memórias ROM são mais lentas que as memórias RAM.
   Memórias RAM: São rápidas, permitem leitura e escrita, mas, em compensação,
   o seu conteúdo é perdido sempre que são desligadas, ou seja, são voláteis.


          Para o processador, não há diferença entre acessar uma memória RAM
          ou ROM – a não ser a velocidade, pois a memória ROM é mais lenta do
          que a RAM.




2.5.2.1. Memória ROM
Memória ROM é um termo genérico utilizado para designar um circuito de memória
de leitura somente. Os circuitos de memória ROM podem ser construídos utilizando
uma das seguintes tecnologias básicas:

   Mask-ROM: Esse tipo de memória é gravada na fábrica do circuito integrado (CI)
   e não há como apagarmos ou gravarmos o seu conteúdo. Esse tipo de circuito é
   fabricado sob encomenda.

   PROM (Programmable ROM): Essa memória é vendida “virgem” e o fabricante
   do dispositivo que utilizará este circuito se encarrega de fazer a gravação de seu
   conteúdo. Entretanto, uma vez gravada, não há como apagar ou
   reprogramarmos o seu conteúdo. A diferença entre esse circuito e o anterior é o
   local da gravação. Enquanto a Mask-ROM é fabricada já com um conteúdo
   predefinido (isto é, a gravação é feita na fábrica do circuito), a PROM é gravada
   pelo fabricante do periférico que utilizará o circuito.

   EPROM (Erasable Programmable ROM): Da mesma forma que a PROM, a
   EPROM é vendida virgem e deve ser gravada pelo fabricante do dispositivo que
   a utilizará. Ao contrário dos outros dois tipos, o seu conteúdo pode ser apagado,
   o que é feito colocando-se o circuito integrado exposto à luz ultravioleta (esse
   circuito possui uma janela transparente para que o apagamento possa ser feito).
   Dessa forma, esse circuito pode ser regravado.

   EEPROM (Eletric Erasable Programmable ROM): A EEPROM ou E²PROM é
   uma EPROM na qual o apagamento não é feito por meio de luz, mas sim por
   impulsos elétricos. Para ser regravada tem que se selecionar (endereçar) a
                                                                                        51

Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores

Contenu connexe

Tendances

Tendances (20)

Pensamento computacional
Pensamento computacionalPensamento computacional
Pensamento computacional
 
Capítulo 1 Inteligência Artificial RUSSELL
Capítulo 1 Inteligência Artificial RUSSELLCapítulo 1 Inteligência Artificial RUSSELL
Capítulo 1 Inteligência Artificial RUSSELL
 
CCNA - Introdução a redes para certificação 640-802 // CISCO
CCNA - Introdução a redes para certificação 640-802 // CISCOCCNA - Introdução a redes para certificação 640-802 // CISCO
CCNA - Introdução a redes para certificação 640-802 // CISCO
 
Aula 3 sistema computacional (hardware e software)
Aula 3   sistema computacional (hardware e software)Aula 3   sistema computacional (hardware e software)
Aula 3 sistema computacional (hardware e software)
 
Aula 3 - Gestão de Processos, BPM e Desenvolvimento de Sistemas
Aula 3 - Gestão de Processos, BPM e Desenvolvimento de SistemasAula 3 - Gestão de Processos, BPM e Desenvolvimento de Sistemas
Aula 3 - Gestão de Processos, BPM e Desenvolvimento de Sistemas
 
Evolução da informática
Evolução da informáticaEvolução da informática
Evolução da informática
 
Manutenção de Computadores - Aula 1
Manutenção de Computadores - Aula 1Manutenção de Computadores - Aula 1
Manutenção de Computadores - Aula 1
 
Módulo 1 - Noções Básicas de Hardware e Software
Módulo 1 - Noções Básicas de Hardware e SoftwareMódulo 1 - Noções Básicas de Hardware e Software
Módulo 1 - Noções Básicas de Hardware e Software
 
Código binário
Código binárioCódigo binário
Código binário
 
Aula: Evolução das interfaces
Aula: Evolução das interfacesAula: Evolução das interfaces
Aula: Evolução das interfaces
 
Aula 12 – Sistema de Numeração (Conversão de Bases)
Aula 12 – Sistema de Numeração (Conversão de Bases)Aula 12 – Sistema de Numeração (Conversão de Bases)
Aula 12 – Sistema de Numeração (Conversão de Bases)
 
Aula 06 - Sistema Binário
Aula 06 - Sistema BinárioAula 06 - Sistema Binário
Aula 06 - Sistema Binário
 
Aula 01: introdução à informática aplicada
Aula 01:  introdução à informática aplicadaAula 01:  introdução à informática aplicada
Aula 01: introdução à informática aplicada
 
História e evolução do computadores
História e evolução do computadoresHistória e evolução do computadores
História e evolução do computadores
 
Endereçamento de memória
Endereçamento de memóriaEndereçamento de memória
Endereçamento de memória
 
Aula de hardware
Aula de hardwareAula de hardware
Aula de hardware
 
Aula 03 - Hardware e Software
Aula 03 - Hardware e SoftwareAula 03 - Hardware e Software
Aula 03 - Hardware e Software
 
Informática Básica - Aula 04 - Software
Informática Básica - Aula 04 - SoftwareInformática Básica - Aula 04 - Software
Informática Básica - Aula 04 - Software
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Planilhas eletrônicas
Planilhas eletrônicasPlanilhas eletrônicas
Planilhas eletrônicas
 

En vedette

Aula 04 arquitetura de computadores
Aula 04   arquitetura de computadoresAula 04   arquitetura de computadores
Aula 04 arquitetura de computadores
Daniel Moura
 
OrganizaçãO E Arquiteturas De Computadores 2009 Cap 1
OrganizaçãO E Arquiteturas De Computadores 2009 Cap 1OrganizaçãO E Arquiteturas De Computadores 2009 Cap 1
OrganizaçãO E Arquiteturas De Computadores 2009 Cap 1
guest7d021
 
Motorola solutions ap6532 access point installation guide (part no. 72 e 1493...
Motorola solutions ap6532 access point installation guide (part no. 72 e 1493...Motorola solutions ap6532 access point installation guide (part no. 72 e 1493...
Motorola solutions ap6532 access point installation guide (part no. 72 e 1493...
Advantec Distribution
 
Parte 5 -_memória_externa
Parte 5 -_memória_externaParte 5 -_memória_externa
Parte 5 -_memória_externa
wellingtonsi
 
INTRODUÇÃO A ORGANIZAÇÃO DE COMPUTADORES PROF. IVO
INTRODUÇÃO A ORGANIZAÇÃO DE COMPUTADORES PROF. IVOINTRODUÇÃO A ORGANIZAÇÃO DE COMPUTADORES PROF. IVO
INTRODUÇÃO A ORGANIZAÇÃO DE COMPUTADORES PROF. IVO
Karen Costa
 

En vedette (20)

Arquitetura e Organização de Computadores: Introdução
Arquitetura e Organização de Computadores: IntroduçãoArquitetura e Organização de Computadores: Introdução
Arquitetura e Organização de Computadores: Introdução
 
Arquitetura e Organização de Computadores: Evolução e Desempenho de Computadores
Arquitetura e Organização de Computadores: Evolução e Desempenho de ComputadoresArquitetura e Organização de Computadores: Evolução e Desempenho de Computadores
Arquitetura e Organização de Computadores: Evolução e Desempenho de Computadores
 
Arquiteturas de Computadores - slides
Arquiteturas de Computadores - slidesArquiteturas de Computadores - slides
Arquiteturas de Computadores - slides
 
Aula Introdução a Arquitetura e Organização de Computadores
Aula Introdução a Arquitetura e Organização de ComputadoresAula Introdução a Arquitetura e Organização de Computadores
Aula Introdução a Arquitetura e Organização de Computadores
 
Aula 04 arquitetura de computadores
Aula 04   arquitetura de computadoresAula 04   arquitetura de computadores
Aula 04 arquitetura de computadores
 
Arquitetura de um computador
Arquitetura de um computadorArquitetura de um computador
Arquitetura de um computador
 
OrganizaçãO E Arquiteturas De Computadores 2009 Cap 1
OrganizaçãO E Arquiteturas De Computadores 2009 Cap 1OrganizaçãO E Arquiteturas De Computadores 2009 Cap 1
OrganizaçãO E Arquiteturas De Computadores 2009 Cap 1
 
Modelo de von neumann
Modelo de von neumannModelo de von neumann
Modelo de von neumann
 
Motorola solutions ap6532 access point installation guide (part no. 72 e 1493...
Motorola solutions ap6532 access point installation guide (part no. 72 e 1493...Motorola solutions ap6532 access point installation guide (part no. 72 e 1493...
Motorola solutions ap6532 access point installation guide (part no. 72 e 1493...
 
LIVRO PROPRIETÁRIO -ORGANIZAÇÃO DE COMPUTADORES
LIVRO PROPRIETÁRIO -ORGANIZAÇÃO DE COMPUTADORESLIVRO PROPRIETÁRIO -ORGANIZAÇÃO DE COMPUTADORES
LIVRO PROPRIETÁRIO -ORGANIZAÇÃO DE COMPUTADORES
 
Diagramas de temporização
Diagramas de temporizaçãoDiagramas de temporização
Diagramas de temporização
 
Organização de computadores
Organização de computadoresOrganização de computadores
Organização de computadores
 
Sistemas de Microprocessadores 2013/2014
Sistemas de Microprocessadores 2013/2014Sistemas de Microprocessadores 2013/2014
Sistemas de Microprocessadores 2013/2014
 
Arquitetura 6
Arquitetura 6Arquitetura 6
Arquitetura 6
 
Arq orgcomp
Arq orgcompArq orgcomp
Arq orgcomp
 
Ti para concursos
Ti para concursosTi para concursos
Ti para concursos
 
Bancode perguntas
Bancode perguntasBancode perguntas
Bancode perguntas
 
Arquitetura
ArquiteturaArquitetura
Arquitetura
 
Parte 5 -_memória_externa
Parte 5 -_memória_externaParte 5 -_memória_externa
Parte 5 -_memória_externa
 
INTRODUÇÃO A ORGANIZAÇÃO DE COMPUTADORES PROF. IVO
INTRODUÇÃO A ORGANIZAÇÃO DE COMPUTADORES PROF. IVOINTRODUÇÃO A ORGANIZAÇÃO DE COMPUTADORES PROF. IVO
INTRODUÇÃO A ORGANIZAÇÃO DE COMPUTADORES PROF. IVO
 

Similaire à Arquitetura e organização de computadores

Caderno de normas_24_junho_2011
Caderno de normas_24_junho_2011Caderno de normas_24_junho_2011
Caderno de normas_24_junho_2011
Edjailma Alves
 
Trabalho de Diplomação II Sobre o IESB
Trabalho de Diplomação II Sobre o IESBTrabalho de Diplomação II Sobre o IESB
Trabalho de Diplomação II Sobre o IESB
Edmilson Hora
 
Dissertação completa
Dissertação completaDissertação completa
Dissertação completa
Livia Santiago
 

Similaire à Arquitetura e organização de computadores (20)

Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
 
Física i unidade 1 a 4
Física i   unidade 1 a 4Física i   unidade 1 a 4
Física i unidade 1 a 4
 
Sistemasintegrados
SistemasintegradosSistemasintegrados
Sistemasintegrados
 
Prevencao e controle_de_riscos_em_maquin
Prevencao e controle_de_riscos_em_maquinPrevencao e controle_de_riscos_em_maquin
Prevencao e controle_de_riscos_em_maquin
 
Arquitetura de Computadores
Arquitetura de ComputadoresArquitetura de Computadores
Arquitetura de Computadores
 
Caderno de normas_24_junho_2011
Caderno de normas_24_junho_2011Caderno de normas_24_junho_2011
Caderno de normas_24_junho_2011
 
APRENDIZAGEM COLABORATIVA POR MEIO DE SOCIAL MEDIA E E-LEARNING
APRENDIZAGEM COLABORATIVA POR MEIO DE SOCIAL MEDIA E E-LEARNINGAPRENDIZAGEM COLABORATIVA POR MEIO DE SOCIAL MEDIA E E-LEARNING
APRENDIZAGEM COLABORATIVA POR MEIO DE SOCIAL MEDIA E E-LEARNING
 
Apostila adm produção
Apostila adm produçãoApostila adm produção
Apostila adm produção
 
Trabalho de Diplomação II Sobre o IESB
Trabalho de Diplomação II Sobre o IESBTrabalho de Diplomação II Sobre o IESB
Trabalho de Diplomação II Sobre o IESB
 
Desenvolvimento de Sistema CRUD (MVC) PHP / MYSQL
Desenvolvimento de Sistema CRUD (MVC) PHP / MYSQLDesenvolvimento de Sistema CRUD (MVC) PHP / MYSQL
Desenvolvimento de Sistema CRUD (MVC) PHP / MYSQL
 
Trabalhodegraduaoengenhariadesoftware 140703173419-phpapp01
Trabalhodegraduaoengenhariadesoftware 140703173419-phpapp01Trabalhodegraduaoengenhariadesoftware 140703173419-phpapp01
Trabalhodegraduaoengenhariadesoftware 140703173419-phpapp01
 
Modelos de avaliacao de ambientes virtuais de aprendizagem
Modelos de avaliacao de ambientes virtuais de aprendizagemModelos de avaliacao de ambientes virtuais de aprendizagem
Modelos de avaliacao de ambientes virtuais de aprendizagem
 
Proposta de Desenvolvimento de um Protótipo de Laboratório Remoto Aplicado ao...
Proposta de Desenvolvimento de um Protótipo de Laboratório Remoto Aplicado ao...Proposta de Desenvolvimento de um Protótipo de Laboratório Remoto Aplicado ao...
Proposta de Desenvolvimento de um Protótipo de Laboratório Remoto Aplicado ao...
 
Cef n2 operador de informatica referencial de formação
Cef n2 operador de informatica   referencial de formaçãoCef n2 operador de informatica   referencial de formação
Cef n2 operador de informatica referencial de formação
 
Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...
Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...
Proposta de Arquitetura de Desenvolvimento Web Baseada em PHP Utilizando Desi...
 
O Processo De Bolonha Na Web Semântica
O Processo De Bolonha Na Web SemânticaO Processo De Bolonha Na Web Semântica
O Processo De Bolonha Na Web Semântica
 
At1
At1At1
At1
 
Dissertação completa
Dissertação completaDissertação completa
Dissertação completa
 
Dissertação google inc act on general strike suzart Attain to cpf 051 812 95...
Dissertação  google inc act on general strike suzart Attain to cpf 051 812 95...Dissertação  google inc act on general strike suzart Attain to cpf 051 812 95...
Dissertação google inc act on general strike suzart Attain to cpf 051 812 95...
 
Livro avaliaçãoes diagnosticas
Livro avaliaçãoes diagnosticasLivro avaliaçãoes diagnosticas
Livro avaliaçãoes diagnosticas
 

Arquitetura e organização de computadores

  • 1. Guia de Estudo Arquitetura e Organização de Computadores 2º Período Unidade 1 a 3
  • 2. SABE – Sistema Aberto de Educação Av. Cel. José Alves, 256 - Vila Pinto Varginha - MG - 37010-540 Tele: (35) 3219-5204 - Fax - (35) 3219-5223 Instituição Credenciada pelo MEC – Portaria 4.385/05 Centro Universitário do Sul de Minas - UNIS/MG Unidade de Gestão da Educação a Distância – GEaD Mantida pela Fundação de Ensino e Pesquisa do Sul de Minas - FEPESMIG Varginha/MG 1 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 3. 004.165 G633g. GOMES, José Eduardo Silva. Guia de Estudo - Arquitetura e Organização de Computadores - José Eduardo Silva Gomes. Varginha: GEaD-UNIS/MG, 2007. 103p. 1. Sistemas Digitais. 2. Microprocessadores. 3. Programação. 4. Informática I. Título 2 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 4. REITOR Prof. Ms. Stefano Barra Gazzola GESTOR Prof. Ms. Tomás Dias Sant’ Ana Supervisor Técnico Prof. Ms. Wanderson Gomes de Souza Coord. do Núcleo de Recursos Tecnológicos Profª. Simone de Paula Teodoro Moreira Coord. do Núcleo de Desenvolvimento Pedagógico Profª. Vera Lúcia Oliveira Pereira Revisão ortográfica / gramatical Profª. Maria José Dias Lopes Grandchamp Design/diagramação Prof. César dos Santos Pereira Equipe de Tecnologia Educacional Profª. Débora Cristina Francisco Barbosa Jacqueline Aparecida da Silva Prof. Lázaro Eduardo da Silva Autor JOSÉ EDUARDO SILVA GOMES Técnico em Eletrônica (1984) pela ETEFMC, Santa Rita do Sapucaí – MG, Bacharel em Administração de Empresas (1992) pela FACECA, Varginha – MG, Bacharel em Ciência da Computação (2002) pelo UNIS, Varginha – MG, Pós-Graduação em Redes de Computadores (2003) pelo UNIS e mestrando em Engenharia Elétrica pela UNIFEI (Universidade Federal de Itajubá). Atua também como Supervisor Técnico do Departamento de Engenharia da EPTV Sul de Minas, emissora de televisão afiliada a Rede Globo e é professor das instituições UNIS e FACECA nos cursos de Sistemas de Informação, Ciência da Computação, Engenharia de Produção. 3 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 5. TABELA DE ÍCONES REALIZE. Determina a existência de atividade a ser realizada. Este ícone indica que há um exercício, uma tarefa ou uma prática para ser realizada. Fique atento a ele. PESQUISE. Indica a exigência de pesquisa a ser realizada na busca por mais informação. PENSE. Indica que você deve refletir sobre o assunto abordado para responder a um questionamento. CONCLUSÃO. Todas as conclusões, sejam de idéias, partes ou unidades do curso virão precedidas desse ícone. IMPORTANTE. Aponta uma observação significativa. Pode ser encarado como um sinal de alerta que o orienta para prestar atenção à informação indicada. HIPERLINK. Indica um link (ligação), seja ele para outra página do módulo impresso ou endereço de Internet. EXEMPLO. Esse ícone será usado sempre que houver necessidade de exemplificar um caso, uma situação ou conceito que está sendo descrito ou estudado. SUGESTÃO DE LEITURA. Indica textos de referência utilizados no curso e também faz sugestões para leitura complementar. APLICAÇÃO PROFISSIONAL. Indica uma aplicação prática de uso profissional ligada ao que está sendo estudado. CHECKLIST ou PROCEDIMENTO. Indica um conjunto de ações para fins de verificação de uma rotina ou um procedimento (passo a passo) para a realização de uma tarefa. SAIBA MAIS. Apresenta informações adicionais sobre o tema abordado de forma a possibilitar a obtenção de novas informações ao que já foi referenciado. REVENDO. Indica a necessidade de rever conceitos estudados anteriormente. 4 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 6. Índice de Figuras Figura 1 – Ábaco. ..................................................................................................... 14 Figura 2 – Bastões de Napier. .................................................................................. 14 Figura 3 – Régua de Cálculo. ................................................................................... 14 Figura 4 – Calculadora de Pascal............................................................................. 15 Figura 6 – Z3, fabricado em 1941 por Konrad Zuse. ................................................ 15 Figura 7 – Mark I, construído em 1944 pela Universidade de Harvard e a IBM........ 15 Figura 8 – Relé e Válvulas........................................................................................ 16 Figura 9 – ENIAC...................................................................................................... 17 Figura 10 – IBM 650. ................................................................................................ 17 Figura 11 – DEC PDP-1............................................................................................ 18 Figura 12 – IBM 7094. .............................................................................................. 18 Figura 13 – IBM 360. ................................................................................................ 19 Figura 14 – DEC PDP-11.......................................................................................... 19 Figura 15 – Microprocessadores Intel 386 e 486/DX2.............................................. 19 Figura 16 – Altair 8800.............................................................................................. 20 Figura 17 – Apple II. ................................................................................................. 20 Figura 18 – IBM/XT................................................................................................... 20 Figura 19 – Osborne I. .............................................................................................. 20 Figura 20 – Processadores: Intel Core 2 Extreme e AMD Athlon 64 X2 Dual-Core. 21 Figura 21 – Modelo de von Neuman......................................................................... 22 Figura 22 – Modelo de von Neuman (Estrutura em Barramento). ............................ 22 Figura 23 – Componentes de um Computador......................................................... 23 Figura 24 – Unidade Central de Processamento (CPU). .......................................... 24 Figura 25 – Hierarquia de Memórias. ....................................................................... 27 Figura 26 – Dispositivos de Entrada. ........................................................................ 28 Figura 27 – Dispositivos de Saída. ........................................................................... 28 Figura 28 – Dispositivos de Entrada e Saída............................................................ 28 Figura 29 – Disco Magnético. ................................................................................... 50 Figura 30 – Memórias RAM e Cache........................................................................ 53 Figura 31 – Diagrama em Blocos do SAP-1. ............................................................ 57 5 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 7. Figura 32 – Diagrama em Blocos do SAP-2. ............................................................ 69 Figura 33 – Utilização de tempo e circuito em um computador básico..................... 88 Figura 34 – Modificação para uma estrutura com pipeline. ...................................... 89 Figura 35 – Movimento da instrução na pipeline. ..................................................... 90 Figura 36 – Movimento da instrução e temporização da pipeline. ............................ 90 Figura 37 – Fluxo da instrução por meio do circuito de pipeline. .............................. 91 Figura 38 – Aumento da velocidade de um processador de von Neumann.............. 97 Figura 39 – Símbolo para um elemento de processamento genérico....................... 98 Figura 40 – Máquina de instrução única, segmento de dados único (SISD). ........... 98 Figura 41 – Máquina de instrução única, segmento de dados múltiplo (SIMD). ....... 99 Figura 42 – Máquina de instrução múltipla, segmento de dados único (MISD). ..... 100 Figura 43 – Máquina de instrução múltipla, segmento de dados múltiplo (MIMD).. 101 6 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 8. Índice de Tabelas Tabela 1 – Tabela de Medidas. ................................................................................ 29 Tabela 2 – Conversão de Base Numérica. ............................................................... 36 Tabela 3 – Porta NOT............................................................................................... 37 Tabela 4 – Porta OR. ................................................................................................ 38 Tabela 5 – Porta AND............................................................................................... 38 Tabela 6 – Porta NOR. ............................................................................................. 39 Tabela 7 – Porta NAND. ........................................................................................... 40 Tabela 8 – Porta XOR............................................................................................... 41 Tabela 9 – Porta XNOR. ........................................................................................... 42 Tabela 10 – Regras da Álgebra Booleana. ............................................................... 43 Tabela 11 – Conjunto de Instruções do SAP-1......................................................... 59 Tabela 12 – Códigos de Operação do SAP-1........................................................... 61 Tabela 13 – Conjunto de Instruções do SAP-2......................................................... 79 Tabela 14 – Ciclos de Clock / Utilização do Circuito................................................. 90 7 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 9. Sumário Apresentação .......................................................................................................... 11 1. INTRODUÇÃO ..................................................................................................... 12 1.1. Conceitos Básicos ...................................................................................... 12 1.2. Arquitetura X Organização ......................................................................... 12 1.3. Evolução Histórica das Arquiteturas de Computadores ............................. 13 1.3.1. Geração Zero (1642 - 1945) – Mecânicos e eletromecânicos............. 14 1.3.2. As Máquinas de Primeira Geração (1945 - 1955) – Válvulas .................. 16 1.3.3. As Máquinas de Segunda Geração (1955 - 1965) – Transistores .......... 17 1.3.4. As Máquinas de Terceira Geração (1965 - 1980) – Circuitos Integrados 18 1.3.5. As Máquinas de Quarta Geração (1980 - 1990) – Circuitos LSI.............. 19 1.3.6. As Máquinas de Quinta Geração (1990 - dias atuais) – Circuitos ULSI .. 20 1.3.7. O modelo de von Neumann ..................................................................... 22 1.4. Principais Componentes de um Computador................................................ 23 1.4.1. A Unidade Central de Processamento (CPU) ..................................... 23 1.4.2. Barramentos........................................................................................ 25 1.4.3. Clock ................................................................................................... 25 1.4.4. Memória Principal................................................................................ 26 1.4.5. Memória Cache ................................................................................... 26 1.4.6. Memória Secundária ........................................................................... 27 1.4.7. Dispositivos de Entrada e Saída (E/S ou I/O)...................................... 27 2. SISTEMAS DIGITAIS ........................................................................................... 29 2.1. O Bit, a Palavra, o Caractere, o Nibble e o Byte......................................... 29 2.2. Sistemas Numéricos................................................................................... 30 2.2.1. Sistema Decimal ................................................................................. 30 2.2.2. Sistema Binário ................................................................................... 31 2.2.2.1. Conversão de Binário em Decimal.................................................... 31 2.2.2.2. Conversão de Decimal em Binário.................................................... 32 Exercícios: Converta os valores para as bases indicadas. ............................ 33 2.2.3. Sistema Octal ...................................................................................... 33 8 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 10. 2.2.3.1. Conversão de Binário em Octal ........................................................ 33 2.2.3.2. Conversão de Octal em Binário ........................................................ 33 2.2.3.3. Conversão de Octal em Decimal....................................................... 34 2.2.3.4. Conversão de Decimal em Octal....................................................... 34 2.2.4. Sistema Hexadecinal........................................................................... 34 2.2.4.1. Conversão de Hexa em Binário ........................................................ 35 2.2.4.2. Conversão de Binário em Hexa ........................................................ 35 2.2.4.3. Conversão de Hexa nos demais sistemas e vice-versa .................... 35 2.3. Portas Lógicas............................................................................................ 36 2.3.1. Portas NOT (Inversoras) ..................................................................... 37 2.3.2. Portas OU (OR, + , ∨).......................................................................... 37 2.3.3. Portas E (AND, . , ∧)............................................................................ 38 2.3.4. Portas NÃO OU (NOR)........................................................................ 39 2.3.5. Portas NÃO E (NAND) ........................................................................ 39 2.3.6. Portas OU Exclusiva – XOU (XOR, ⊕) ................................................ 40 2.3.7. Portas NÃO OU Exclusiva – XNOU (XNOR, ).................................. 41 2.4. Álgebra Booleana e Mapa de Karnaugh..................................................... 42 2.4.1. Álgebra Booleana................................................................................ 42 2.4.1.1. Expressões Lógicas – Aplicações das Portas................................... 43 2.4.1.2. Simplificação de Expressões Lógicas ............................................... 44 2.4.2. Mapas de Karnaugh ............................................................................ 45 2.4.2.1. Regras para Minimização (Simplificação) ......................................... 46 2.5. Memórias.................................................................................................... 49 2.5.1. Memória de Massa.............................................................................. 50 2.5.2. Memória Semicondutora ..................................................................... 51 2.5.2.1. Memória ROM................................................................................... 51 2.5.2.2. Memória RAM .................................................................................. 52 3. MICROPROCESSADORES ................................................................................. 55 3.1. O Microprocessador SAP-1 ........................................................................ 55 3.1.1. Definição dos Blocos do SAP-1........................................................... 55 3.1.2. Diagrama em Blocos .............................................................................. 57 3.1.3. Conjunto de Instruções do SAP-1 ....................................................... 57 3.1.4. Programação do SAP-1 ...................................................................... 61 3.1.5. Análise do Diagrama Temporal (Fasorial) ........................................... 62 9 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 11. 3.2. O Microprocessador SAP-2 ........................................................................ 67 3.2.1. Definição dos Blocos do SAP-2............................................................. 67 3.2.2. Diagrama em Blocos .............................................................................. 69 3.2.3. Instruções do SAP-2................................................................................ 70 3.2.3.1. Instruções com Referência à Memória............................................. 70 3.2.3.2. Instruções de Registradores ............................................................ 70 3.2.3.3. Instruções de JUMPS (Saltos) ......................................................... 72 3.2.3.4. Instruções Lógicas ........................................................................... 75 3.2.3.5. Outras Instruções............................................................................. 76 3.2.4. Conjunto de Instruções do SAP-2............................................................ 78 3.3. A Linguagem Assembly.............................................................................. 85 3.3.1. Linguagem de Máquina ....................................................................... 85 3.3.2. Linguagem Assembly .......................................................................... 85 3.3.3. Linguagem de Alto Nível ..................................................................... 86 3.3.4. Vantagens e Desvantagens da Linguagem Assembly ........................ 86 3.3.5. Aplicações da Linguagem Assembly................................................... 86 3.3.6. Programa Debug ................................................................................. 87 3.4. A Técnica do Pipeline................................................................................. 87 3.5. Arquiteturas CISC e RISC .......................................................................... 94 3.5.1. Máquinas CISC ................................................................................... 94 3.5.2. Máquinas RISC ................................................................................... 95 3.5.3. Computadores Modernos .................................................................... 96 3.6. Conceitos Básicos em Processamento Paralelo ........................................ 96 3.6.1. Classificação de Máquinas Paralelas.................................................. 98 3.6.1.1. SIMD ................................................................................................ 99 3.6.1.2. MISD .............................................................................................. 100 3.6.1.3. MIMD.............................................................................................. 100 REFERÊNCIAS ...................................................................................................... 102 10 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 12. Apresentação Tenha em mente que tudo que você aprende na escola é trabalho de muitas gerações. Receba essa herança, honre-a, acrescente a ela e, um dia, fielmente, deposite-a nas mãos de seus filhos. Albert Einstein Prezado(a) aluno(a): Este é o seu Guia de Estudos da disciplina de Arquitetura e Organização de Computadores, ministrada para o curso de Bacharelado em Sistemas de Informação pelo Centro Universitário do Sul de Minas – UNIS-MG. Ele será utilizado no desenvolvimento da disciplina, apresentando os conteúdos e demais informações para que você realize as atividades programadas. O estudo de Arquitetura e Organização de Computadores apresenta a estrutura interna de um microprocessador e as várias técnicas utilizadas na sua construção. Este conhecimento irá ajudá-lo a entender melhor o funcionamento de um sistema operacional, e você terá uma idéia de como as instruções são, fisicamente, executadas na implementação de programas computacionais, apesar da abstração do hardware que as modernas linguagens de programação proporcionam. Porém, antes de estudarmos o funcionamento dos microprocessadores, veremos os conceitos básicos de sistemas digitais. O estudo de sistemas digitais exige o domínio de outros sistemas de numeração além do decimal, que usamos no nosso cotidiano. Assim inicialmente estudaremos os sistemas binário, octal e hexadecimal. Então iremos projetar sistemas digitais, usando dispositivos lógicos, metodologias e técnicas empregadas no desenvolvimento de circuitos digitais que podem ser usadas em outras situações como, por exemplo, em programação. Darei uma especial atenção à fixação destes conceitos uma vez que, se não forem bem assimilados, poderão comprometer o seu desempenho no decorrer da disciplina. Trata-se de uma disciplina básica, diretamente inserida no escopo do curso. O conhecimento da Arquitetura e Organização de Computadores será empregado em diversas áreas de estudo do curso como: Linguagens e Técnicas de Programação, Sistemas Operacionais, Estrutura de Dados, Redes de Computadores, etc. A minha expectativa é mostrar a relação entre hardware e software focalizando conceitos que são a base dos atuais computadores e apresentar os paradigmas organizacionais que determinam a capacidade e o desempenho de sistemas de computação. Acredito que o curso de Sistemas de Informação esteja sendo um período de desenvolvimento intelectual e de crescimento pessoal e desejo que esta disciplina contribua para o seu sucesso profissional, portanto, mãos à obra. José Eduardo Silva Gomes Professor de Arquitetura e Organização de Computadores 11 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 13. 1. INTRODUÇÃO A mente que se abre a uma nova idéia jamais voltará ao seu tamanho original. Albert Einstein Neste primeiro capítulo, você encontrará os conceitos básicos da arquitetura e organização de computadores e um breve histórico sobre os computadores. Para finalizar o tópico, serão apresentados os principais componentes de um computador. 1.1. Conceitos Básicos A Arquitetura de Computadores trata do comportamento funcional de um sistema computacional do ponto de vista do programador. Tamanho de um tipo de dados – 32 bits para um inteiro. A Organização de Computadores trata da estrutura interna que não é visível para o programador. Freqüência do relógio (clock) ou tamanho da memória física. Existe um conceito de níveis na arquitetura de computadores. A idéia básica é que existem muitos níveis nos quais o computador pode ser considerado, do nível mais alto, onde o usuário executa programas, ao nível mais baixo, que consiste de transistores e fios (MURDOCCA, 2000). 1.2. Arquitetura X Organização Arquitetura: são os atributos visíveis para o programador: conjunto de instruções; número de bits utilizado para a representação de dados; mecanismos de E/S; técnicas de endereçamento. 12 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 14. Existe uma instrução de divisão? Quais os formatos de endereçamento existentes? Organização: como as características da arquitetura são implementadas: sinais de controle disponíveis; interfaces; tecnologias de memória. como o conjunto de instruções é executado. Existe uma unidade para divisão ou a divisão é feita por subtrações sucessivas? Toda a família Intel X86 possui a mesma arquitetura básica. A organização é diferente de uma máquina para outra dentro da mesma família. Ter a mesma arquitetura garante a compatibilidade do código. 1.3. Evolução Histórica das Arquiteturas de Computadores O computador se desenvolveu paralelamente à necessidade crescente de cálculos rápidos e exatos da humanidade. Os ancestrais do computador remontam a mais de 3000 anos. O primeiro elemento com que o homem contou para fazer seus cálculos foi o conjunto de dedos de suas mãos, daí a palavra digital deriva de dígito, que por sua vez procede do latim digitus, significando dedo. Com a evolução da humanidade, fizeram-se necessárias novas invenções para auxiliar os cálculos. Ábaco (aproximadamente 2500 a.C.). Bastões de Napier (1610 - 1614). Réguas de Cálculo (1621). 13 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 15. Figura 1 – Ábaco. Figura 2 – Bastões de Napier. Figura 3 – Régua de Cálculo. 1.3.1. Geração Zero (1642 - 1945) – Mecânicos e eletromecânicos O primeiro a construir uma máquina de calcular foi o filósofo e matemático francês Blaise Pascal em 1642. Essa máquina era inteiramente mecânica e só somava e subtraía. A linguagem de programação PASCAL é assim chamada em homenagem a esse cientista. Trinta anos mais tarde, surge um filósofo e matemático alemão chamado Leibnitz que cria uma máquina que realizava as quatro operações. No século XIX, o matemático inglês Charles Babbage construiu sua máquina de diferenças que calculava tabelas úteis à navegação naval, mais tarde construiu a máquina analítica que possuía quatro componentes: o armazenamento (memória), o engenho (unidade de cálculo), a seção de entrada (leitora de cartões perfurados) e a seção de saída (saída perfurada e impressa). Uma vez que essa máquina era programável, ele contrata a 1ª programadora da história chamada Ada Lovelace cujo nome serviu para a moderna linguagem de programação, ADA, desenvolvida para o departamento de defesa dos EUA. Em 1889, Herman Hollerith desenvolveu o cartão perfurado para guardar os dados e também uma máquina tabuladora mecânica, acionada por um motor elétrico, que contava, classificava e ordenava informações armazenadas em cartões perfurados. Ele fundou a empresa Tabulating Machines Corporation que, em 1924, transformou- se na famosa IBM (International Business Machines). Konrad Zuse (Alemanha) construiu durante a década de 1930 uma série de máquinas de calcular baseadas em relés eletromagnéticos, mas a Segunda Guerra Mundial impediu o seu avanço e ainda causou a sua destruição. Howard Aiken 14 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 16. (Estados Unidos da América) construiu em 1944 uma máquina de propósito geral chamada Mark I, baseada no trabalho de Babbage, mas que usava relés eletromagnéticos no lugar de engrenagens. Figura 4 – Calculadora de Pascal. Figura 5 – Máquina Diferencial de Babbage. Figura 6 – Z3, fabricado em 1941 por Konrad Zuse. Figura 7 – Mark I, construído em 1944 pela Universidade de Harvard e a IBM. 15 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 17. 1.3.2. As Máquinas de Primeira Geração (1945 - 1955) – Válvulas Os computadores de primeira geração eram baseados em tecnologias de relés e válvulas eletrônicas. Eles normalmente quebravam após não muitas horas de uso. Tinham dispositivos de entrada/saída primitivos, calculavam com uma velocidade só de milésimos de segundo e eram programados em linguagem de máquina. Figura 8 – Relé e Válvulas. Os cartões perfurados foram o principal meio usado para armazenar os arquivos de dados e para carregá-los no computador. A grande utilidade dessas máquinas era o processamento de dados. No entanto tinham uma série de desvantagens como: custo elevado, relativa lentidão, pouca confiabilidade, grande quantidade de energia consumida e necessitavam de grandes instalações de ar condicionado para dissipar o calor gerado por um alto número de válvulas (cerca de 20 mil). A Segunda Grande Guerra estava no seu auge e a demanda por computadores cada vez mais rápidos vinha crescendo. Os britânicos criavam a menos famosa Colossus para decifrar os códigos nazistas, e, em 1945, os americanos apresentavam o ENIAC (Eletronic Numerical Integrator and Calculator). O modelo utilizava válvulas eletrônicas e os números eram manipulados na forma decimal. Apesar da alta velocidade para a época, era extremamente difícil mudar as instruções contidas dentro do computador, já que a programação era feita por meio de válvulas e fios que eram trocados de posição de acordo com o que se desejava. O sucessor do ENIAC foi o EDVAC (Electronic Discrete Variable Computer), apesar de ser mais moderno, não diminuiu de tamanho e ocupava 100% do espaço que o ENIAC ocupava. Todavia ele era dotado de cem vezes mais memória interna que o ENIAC - um grande salto para a época. Um outro grande avanço do EDVAC foi o abandono do modelo decimal e a utilização dos códigos binários, reduzindo drasticamente o número de válvulas. Baseado na revolucionária teoria de von Neumann, em 1951, foi construído o UNIVAC I (Universal Automatic Computer) era bem menor que seus predecessores. Tinha "apenas" vinte metros quadrados e cerca de cinco toneladas. O computador recebia as instruções de cartões magnéticos e não mais de cartões perfurados. Foram produzidas quinze unidades do UNIVAC I e ele foi o primeiro computador comercial da história. O computador IBM 650 foi disponibilizado publicamente nos USA pela IBM em dezembro de 1954. Media 1,5 m X 0,9 m X 1,8 m e tinha uma massa de 892 Kg. O 16 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 18. IBM 650 era indicado para resolver problemas comerciais e científicos. A empresa projetou a venda de 50 exemplares do computador (mais do que todos os computadores do mundo juntos) - o que foi considerado um exagero. Apesar do pessimismo, em 1958, duas mil unidades do IBM 650 estavam espalhadas pelo mundo. Figura 9 – ENIAC. Figura 10 – IBM 650. 1.3.3. As Máquinas de Segunda Geração (1955 - 1965) – Transistores Em 1948, surgiu um novo componente que apresentava inúmeras vantagens em relação às antigas válvulas: ele tinha características como menor aquecimento, maior poder de cálculo e confiabilidade e um consumo de energia bem menor - com o adicional de que não necessitava de tempo para aquecer. A Bell Laboratories inventava o transistor. Os cálculos passaram a ser medidos de segundos para microssegundos. As linguagens utilizadas para esses computadores eram normalmente a FORTRAN, COBOL ou ALGOL. A partir desse momento, devido à maior facilidade e praticidade do transistor, muitos modelos de computador surgiram. O primeiro modelo de computador 100% transistorizado foi o TRADIC, da Bell Laboratories. Outro modelo dessa época era o IBM 1401, com uma capacidade memória base de 4.096 bytes operando em ciclos de memória de 12 microssegundos. A instalação de um IBM 1401 ocupava uma sala, e o tamanho dos computadores ainda era bastante grande. Existiam também outros modelos, como o sofisticado IBM 7094. O IBM TX-0, de 1958, tinha um monitor de vídeo de alta qualidade, além de ser rápido e relativamente pequeno. A Digital Equipment Corporation (DEC) tinha então uma posição proeminente no setor com sua linha PDP. O primeiro minicomputador foi o PDP-1, criado em 1959 e instalado em 1961. No entanto, os elevados custos destas máquinas restringiam sua utilização a aplicações estratégicas do governo, grandes empresas e universidades. 17 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 19. Figura 11 – DEC PDP-1. Figura 12 – IBM 7094. 1.3.4. As Máquinas de Terceira Geração (1965 - 1980) – Circuitos Integrados A terceira geração inicia-se com a introdução dos circuitos integrados (transistores e outros componentes eletrônicos miniaturizados e montados numa única pastilha de silício - o chip), aos computadores. Com esses circuitos integrados, o tempo passou a ser medido em nanosegundos (bilionésimos de segundos). A tecnologia utilizada, na época, era a de pequena escala de integração (SSI – Small Scale of Integration) com a qual ao redor de mil transistores podiam-se integrar no circuito de uma pastilha. Com isso os computadores eram menores, mais confiáveis, com maior velocidade de operação e um custo bem mais baixo do que as máquinas das gerações anteriores. Também eram usados discos magnéticos para armazenamento, o que permitiu o acesso direto a arquivos muito grandes. Os custos de produção de um computador começavam a cair, atingindo uma faixa de mercado que abrangia empresas de médio porte, centros de pesquisa e universidades menores. O Burroughs B-2500 foi um dos primeiros modelos dessa geração. O PDP-5, produzido pela DEC, foi o primeiro minicomputador comercial e o INTEL 4004 o primeiro microprocessador. O exemplo típico dessa geração foi o IBM 360, série que introduziu o conceito de família de computadores compatíveis, facilitando a migração dos sistemas quando é necessário mudar para um computador mais potente. Esta estratégia permitiu que a IBM se posicionasse, já neste período, como líder do mercado de computadores. Outros computadores desta geração que conheceram grande sucesso, particularmente nas universidades e centros de pesquisa, foram os minicomputadores da série PDP-11. Mais uma novidade introduzida por esta classe de computadores foi o conceito de multiprogramação, na qual diversos programas poderiam estar residentes na memória da máquina. No caso em que um programa entrasse em espera para uma operação de entrada/saída de dados, a unidade central passava a executar a parte de um outro programa. 18 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 20. Figura 13 – IBM 360. Figura 14 – DEC PDP-11. 1.3.5. As Máquinas de Quarta Geração (1980 - 1990) – Circuitos LSI Ainda mais avançados que os circuitos integrados, eram os circuitos LSI (Large Scale of Integration) com mil transistores por "chip" e VLSI (Very Large Scale of Integration) com cem mil transistores por "chip". O uso desses circuitos na construção de processadores representou outro salto na história dos computadores. As linguagens mais utilizadas eram a PROLOG, FP, UNIX e o início da utilização da linguagem C. Logo em 1981, nasce o microprocessador 286 utilizando slots ISA de 16 bits e memórias de 30 pinos. Quatro anos mais tarde, era a vez do 386, com maior velocidade de processamento. Ao contrário do 286, era possível rodar o Windows 3.11 no 386. Introduziram-se, no mercado, as placas VGA e suporte a 256 cores. Em 1989, eram lançados os primeiros 486 DX, eles vinham com memórias de 72 pinos (muito mais rápidas que as antigas de 30 pinos) e possuíam slots PCI de 32 bits - o que representava o dobro da velocidade dos slots ISA. Figura 15 – Microprocessadores Intel 386 e 486/DX2. Desde o início da década de 80, os preços haviam caído de tal maneira que começava ser possível a uma pessoa ter o seu próprio computador. Foi cunhado o conceito de "PC", ou "Personal Computer", e os computadores pessoais passaram a ser utilizados de uma maneira relativamente distinta dos grandes computadores de então. O primeiro microcomputador da história foi o Altair 8800, que usava o chip Intel 8088, tornou-se o padrão mundial da época para os microcomputadores de uso pessoal, abrindo uma nova era na história da informática. Sthephen Wozniak e Steve Jobs criaram, em 1976, uma pequena empresa, a Apple, quando construíram, numa garagem de fundo de quintal, o Apple I. Um ano depois, com um novo e melhor projeto, surge o Apple II, primeiro microcomputador com 19 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 21. grande sucesso comercial e, mais tarde, o Apple III. Em 1983, entra no mercado o Lisa e, em 1984, o Macintosh, com tecnologia de 32 bits. Figura 16 – Altair 8800. Figura 17 – Apple II. Em 1981, a IBM entrou no mercado de micros, introduzindo o PC, um microcomputador com tecnologia de 16 bits (Intel 8088) que em pouco tempo se tornou um padrão. O PC/XP usava o sistema operacional PC/MS-DOS, uma versão do MS-DOS desenvolvida para a IBM pela Microsoft. Além disso, diversos modelos e estilos foram sendo lançados nessa época: Lotus 1- 2-3, Sinclair ZX81/ZX Spectrum, Osborne1, etc. Figura 18 – IBM/XT. Figura 19 – Osborne I. 1.3.6. As Máquinas de Quinta Geração (1990 - dias atuais) – Circuitos ULSI As aplicações exigem cada vez mais uma maior capacidade de processamento e armazenamento de dados. Sistemas especialistas, sistemas multimídia (combinação de textos, gráficos, imagens e sons), banco de dados distribuídos e redes neurais, são apenas alguns exemplos dessas necessidades. Uma das principais características dessa geração é a simplificação e miniaturização do computador, além de melhor desempenho e maior capacidade de armazenamento. Tudo isso, com os preços cada vez mais acessíveis. A tecnologia VLSI foi substituída pela ULSI (Ultra Large Scale Integration). O conceito de processamento está partindo para os processadores paralelos, ou seja, 20 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 22. a execução de muitas operações simultâneas pelas máquinas. A redução dos custos de produção e do volume dos componentes permitiu a aplicação destes computadores nos chamados sistemas embutidos, que controlam aeronaves, embarcações, automóveis e computadores de pequeno porte. Os micros que utilizam a linha de processadores Pentium, da Intel, são exemplos desta geração de computadores que surgiu em 1993. As grandes mudanças neste período ficariam por conta das memórias DIMM de 108 pinos, do aparecimento das placas de vídeo AGP e de um aprimoramento da slot PCI melhorando ainda mais seu desempenho. Em 1997 surge o Pentium II, em 1999 o Pentium III, em 2001 o Pentium 4 e mais recentemente os processadores da nova microarquitetura Intel Core, com processadores com mais de um núcleo em um único encapsulamento (sem contar os modelos similares da concorrente AMD). Figura 20 – Processadores: Intel Core 2 Extreme e AMD Athlon 64 X2 Dual-Core. Enfim, a informática evolui cada vez mais rapidamente e as velocidades de processamento dobram em períodos cada vez mais curtos. Para se ter uma noção disso, basta observar que entre os modelos de computador mais antigos, os espaçamentos entre uma novidade e outra eram de dezenas de anos, sendo que hoje não chega a durar nem um mês. Isso nos leva a concluir que o avanço científico e do poder de cálculo avança de maneira que não se encontra paralelo na história humana, barateando os custos e tornando acessíveis os computadores às pessoas de baixa renda. Quem sabe uma nova geração de computadores não está por vir? Alguns falam em processadores quânticos quando os limites da miniaturização do silício forem atingidos, enquanto outros falam em moléculas de água armazenando informações - mas o fato é que coisas novas vão surgir e novas gerações deixarão a atual tão longe e ultrapassada como está a segunda para nós. Mesmo rompendo recentemente a barreira dos terabytes, a evolução dos computadores ainda está longe de terminar. Leia, no Ambiente Virtual de Aprendizagem, na Midiateca, a apresentação “Uma Breve História da Computação”. Material baseado em uma compilação da Profa. Dra. Rosely Sanches. 21 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 23. Pesquise a respeito das especificações técnicas (memória, processamento, barramento, clock, instruções, etc.) dos computadores de 1ª a 5ª geração. Faça um pequeno relatório com as especificações técnicas de uma máquina de cada geração. 1.3.7. O modelo de von Neumann A grande maioria dos computadores existentes atualmente segue um modelo proposto pelo matemático americano John von Neumann por volta de 1940. Nesse modelo, um elemento processador segue as instruções armazenadas em uma memória de programas, para ler canais de entrada, enviar comandos sobre canais de saída e alterar as informações contidas em uma memória de dados. A Figura 21 indica a estrutura desse modelo. Figura 21 – Modelo de von Neuman. Esse modelo inicial evoluiu para uma estrutura em barramento (Figura 22), que é a base dos computadores modernos. Nessa estrutura, as memórias de dados e de programa são fundidas em uma memória única, e as comunicações entre elementos são efetuadas através de uma via comum de alta velocidade. Figura 22 – Modelo de von Neuman (Estrutura em Barramento). Uma variante do modelo básico de máquinas von Neumann é denominado de máquinas Harvard, no qual há vias separadas para dados e instruções entre 22 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 24. memória principal e CPU. A origem do termo vem dos computadores Mark I a Mark IV, desenvolvidos em Harvard, com memórias de dados e instruções separadas. 1.4. Principais Componentes de um Computador Existem três elementos fundamentais em um sistema computacional, cada um executando uma tarefa especial. Estes elementos são: 1. A Unidade Central de Processamento (CPU). 2. A Memória Principal. 3. Os Dispositivos ou Portas de Entradas e Saídas (I/O). Figura 23 – Componentes de um Computador. 1.4.1. A Unidade Central de Processamento (CPU) A CPU, ou processador, tem como função principal unificar todo o sistema, controlando as funções realizadas por cada unidade funcional. A CPU executa o processamento numérico, as operações lógicas e as funções de temporização. As operações da CPU são controladas por um conjunto de instruções que, quando organizadas em uma seqüência lógica, formam o chamado programa. Os programas e os dados a serem manipulados obrigatoriamente deverão estar armazenados na memória principal. A CPU é alimentada com dados e sinais de controle, executa uma instrução por vez e produz como saída dados e sinais de controle. 23 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 25. Internamente, uma CPU é formada por 3 unidades fundamentais: 1. Os Registradores. 2. A Unidade Lógica e Aritmética (ULA). 3. O Circuito de Controle. Figura 24 – Unidade Central de Processamento (CPU). Registradores – são dispositivos de alta velocidade para armazenamento temporário de dados. Os registradores, geralmente numerosos, são utilizados para assegurar o armazenamento temporário de informações importantes para o processamento de uma determinada instrução. Um registrador memoriza um número limitado de bits, geralmente uma palavra de memória. Os registradores mais importantes são: • Contador de Programa (PC - Program Counter), que aponta para a próxima instrução a ser executada. • Registrador de Instrução (IR - Instruction Register) que armazena a instrução em execução. • Outros registradores que permitem o armazenamento de resultados intermediários. Unidade Lógica e Aritmética (ALU) – assume todas as tarefas relacionadas às operações lógicas (ou, e, negação, etc.) e aritméticas (adições, subtrações, etc...) a serem realizadas no contexto de uma tarefa. Unidade de Controle – coordena todas as atividades do microprocessador. É esta unidade que assume toda a tarefa de controle das ações a serem realizadas pelo computador, comandando todos os demais componentes de sua arquitetura. Através de pulsos externos de temporização chamados "clocks", o circuito de controle gera as seqüências apropriadas de eventos necessários à execução das tarefas de processamentos. 24 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 26. 1.4.2. Barramentos A CPU, a memória principal e os dispositivos de I/O são interligados por meio de linhas de comunicação denominadas barramentos ou vias. Um barramento (bus) é um conjunto de fios paralelos (linhas de transmissão), nos quais trafegam informações como dados, endereços ou sinais de controle. Os dados trafegam na CPU, memória e I/O através de via de dados. Estes dados poderão ser instruções para CPU ou informações da CPU para portas I/O e vice- versa. A via de endereço é utilizada pela CPU para selecionar uma célula de memória ou um dispositivo I/O por meio de um código binário. A via de controle conduz os sinais de controle para a memória e para os dispositivos I/O, especificando as direções dos dados em relação à CPU, o momento exato da transferência, o tipo de operação, etc. Se um processador quiser armazenar um dado 10101100b no endereço 5h, ele deverá colocar, no barramento de dados, o valor do dado (10101100b), no barramento de endereços, o valor do endereço (5h) e, no barramento de controle, confirmar que se trata de uma operação de escrita em memória. Tudo isso é feito simultaneamente e é transparente ao usuário. 1.4.3. Clock Clock é um circuito oscilador que tem a função de sincronizar e ditar a medida de velocidade de transferência de dados no computador, por exemplo, entre o processador e a memória principal. Esta freqüência é medida em ciclos por segundo, ou Hertz. Existe a freqüência própria do processador, comandando operações internas a ele e a freqüência do computador a ele associado, basicamente ciclos CPU-Memória principal. Os processadores Pentium-100, Pentium MMX-233, Pentium II-300 acessam a memória principal a 66 MHz. Suas freqüências respectivas de 100, 233 e 300 MHz são atingidas, tão somente, no interior do chip. Dizem respeito, portanto, ao processamento interno do processador e não à freqüência na relação CPU-Memória do computador. Já o processador Pentium II-350 tem uma freqüência externa de 100 MHz, acarretando um desempenho melhor do microcomputador, tanto no processamento propriamente dito quanto nas operações de disco e vídeo. 25MHz são 25 milhões de ciclos por segundo. A duração de um ciclo, seu período, é o inverso da freqüência, então cada ciclo será o inverso de 25.000.000 ou 1/25.000.000 = 0,00000004 ou 40x10-9 = 40 ηseg. 25 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 27. 1.4.4. Memória Principal É o componente do sistema com a função de armazenar informações que são, foram ou serão manipuladas pelo processador. Ela é conhecida também como primária e é formada por dois tipos de memória: RAM (Random Access Memory) – Memória de Acesso Aleatório e a ROM (Read Only Memory) – Memória Somente de Leitura. Atualmente, os microcomputadores possuem memória principal (RAM) de 256MB (Mega Bytes) a 2GB (Giga Byte). A RAM é uma memória volátil, porém há uma pequena parte da memória principal composta por memória não volátil (ROM) que armazenamos instruções que são sempre executadas quando o computador é ligado. O software gravado na ROM recebe o nome de firmware. Eles são basicamente três: • BIOS (Basic Input/Outpu System) – Conjunto de instruções básicas de software que permite ao processador trabalhar com periféricos básicos. • POST (Power-On Self Test) – Autoteste de inicialização, realizado sempre que o computador é inicializado. • SETUP – Programa de configuração do hardware do computador. 1.4.5. Memória Cache A memória cache é uma memória volátil de alta velocidade normalmente integrada aos processadores. O tempo de acesso a um dado nela contido é muito menor que se fosse buscá-lo diretamente na memória principal. Este tempo é de 10 a 25ηs e normalmente sua capacidade varia de 256KB, 512KB e 1MB. Toda vez que o processador faz referência a um dado armazenado na memória principal, ele “olha” antes na memória cache. Se o processador encontrar o dado na cache, não há necessidade do acesso à memória principal; do contrário, o acesso é obrigatório. • 30% mais lento para processamento. Um computador sem cache: • 20% mais lento para acesso a disco. • 10% mais lento para acesso a vídeo. Imagine a memória RAM como uma mesa do outro lado da sala. Quando você vai pegar uma informação lá, por exemplo, um número de telefone, você vai anotá-lo para trazê-lo para sua mesa. Por quê? Se você precisar do mesmo número de telefone outra vez, não vai precisar se levantar e buscá-lo na outra mesa, só precisa ler no papel perto de você. 26 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 28. 1.4.6. Memória Secundária Conhecida também como memória auxiliar ou memória de massa é um meio permanente (não volátil) de armazenamento de programas e dados. Enquanto a memória principal precisa estar sempre energizada para manter suas informações, a memória secundária não precisa de alimentação. A memória secundária pode ser constituída por diferentes tipos de dispositivos, alguns diretamente ligados ao sistema para acesso imediato, como no caso dos discos rígidos (HDs), e outros que podem ser conectados quando desejado (disquetes, fitas, CD-ROM, DVD, etc.). O acesso à memória secundária é lento se comparado com o acesso à memória cache ou à principal, porém seu custo é baixo e sua capacidade de armazenamento é bem superior à da memória principal. O tempo de acesso/ciclo de memória é alto devido a esses dispositivos serem, em geral, eletromecânicos e não circuitos puramente eletrônicos. HDs de 5 a 40ms, CD-ROM de 120 a 300 ms e fitas magnéticas na ordem de segundos. Figura 25 – Hierarquia de Memórias. 1.4.7. Dispositivos de Entrada e Saída (E/S ou I/O) Os dispositivos de entrada e saída, também conhecidos por periféricos, são utilizados para permitir a comunicação entre o computador e mundo externo. Através desses dispositivos, o computador pode armazenar, ler, transmitir e receber dados. Dentre os diversos dispositivos de E/S, existem alguns que são especializados apenas em ENTRADA, outros especializados apenas em SAÍDA e outros em ENTRADA e SAÍDA. 27 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 29. Entrada: teclado, mouse, microfone, scanner, caneta óptica, mesa digitalizadora, leitora de códigos de barras, leitora de cartão magnético, joystick, câmera de vídeo, sensores, etc. Saída: monitor de vídeo, projetor de vídeo, impressora, plotadora, caixa de som, controladores, etc. Entrada e Saída: drive de disquete (floppy disk), disco rígido (HD), modem, placa de rede, leitor e gravador de CD/DVD, pen drive, etc. Figura 26 – Dispositivos de Entrada. Figura 27 – Dispositivos de Saída. Figura 28 – Dispositivos de Entrada e Saída. 28 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 30. 2. SISTEMAS DIGITAIS Os computadores são equipamentos eletrônicos digitais, portanto toda a informação a ser armazenada, movimentada e processada internamente deverá ser transformada para o código binário, ou seja, usam apenas DUAS grandezas, representadas pelos algarismos 0 e 1. 2.1. O Bit, a Palavra, o Caractere, o Nibble e o Byte A menor unidade de informação armazenável em um computador é o algarismo binário ou dígito binário, conhecido como bit (binary digit). O bit assume dois valores: 0 e 1. O menor grupo ordenado de bits representando uma informação útil e inteligível para o ser humano é o caracter. Cada sistema poderá definir como cada conjunto de bits irá representar um determinado caractere, quantos bits e como se organizam. O conjunto de 4 bits é chamado de nibble, termo pouco empregado. O conjunto de 8 bits foi definido pela primeira vez pela IBM e é chamado de byte. Daí em diante, todos os fabricantes adotam o mesmo padrão até os dias de hoje. A palavra é o conjunto de bits que representa uma informação útil e está relacionada com o armazenamento e a transferência de informações entre a Memória Principal e a CPU. Portanto a palavra é um conjunto de bytes. Um computador com uma palavra de 32 bits tem 4 bytes/palavra. As operações de armazenamento e recuperação de dados na memória são feitas byte a byte ou palavra a palavra, portanto é comum mencionarmos o tamanho de uma memória em termos de bytes. Para representar valores maiores, utilizaremos o sistema métrico de grandeza, com algumas adaptações para os computadores. Sufixo Quantidade Kilo (K) 1 Kilobytes ou 1 KB = 1024 = 210 Mega (M) 1 Megabytes ou 1 MB = 1.048.576 = 220 Giga (G) 1 Gigabytes ou 1 GB = 1.073.741.824 = 230 Tera (T) 1 Terabytes ou 1 TB = 1.099.511.627.776 = 240 Peta (P) 1 Petabytes ou 1 PB = 1.125.899.906.843.624 = 250 Exa (E) 1 Exabytes ou 1 EB = 1.152.921.504.607.870.976 = 260 Tabela 1 – Tabela de Medidas. 29 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 31. Devemos ter cuidado para não cometermos falsos arredondamentos. 65.536, por exemplo, representa, em binário, 64 K (e não 65 K, como parece), assim como 157.286.400 representa 150 M (e não 157 M). (TORRES, 1999). 2.2. Sistemas Numéricos Sistemas numéricos são sistemas de notação usados para representar quantidades abstratas denominadas números. Um sistema numérico é definido pela base que utiliza. A base de um sistema é o número de símbolos diferentes, ou algarismos, necessários para representar um número qualquer. O sistema decimal, utilizado hoje de forma universal, utiliza dez símbolos diferentes ou dígitos para representar um número e é, portanto, um sistema numérico na base 10. Os computadores utilizam a base 2 (sistema binário) e os programadores, por facilidade, usam em geral uma base que seja uma potência de 2, tal como 24 (base 16 ou sistema hexadecimal) ou eventualmente ainda 23 (base 8 ou sistema octal). Se na base 10, dispomos de 10 algarismos para a representação do número: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Na base 2, seriam apenas 2 algarismos: 0 e 1. Na base 16, seriam 16: os 10 algarismos aos quais estamos acostumados, mais os símbolos A, B, C, D, E e F, representando respectivamente 10, 11, 12, 13, 14 e 15 unidades. Generalizando, temos que uma base b qualquer disporá de b algarismos, variando entre 0 e (b-1). 2.2.1. Sistema Decimal Entre os sistemas numéricos existentes, o sistema decimal é o mais utilizado. Os símbolos ou dígitos utilizados são os algarismos 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Os elementos são agrupados de dez em dez e, por essa razão, os números podem ser expressos por intermédio de potência de dez e recebem o nome de sistema de numeração decimal. 486 = 400 + 80 + 6 = 4 x 100 + 8 x 10 + 6 x 1 = 4 x 102 + 8 x 101 + 6 x 100, ou seja, 486 = 4 x 102 + 8 x 101 + 6 x 100. 30 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 32. Observe que o número 4 está numa posição tal que seu peso é igual a 2 e que o número 6, por sua vez, tem o peso igual a zero. Então podemos concluir que o algarismo ou dígito, dependendo do seu posicionamento, terá um peso. Note que aquele situado na extrema esquerda do número está sendo multiplicado pela potência de dez maior, ou seja, é o dígito mais significativo (most significant digit – MSD). Analogamente, o que está situado na extrema direita será multiplicado pela menor potência, ou seja, é o dígito menos significativo (least significant digit – LSD). a) O princípio de posicionamento, que formula o expoente da base 10, pode ser estendido a qualquer sistema numérico, ou seja, independe da base numérica em que está representado. b) Por ser o sistema padrão de uso (é o sistema que utilizamos em nosso dia-a-dia), o sistema decimal não necessita de representação de base, a fim de simplificação de escrita. 2.2.2. Sistema Binário Como o próprio nome já indica tem base 2, pois utiliza apenas dois símbolos ou algarismos: 0 e 1. Também vale ressaltar que, em processamentos digitais, o dígito 1 também é conhecido por nível lógico 1, nível lógico alto, ligado, verdadeiro e energizado. Já o dígito 0 pode ser nível lógico 0, nível lógico baixo, desligado, falso e desenergizado. Assim, a cada posição de cada algarismo corresponde uma potência de 2, como foi exposto para número decimal, ao qual correspondia uma potência de 10. 2.2.2.1. Conversão de Binário em Decimal É o mesmo processo já estudado para base 10, ou seja: 10111(2) = 1x24 + 0x23 + 1x22 + 1x21 + 1x20 = 16 + 0 + 4 + 2 + 1 = 23, ou seja, 10111(2) = 23(10) ou 10111(2) = 23 31 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 33. Como os dígitos binários são chamados de bit, da mesma forma como falamos no sistema decimal, dependendo do posicionamento o algarismo ou bit terá um peso; o da extrema esquerda será o bit mais significativo (most significant bit – MSB) e o da extrema direita o bit menos significativo (least significant bit – LSB). 43210 1 1 0 1 1(2) = 1x24 + 1x23 + 0x22 + 1x21 + 1x20 = 16 + 8 + 0 + 2 + 1 = 27 MSB LSB 2.2.2.2. Conversão de Decimal em Binário Na conversão decimal-binário, podem ser utilizados dois métodos: o primeiro que é mais geral, dito das divisões sucessivas, consiste em dividir sucessivamente o número por 2 até obtermos o cociente 0 (zero). O resto dessa divisão colocado na ordem inversa corresponde ao número binário correspondente ao decimal dado. 54 = ?(2) 54 = 1 1 0 1 1 0 (2) O segundo método de conversão consiste em, começando como número decimal a ser convertido, extrair a maior potência de 2 (menor ou igual) possível. Repetindo este processo para o resto dessa subtração até que o resto seja zero. Concluindo, marque com o dígito 1 os expoentes utilizados e com o dígito zero os expoentes não utilizados. 54 = ?(2) 256 128 64 32 16 8 4 2 1 54 – 32 = 22 22 – 16 = 6 6–4=2 2–2=0 Portanto nós utilizamos as potências 32=25, 16=24, 4=22 e 2=21, ou seja: 5 4 3 2 1 0 32 16 8 4 2 1 Resposta = 1 1 0 1 1 0 (2) 32 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 34. Este método, evidentemente, exige um pouco mais de raciocínio, devido ao problema de memorização das potências de dois e subtrações. Exercícios: Converta os valores para as bases indicadas. a) 111011(2) = ? b) 110110(2) = ? c) 10011(2) = ? d) 10110(2) = ? e) 215 = ? (2) f) 43 = ? (2) g) 101 = ? (2) h) 36 = ? (2) i) 543 = ? (2) 2.2.3. Sistema Octal O sistema octal ou base 8 é composto por oito símbolos ou dígitos: 0, 1, 2, 3, 4, 5, 6, e 7. Os números binários, como vimos, são longos demais para manipularmos; são muito apropriados para as máquinas ou computadores, mas para seres humanos são muito trabalhosos. Se considerarmos três dígitos binários, o maior que pode ser expresso por esses três dígitos é 111(2) ou em decimal 7. Como o 7 é também o algarismo mais significativo do sistema octal, conclui-se que com a combinação de três dígitos binários pode-se ter o algarismo octal correspondente; daí também se pode dizer que os números octais têm um terço do comprimento de um número binário e fornecem a mesma informação. 2.2.3.1. Conversão de Binário em Octal É feita pela combinação de três dígitos binários, podendo assim ter todos os algarismos octais: 11011011(2) = 11 011 011 = 3 3 3 (8) → 11011011(2) = 333(8) 1011101(2) = 1 011 101 = 1 3 5 (8) → 1011101(2) = 135(8) 2.2.3.2. Conversão de Octal em Binário A conversão de uma base em outra é bastante simples, uma vez que se trata da operação inversa à já descrita, ou seja, basta converter individualmente cada dígito octal em três binários. 33 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 35. 137(8) = ?(2) O número 1 equivale a 001(2), o número 3 igual a 011(2) e o número 7 vale 111(2). Portanto: 137(8) = 001011111(2), ou seja, 137(8) = 1011111(2). 2.2.3.3. Conversão de Octal em Decimal Esta conversão se passa pela conversão em binário e posteriormente em decimal, ou seja: 17(8) = ? 17(8) → 001 111(2) → 1x23 + 1x22 + 1x21 + 1x20 → 8 + 4 + 2 + 1 = 15. 2.2.3.4. Conversão de Decimal em Octal Conforme vimos anteriormente, também neste caso, devemos passar pelo sistema binário. 22 = ?(8) 22 → 10110(2) → 10 110(2) → 26(8),ou seja, 22 = 26(8). Exercícios: Converta os valores para as bases indicadas. a) 45(8) = ?(2) = ? b) 1011(2) = ? (8) = ? c) 56(8) = ? d) 101 = ? (8) e) 101(2) = ? (8) = ? f) 47(8) = ?(2) = ? 2.2.4. Sistema Hexadecinal O sistema hexadecimal (hexa) foi criado com o mesmo propósito do sistema octal, para minimizar a representação de um número binário que é o utilizado em processamento. Tanto os números em hexa como em octal são os meios de manipulação do homem, porém existirão sempre conversores internos à máquina que os converta em binário, com o qual a máquina trabalha. Analogamente, se considerarmos quatro dígitos ou bits binários, o maior número que pode ser expresso por esses quatro dígitos é 1111 ou em decimal 15, da mesma forma que 15 é o algarismo mais significativo do sistema hexadecimal, portanto com 34 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 36. a combinação de 4 bits ou dígitos binários pode-se ter o algarismo hexadecimal correspondente. Assim, com esse agrupamento de 4 bits ou dígitos, podem-se definir 16 símbolos, de 0 até 15. Contudo, como não existem símbolos dentro do sistema arábico que possam representar os números decimais entre 10 e 15 sem repetir os símbolos anteriores, foram usados os símbolos A, B, C, D, E e F, portanto o sistema hexadecimal será formato por 16 símbolos alfanuméricos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F. 2.2.4.1. Conversão de Hexa em Binário Basta converter cada dígito hexadecimal em seu similar binário, ou seja, cada dígito em hexa equivale a um grupo de 4 bits. B15(16) = ? (2) B(16) → 11 → 1011(2) 1(16) → 1 → 0001(2) 5(16) → 5 → 0101(2) Logo, B15(16) = 101100010101(2) 2.2.4.2. Conversão de Binário em Hexa De maneira análoga, basta realizar o processo inverso de hexa para binário. 10011011(2) = ? (16) 1001(2) → 9 → 9(16) 1011(2) → 11 → B(16) Portanto, 10011011(2) = 9B(16) 2.2.4.3. Conversão de Hexa nos demais sistemas e vice-versa Como podemos perceber, para realizarmos a conversão nos demais sistemas, basta passarmos pela binária e/ou pelo sistema decimal. Exercícios: Converta os valores para as bases indicadas. a) 211 = ? (2) = ? (8) = ? (16) b) 1101011(2) = ? (16) = ? = ? (8) c) 3747(8) = ? (16) = ? (2) = ? d) AAE(16) = ? = ? (8) = ? (2) e) Fazer um programa para conversão de sistemas numéricos entre as diversas bases (2, 8, 10 e 16), somente números inteiros. 35 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 37. Baixe da Midiateca, no Ambiente Virtual de Aprendizagem, o programa Sisnum.exe que é um conversor de base numérica desenvolvido pelo aluno Márcio Henrique da Silva. Este software será útil para a correção dos exercícios propostos. TABELA DE CONVERSÃ0 Decimal Binário Octal Hexadecimal 0 0000 0 0 1 0001 1 1 2 0010 2 2 3 0011 3 3 4 0100 4 4 5 0101 5 5 6 0110 6 6 7 0111 7 7 8 1000 8 9 1001 9 10 1010 A 11 1011 B 12 1100 C 13 1101 D 14 1110 E 15 1111 F Tabela 2 – Conversão de Base Numérica. 2.3. Portas Lógicas Durante séculos, os matemáticos sentiram que havia uma conexão entre a Matemática e a Lógica, mas ninguém antes de George Boole pôde achar este elo ausente. Em 1854, ele inventou a lógica simbólica, conhecida por álgebra booleana. Cada variável, na álgebra booleana, tinha qualquer um de dois valores: verdadeiro ou falso. Após algumas décadas, os engenheiros entenderam que a álgebra booleana podia ser aplicada à Eletrônica dos Computadores. 36 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 38. 2.3.1. Portas NOT (Inversoras) Uma inversora é uma porta com apenas um sinal de entrada e um sinal de saída, o estado da saída é sempre o oposto da entrada. Simbologia: Tabela Verdade A Ā 0 1 1 0 Tabela 3 – Porta NOT. Representação em Álgebra Booleana: S = A 2.3.2. Portas OU (OR, + , ∨) A porta OR tem dois ou mais sinais de entrada (padrão 2 ou 3), mas somente um sinal de saída. Se qualquer sinal de entrada for alto (nível 1 - fechado), o sinal de saída será alto. Simbologia: 37 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 39. Tabela Verdade A B C S 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 1 Tabela 4 – Porta OR. Representação em Álgebra Booleana: S = A + B + C 2.3.3. Portas E (AND, . , ∧) A porta AND tem dois ou mais sinais de entrada (padrão 2 ou 3), mas somente um sinal de saída. Se qualquer sinal de entrada for baixo (nível 0 - aberto), o sinal de saída será baixo. Simbologia: Tabela Verdade A B S 0 0 0 0 1 0 1 0 0 1 1 1 Tabela 5 – Porta AND. Representação em Álgebra Booleana: S = A . B 38 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 40. Exercícios: a) Fazer o circuito de portas lógicas equivalente para seguinte equação booleana: S = (A + C) . B b) Fazer a tabela verdade para porta AND com 3 entradas. c) Fazer a tabela verdade para porta OR com 4 entradas. d) Fazer o circuito de portas lógicas equivalente a: S = ((A + B) . C) + (A . C) + B e) Fazer o circuito de portas lógicas para: S = ((A . B) + C) . ( A + B) . C 2.3.4. Portas NÃO OU (NOR) As portas NOR apresentam as mesmas características das portas OR, com relação à entrada e saída. Sua diferença está no fato de ter associado a sua saída uma porta NOT, o que inverte o resultado de S, ou seja, só teremos nível lógico 1 na saída quando todas as entradas forem de nível 0. Simbologia: Tabela Verdade A B S 0 0 1 0 1 0 1 0 0 1 1 0 Tabela 6 – Porta NOR. Representação em Álgebra Booleana: S = A + B 2.3.5. Portas NÃO E (NAND) De maneira análoga às portas NOR, as portas NAND nada mais são que portas AND onde foram acrescentadas portas NOT em sua saída. Portanto, só obteremos nível 0 quando todas as suas entradas forem de nível 1. 39 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 41. Simbologia: Tabela Verdade A B S 0 0 1 0 1 1 1 0 1 1 1 0 Tabela 7 – Porta NAND. Representação em Álgebra Booleana: S = A . B Talvez esta porta seja a mais importante de todas, pois através dela podemos implementar as demais: Porta NOT Porta AND Porta OR 2.3.6. Portas OU Exclusiva – XOU (XOR, ⊕) Uma porta XOR reconhece apenas quando houver um número ímpar de entradas em nível alto. 40 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 42. Circuito equivalente: Simbologia: Tabela Verdade A B S 0 0 0 0 1 1 1 0 1 1 1 0 Tabela 8 – Porta XOR. Representação em Álgebra Booleana: S = A . B + A . B = A ⊕ B 2.3.7. Portas NÃO OU Exclusiva – XNOU (XNOR, ) Como nas demais portas, para obtermos uma porta XNOR, basta adicionarmos ao final de uma porta XOR uma porta inversora, o que provocará a inversão dos resultados na saída. Simbologia: 41 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 43. Tabela Verdade A B S 0 0 1 0 1 0 1 0 0 1 1 1 Tabela 9 – Porta XNOR. Representação em Álgebra Booleana: S = A . B + A . B = A ⊕ B = A B Exercícios: Consultar o livro Microcomputadores e Microprocessadores, do autor Albert Paul Alvino. Fazer os problemas 2-1 a 2-25 e os problemas 3-1 a 3-34 do livro. 2.4. Álgebra Booleana e Mapa de Karnaugh Iremos estudar a álgebra booleana e os mapas de Karnaugh, tópicos indispensáveis ao projetista digital. O projeto digital, usualmente, inicia-se especificando uma saída desejada com uma tabela-verdade. A pergunta então é como apresentar um circuito lógico que tenha a mesma tabela-verdade? A álgebra booleana e os mapas de Karnaugh são as ferramentas usadas para transformar uma tabela-verdade num circuito lógico prático. 2.4.1. Álgebra Booleana O que se segue é uma discussão das relações básicas em álgebra booleana. Muitas destas relações são as mesmas da álgebra comum, o que facilita lembrá-las. 42 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 44. Relações Booleanas: Leis Comutativas, Associativas e Distributivas: RELAÇÕES BOOLEANAS A+0=A A + 1= 1 A+A=A A + A =1 A=A A .1= A A .0 = 0 A.A =A A.A =0 A +B= A.B A .B = A + B A + A .B = A A . ( A + B) = A A + A .B = A + B A . ( A + B) = A . B A +B=B + A A .B = A B AB=B A A + (B + C) = ( A + B) + C A (B C) = ( A B) C A (B + C) = A B + A C A + B C = ( A + B) + ( A + C) ⇒ Vale lembrar que não se trata de álgebra comum. Tabela 10 – Regras da Álgebra Booleana. 2.4.1.1. Expressões Lógicas – Aplicações das Portas Uma expressão lógica ou uma função lógica pode ser definida como sendo uma expressão algébrica formada por variáveis lógicas (binárias), por símbolos representativos de uma operação lógica (+, . , etc.), por parênteses (às vezes) e por um sinal de igual. Prioridades: 1º - sempre serão resolvidos os parênteses, do mais interno para o mais externo; 2º - o operador NOT quando ele envolve apenas um elemento; 3º - o operador AND; 4º - o operador OR; 5º - o operador XOR. X = A + B . C ⊕ ( A + B) Para A = 1 , B = 0 e C = 1: 1º - A + B = 1 + 0 = 1 = 0 ⇒ Resolvemos primeiro o parêntese 2º - B . C = 0 . 1 = 0 3º - A + B . C = 1 + 0 = 1 4º - ( A + B . C) ⊕ ( A + B) = 1 ⊕ 0 = 1 43 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 45. Exercícios: Seja A = 1001, B = 0010, C = 1110 e D = 1111. Calcule: a) X = A ⊕ (B . C + D) + (B ⊕ D ) b) Y = ( A + (B ⊕ C . D )) . (C + B) c) W = ( A + B) . ( C + D) + ( A . C) 2.4.1.2. Simplificação de Expressões Lógicas Utilização das regras da álgebra Booleana para obter expressões mais simples. Usualmente há mais de uma possibilidade de simplificação. F = A .B.C + A .B. C + A .C A . B . C + A . B . C + A . C ⇒ = A . B . (C + C ) + A . C ⇒ ⇒ = A .B .1+ A . C ⇒ F = A .B + A . C Exercícios: a) Desenhar o circuito digital simplificado para: a.1) S = A B C D + A B C D + A B C D a.2) S = A B C D + A B C D + A B C D + A B C D b) Escreva a equação booleana para: 44 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 46. c) Determinar o circuito lógico digital e tabela verdade para a seguinte expressão booleana: S = B C + A (B + C) A B C BC Ā B+C Ā(B+C) S 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 d) Idem ao exercício anterior para a expressão: S = A (B + C) + A B 2.4.2. Mapas de Karnaugh Como se pode constatar, a minimização ou simplificação é imprescindível em um comando digital. Para realizarmos tal tarefa utilizaremos a minimização por mapas de Karnaugh que é um método, uma vez entendido, muito simples. O método consiste em fazer a minimização a partir de uma tabela da verdade, ou mapa, porém a simplificação é feita sobre um mapa característico chamado mapa de Karnaugh, que contém os mesmos elementos de uma tabela verdade comum, porém com uma distribuição diferente. Tabela Verdade: Mapa de Karnaugh: A B C S AB C 00 01 11 10 0 0 0 0 0 0 1 0 1 0 0 1 0 0 1 0 1 1 0 1 1 1 0 1 1 1 Obs.: Observe que há uma inversão de seqüência no mapa. 1 0 0 1 1 0 1 1 1 1 0 0 1 1 1 1 45 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 47. Podemos observar que no mapa de Karnaugh a combinação para as variáveis A, B e C se obtém pela combinação de uma linha com uma coluna, ou seja, a combinação 0, 0 e 0 se obtém pela combinação da primeira linha com a primeira coluna. Assim, observamos que temos todas as combinações de entrada mostradas na tabela verdade. Devemos ressaltar que a expressão booleana é escrita a partir da tabela verdade perguntando-se quando obteremos a saída igual a nível 1, ou seja: S = A .B. C + A .B.C + A . B . C + A . B .C + A .B.C 2.4.2.1. Regras para Minimização (Simplificação) A simplificação consiste em reunir células adjacentes que possuam a mesma saída (1), formando conjuntos denominados de subcubos e obedecendo às seguintes regras: a) o número de células reunidas deve ser o maior possível, mesmo que para isso uma mesma célula possa pertencer a dois ou mais conjuntos diferentes; b) o número de células reunidas em um subcubo deve ser sempre potência de 2, ou seja, 1, 2, 4, 8, 16,...; c) uma mesma célula pode pertencer a subcubos diferentes para satisfazer o item a, mas não fazer agrupamentos desnecessários (pelo menos uma célula tem de pertencer a um subcubo somente) e d) deve-se formar tantos agrupamentos até que não reste nenhuma saída igual a 1 que não tenha sido agrupada. A expressão da saída se obtém dos subcubos formados. Cada subcubo define uma função AND entre as variáveis que não mudam de nível lógico dentro do subcubo. Os diversos subcubos obtidos no mapa formam uma função OR. Voltando ao exemplo anterior e aplicando-se o mapa de Karnaugh, obteremos a seguinte expressão booleana simplificada: AB AB C 00 01 11 10 C 00 01 11 10 0 0 1 0 1 0 0 1 0 1 1 0 1 1 1 1 0 1 1 1 S = A .B + A .C + A . B ou S = A .B + B.C + A . B Um mapa de Karnaugh para 4 variáveis (A, B, C e D) seria da seguinte forma: AB CD 00 01 11 10 00 01 11 10 46 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 48. Exercícios: a) Dado a tabela verdade abaixo, determinar a expressão booleana simplificada por Karnaugh e o circuito digital resultante. A B C S 0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 0 1 1 1 1 b) Um guindaste deve permitir a elevação de massas compreendidas entre 20 e 80 quilos, pela atuação do motor M (é a nossa saída S). Para isso ele possui uma plataforma repousando sobre molas. De acordo com o peso das cargas a elevar, três sensores de carga (A, B e C) são atuados. As condições de funcionamento são as seguintes: em vazio o guindaste deve funcionar, isto é, quando nenhum dos sensores é acionado; para cargas até 20 Kg, ou seja, 0<peso<20, o guindaste não deve funcionar. Situação em que somente o sensor A está atuado; para cargas compreendidas entre 20 e 80 Kg, 20<peso<80, o guindaste deve funcionar, quando os sensores A e B permanecem atuados e para cargas superiores a 80 Kg, peso>80, o guindaste não deve funcionar, quando todos os sensores permanecem atuados. Com base no sistema descrito, determinar: 1) tabela verdade de funcionamento; 2) equação Booleana simplificada por Karnaugh e 3) circuito digital. 47 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 49. c) Em um circuito digital eletrônico, utiliza-se um DISPLAY de 7 segmentos (a, b, c, d, e, f, g) para representar os números decimais positivos de um dígito somente. Com base nas informações de posicionamento dos segmentos e tabela de atuação, completar a tabela e montar o circuito lógico digital simplificado que atenda às necessidades decimais. Dec. A B C D a b c d e f g LED 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1 0 1 1 0 0 0 0 2 0 0 1 0 1 1 0 1 1 0 1 3 0 0 1 1 1 1 1 1 0 0 1 4 0 1 0 0 5 0 1 0 1 6 0 1 1 0 7 0 1 1 1 8 1 0 0 0 9 1 0 0 1 Obs: 1) Os números que não estão sendo utilizados na codificação ABCD, não interferem no resultado, ou seja, são condições irrelevantes (representados no mapa de Karnaugh por um “X”). Tais condições de irrelevância devem ser utilizadas como sendo nível lógico 0 ou 1, o que irá facilitar nas simplificações. 2) Cada segmento deve ser considerado como uma saída individual do nosso circuito. Baixe da Midiateca, no Ambiente Virtual de Aprendizagem, o programa mk.exe que resolve Mapas de Karnaugh até 3 variáveis e foi desenvolvido pelo aluno Márcio Henrique da Silva. Este software será útil para a correção dos exercícios propostos. 48 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 50. Baixe da Midiateca, no Ambiente Virtual de Aprendizagem, o programa DW20_95.exe, Digital Works versão 2.0 (freeware). Este software é um simulador de circuitos digitais que permite a construção de circuitos com portas lógicas, flip-flops, dispositivos tri-state e memórias. As entradas podem ser implementadas usando chaves, clocks, seqüenciadores e dispositivos de entrada iterativos. As saídas podem ser visualizadas usando LED's, dispositivos de sete segmentos e dispositivos numéricos. Baixe da Midiateca, no Ambiente Virtual de Aprendizagem, o vídeo ExemploDW.avi. Nele implemento, usando o Digital Works, o circuito digital mostrado no Exercício b do item 2.4.1.2. (Simplificação de Expressões Lógicas), do nosso Guia de Estudo. Este vídeo procura apenas mostrar um exemplo de utilização do software. O programa possui vários componentes e ferramentas que permitem que você construa circuitos digitais mais complexos. Exercícios: No Ambiente Virtual de Aprendizagem, na Midiateca, você vai encontrar o arquivo ExercSisDig.doc com uma lista de exercícios para aplicação de Álgebra Booleana e Mapa de Karnaugh. 2.5. Memórias Existem 2 tipos de memórias: 1. Memória de Massa. 2. Memória Semicondutora. Os microprocessadores usam dispositivos semicondutores para armazenar programas e dados. Os mais utilizados são: • RAM (Random Access Memory): memória de acesso aleatório. • ROM (Read Only Memory): memória somente de leitura. Para expandir o espaço de armazenamento de dados, os sistemas microprocessados usam alguns dispositivos de armazenamento de massa, tais como: • discos flexíveis (disquetes); • discos rígidos (HDs); • fitas magnéticas; • disco Óptico (CD, DVD). 49 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 51. 2.5.1. Memória de Massa São memórias utilizadas para armazenagem de grandes quantidades de informações, ficam externamente à CPU e normalmente requerem dispositivo periférico de interfaceamento. Todos os discos magnéticos (disquetes, discos rígidos, Zip disk, etc.) são divididos magneticamente em círculos concêntricos chamados trilhas. As trilhas, por sua vez, são divididas em setores. Em cada setor cabem 512 bytes de informação (esse valor é fixo). Dependendo do disco, ele poderá ter uma formatação com um maior número de trilhas e setores. Quanto maior esse número, mais dados o disco poderá armazenar (TORRES, 1999). Para calcular a capacidade máxima de um disco, você pode utilizar a fórmula abaixo: Capacidade de armazenamento = número de trilhas x número de setores por trilha x número de faces do disco x 512 bytes. Um disco formado por 80 trilhas, 18 setores por trilha e possuindo duas faces, terá a capacidade de 1.474.560 bytes ou 1.440 KB. Essa é a formatação utilizada pelo nosso conhecidíssimo disquete de 1.44 MB. Figura 29 – Disco Magnético. O termo formatar um disquete ou HD consiste em criar trilhas e setores neles. 50 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES
  • 52. 2.5.2. Memória Semicondutora São memórias utilizadas para armazenagem de pequenas quantidades de informações, não necessitam de interface com a CPU, têm velocidade elevada em relação à memória de massa (para acesso) e trabalham em blocos para armazenamento de dados. Há duas classes básicas de memória semicondutoras: Memória ROM: Os circuitos de memória ROM só permitem leitura, mas, em compensação, não perdem o conteúdo quando são desligadas, ou seja, não são voláteis. Além disto, as memórias ROM são mais lentas que as memórias RAM. Memórias RAM: São rápidas, permitem leitura e escrita, mas, em compensação, o seu conteúdo é perdido sempre que são desligadas, ou seja, são voláteis. Para o processador, não há diferença entre acessar uma memória RAM ou ROM – a não ser a velocidade, pois a memória ROM é mais lenta do que a RAM. 2.5.2.1. Memória ROM Memória ROM é um termo genérico utilizado para designar um circuito de memória de leitura somente. Os circuitos de memória ROM podem ser construídos utilizando uma das seguintes tecnologias básicas: Mask-ROM: Esse tipo de memória é gravada na fábrica do circuito integrado (CI) e não há como apagarmos ou gravarmos o seu conteúdo. Esse tipo de circuito é fabricado sob encomenda. PROM (Programmable ROM): Essa memória é vendida “virgem” e o fabricante do dispositivo que utilizará este circuito se encarrega de fazer a gravação de seu conteúdo. Entretanto, uma vez gravada, não há como apagar ou reprogramarmos o seu conteúdo. A diferença entre esse circuito e o anterior é o local da gravação. Enquanto a Mask-ROM é fabricada já com um conteúdo predefinido (isto é, a gravação é feita na fábrica do circuito), a PROM é gravada pelo fabricante do periférico que utilizará o circuito. EPROM (Erasable Programmable ROM): Da mesma forma que a PROM, a EPROM é vendida virgem e deve ser gravada pelo fabricante do dispositivo que a utilizará. Ao contrário dos outros dois tipos, o seu conteúdo pode ser apagado, o que é feito colocando-se o circuito integrado exposto à luz ultravioleta (esse circuito possui uma janela transparente para que o apagamento possa ser feito). Dessa forma, esse circuito pode ser regravado. EEPROM (Eletric Erasable Programmable ROM): A EEPROM ou E²PROM é uma EPROM na qual o apagamento não é feito por meio de luz, mas sim por impulsos elétricos. Para ser regravada tem que se selecionar (endereçar) a 51 Guia de Estudo – ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES