UNIDADE I. 1. Introdução. 1.1 O que é um computador?

Tamanho: px
Começar a partir da página:

Download "UNIDADE I. 1. Introdução. 1.1 O que é um computador?"

Transcrição

1 UNIDADE I 1. Introdução 1.1 O que é um computador? Para estudarmos como um computador funciona, e como os seus vários componentes são organizados para possibilitar esse funcionamento, deveríamos primeiramente definir o que é um computador, o que não é uma tarefa simples. Segundo o Dicionário Houaiss 1, a definição de computador é: computador Datação 1789 cf. MS1 Acepções substantivo masculino 1 O que computa; calculador, calculista; 2 Rubrica: informática. Máquina destinada ao processamento de dados; dispositivo capaz de obedecer a instruções que visam produzir certas transformações nos dados, com o objetivo de alcançar um fim determinado. É claro que quem utiliza um computador, seja ele um computador doméstico, parte de um grande ambiente corporativo ou mesmo um telefone celular, sabe que tal definição nem de longe corresponde à capacidade que um desses dispositivos possui. O computador (de todos os portes imagináveis) hoje desempenha as funções mais diversas e se tornou parte do cotidiano de boa parte da população (mesmo que ela não saiba disso). O problema é que, em seu interior, o computador é uma máquina que consegue fazer muito poucas coisas. Somar e comparar números, mover valores de uma área de memória para outra e não muito mais que isso é o que o computador realmente consegue fazer, não importa o quão miraculoso ele nos pareça quando olhamos do lado de fora. Chega a ser paradoxal que um equipamento limitado como esse consiga ser capaz de ser usado em tantas aplicações. Mas não existe mágica aqui, apenas um longo e constante processo evolucionário que começou no século XVII e ainda está longe de acabar. Explicar parte dos processos que tornam isso possível é objetivo desta apostila. 1.2 Máquinas multiníveis 1 Disponível em < Consultado em 30/11/2008.

2 Um computador é uma máquina que pode realizar um determinado conjunto de funções. As pessoas que utilizam os computadores desejam fazer certas atividades que não correspondem diretamente a esse conjunto de funções. Para que seja possível que os usuá rios consigam executar as funções de que necessitam, é necessário que haja um processo de tradução. Os primeiros computadores que foram construídos só podiam ser utilizados pelos engenheiros que os construíram. Era necessário saber exatamente como os circuitos eletrônicos (ou eletromecânicos) se interligavam para que se conseguisse realizar as atividades mais simples. À medida que surgiu a necessidade de expandir a utilização dos computadores, foi necessário criar mecanismos que possibilitassem aos usuários realizar atividades sem que fosse necessário um conhecimento profundo da arquitetura desses mecanismos. Imaginemos que o computador possa realizar uma quantidade limitada de instruções ou comandos. Chamemos esse conjunto de linguagem de máquina. Figura 1. Tradução entre os níveis de um computador A linguagem que os usuários utilizam não pode se limitar à linguagem de máquina, ela precisa se aproximar da linguagem humana para atender problemas do mundo real. Chamemos esta segunda linguagem de linguagem de alto nível. Para que possa haver uma correspondência entre as duas linguagens, é necessário que o segundo conjunto seja traduzido para o conjunto inicial. Esse processo ocorre diversas vezes dentro de um computador. A história da evolução dos computadores é um processo de adição de níveis de tradução. Se os primeiros computadores só podiam ser utilizados pelos engenheiros que os construíram, os computadores atuais podem ser utilizados por pessoas com um conhecimento técnico mínimo, se tanto. Isso só é possível porque as necessidades desses usuários são submetidas a vários níveis de tradução até chegar a uma instrução que o computador consiga efetivamente executar por meio de impulsos elétricos. Esse processo de evolução nos levou ao computador contemporâneo, que possui diversos níveis, por isso o denominamos máquina multiníveis. A interação entre cada um dos níveis corresponde a um tipo de tradução. O nível 0, chamado lógico digital, corresponde aos circuitos eletrônicos que efetivamente realizam o processamento de informações na forma de impulsos

3 elétricos dentro do processador. O nível 1 corresponde à microarquitetura do processador, que são elementos internos do processador: registradores (que são a memória de alta velocidade interna do processador) e a ULA unidade lógica aritmética (que é o elemento do processador que realiza operações aritméticas simples). Esses registradores são conectados à ULA para formar um caminho de dados, através do qual os dados transitam para dentro e para fora do processador. Uma operação normal do caminho de dados consiste em selecionar o conteúdo de um ou dois registradores, submetê-lo à ULA e movimentar o resultado para outro registrador. O nível 2 corresponde ao conjunto de instruções suportado pelo processador. O conjunto de instruções corresponde aos comandos que o processador pode receber de fontes externas e é determinado pelo projeto do processador, e normalmente não pode ser alterado. O conjunto de instruções também é comum entre os processadores de uma mesma família, permitindo assim a interoperabilidade de programas e sistemas operacionais dentro dessa família. O nível 3 corresponde ao sistema operacional. O SO fornece uma plataforma que possibilita que os programas não tenham que interagir diretamente com o hardware. Aliás, isto é mandatório em se tratando de sistemas multitarefa. Não é possível existir um sistema multitarefa sem que exista um elemento arbitrando o acesso ao hardware essa função é do sistema operacional. Em sistemas computacionais modernos, todo acesso ao hardware é feito por meio do sistema operacional. O nível4 corresponde à linguagem de montagem. A linguagem de montagem, ou assembly, é uma linguagem dependente da plataforma, ou seja, processadores diferentes ou de famílias diferentes possuem linguagens de montagem diferentes incompatíveis entre si. Um programa escrito em linguagem de montagem só pode ser usado em uma determinada plataforma ou família de processadores. O nível 5 corresponde à linguagem orientada a problemas, ou linguagem de alto nível. Esse tipo de linguagem independe da plataforma em que for usada; ela deve ser traduzida (compilada) para um formato que o sistema operacional consiga interpretar e enviar para os níveis mais baixos da máquina multiníveis.

4 Figura 2. Tradução entre os níveis de um computador contemporâneo 2. História da Arquitetura de Computadores 2 Para entender como um computador funciona, precisamos compreender como se deu sua evolução, pois um dispositivo sempre incorpora ao menos parte da tecnologia dos seus predecessores. Os computadores que usamos hoje incorporam em seu design decisões que foram tomadas décadas atrás. 2.1 Geração zero computadores mecânicos ( ) As tentativas de criar mecanismos para processar dados remontam ao século XVII. Foi naquela época que os primeiros mecanismos capazes de realizar cálculos de forma automatizada surgiram. Os equipamentos da época eram totalmente mecânicos, já que os dispositivos eletromecânicos surgiriam apenas no século XX. O primeiro dispositivo desse tipo foi construído por Blaise Pascal ( ) em 1642 para auxiliar seu pai, que era coletor de impostos. Pascal tinha apenas 19 anos. Esse dispositivo ficou conhecido como Pascalina. 2 Todas as fotografias utilizadas foram tiradas de < wikimedia.org/wiki/templates:gfdl/pt>.

5 Figura 3. Uma das Pascalinas construídas por Blaise Pascal Essa primeira máquina criada por Pascal podia executar apenas somas e subtrações. Trinta anos depois, Gottfried Wilhelm von Leibniz criou um dispositivo que podia executar as quatro operações básicas. Figura 4. Staffelwalze, uma das calculadoras mecânicas projetadas por Leibniz Esses dispositivos foram as primeiras tentativas de automatizar processos manuais, neste caso, cálculos. Mas eles se limitavam a isso. A evolução desses equipamentos foi proposta apenas em 1822, por Charles Babbage ( ). O novo dispositivo foi chamado de máquina diferencial e, ao contrário de seus predecessores, que apenas realizavam operações simples, ele foi desenhado para executar um algoritmo. O objetivo dessa máquina e seu algoritmo era produzir tabelas úteis para a navegação naval, assunto estratégico para a época. A máquina diferencial podia executar apenas esse algoritmo. Figura 5. Máquina diferencial construída pelo Museu de Londres a partir de notas de Babbage Apesar da aceitação de suas ideias e do financiamento do governo britânico,

6 Babbage tinha planos mais ambiciosos. Ele vislumbrou um dispositivo programável. Esta nova máquina foi batizada de máquina analítica, e continha vários conceitos presentes ainda hoje nos computadores modernos, como um dispositivo de entrada (uma leitora de cartões perfurados), dispositivos de saída (impressora e perfuradora de cartões), memória (capaz de armazenar mil números) e uma unidade aritmética (chamada de moinho). Babbage descreveu essa máquina pela primeira vez em Sob vários aspectos, a máquina diferencial antecipou o computador moderno em cem anos. No século XIX, diversas máquinas diferenciais foram construídas com base nas teorias e documentos de Babbage, mas ele próprio nunca chegou a produzilas, nem a máquina analítica. As suas ideias, entretanto, influenciariam diversos pioneiros da computação. Ele correspondeu-se com a condessa Ada Lovelace, que se interessou por suas propostas para a máquina analítica e chegou a desenvolver um método de calcular números de Bernoulli utilizando a máquina analítica. Esse é considerado o primeiro programa de computador da história e a condessa Ada Lovelace, a primeira programadora. A linguagem ADA foi batizada em sua homenagem. O problema que Babbage enfrentou é que a tecnologia do século XIX não podia fornecer a precisão que seria necessária para a construção de um mecanismo tão complexo e ambicioso quanto a máquina analítica. Mesmo nunca tendo concretizado sua visão, Charles Babbage é considerado o avô do computador, e os equipamentos atuais ainda incorporam conceitos que ele anteviu mais de cem anos atrás. O passo seguinte no caminho do computador seria dado apenas na década de 1930, quando em vários pontos começaram a surgir dispositivos calculadores eletromecânicos utilizando relés. Na Alemanha, Konrad Zuse construiu uma série de equipamentos para executar cálculos usando relés. Todos os seus equipamentos foram destruídos durante a guerra, o que impediu que seus designs tivessem influências nos desenvolvimentos subsequentes. Pouco tempo depois de Zuse, na Universidade de Iowa, nos Estados Unidos, John Atanasoff projetou um equipamento para fazer cálculos que utilizava aritmética binária e capacitores como memória de armazenamento. Da mesma forma que outros predecessores, o projeto de Atanasoff nunca se tornou operacional. Simultaneamente, também nos Estados Unidos, George Stibbitz construiu um equipamento para fazer cálculos que realmente funcionava, apesar de ser menos sofisticado que o projeto de Atanasoff. Stibbitz fez uma grande demonstração de sua criação em Entre os que assistiram a essa demonstração estava John Mauchley, que depois daria suas próprias contribuições à história do computador. Zuse, Stibbitz e Atanasoff estavam tentando criar máquinas calculadoras automáticas. Apesar de compartilharem componentes com os computadores, elas tinham um propósito único: realizar cálculos. Nenhum desses projetos

7 tencionava ser o que Babbage tinha almejado no século XIX: um equipamento programável. O próximo passo neste caminho foi dado também nos Estados Unidos em 1944: Howard Aiken construiu o Harvard Mark I, o primeiro computador digital da história. Ele era capaz de realizar cálculos. Aiken baseou-se nos conceitos de Babbage para criar o Mark I. Apesar de ter sido bem-sucedido, o sucessor do Mark I, o Mark II, já estava obsoleto ao ser concluído. A era dos computadores eletromecânicos havia chegado ao fim. Começava a era dos computadores eletrônicos. 2.2 Primeira geração válvulas ( ) Os primeiros computadores eletrônicos surgiram na fase final da Segunda Guerra Mundial. O interesse dos militares por computadores se dava em dois campos específicos: quebra de códigos criptográficos e cálculos de artilharia. Para este segundo propósito John Mauchley propôs a construção de uma máquina para o Exército Americano, o que viria a se tornar o ENIAC. Durante muito tempo, o ENIAC (Electronic Numerical Integrator and Computer) foi considerado o primeiro computador eletrônico da história. O seu projeto, que foi patrocinado pelas forças armadas dos Estados Unidos e conduzido por John Mauchley e J. Presper Eckert, iniciou-se em O ENIAC entrou em operação em 1946, tarde demais para seu propósito bélico original. Figura 6. O ENIAC em operação na década de 1940 Entretanto, décadas depois do final da guerra o trabalho de um grupo de cientistas britânico veio a público. No auge da Segunda Grande Guerra, a Alemanha nazista utilizava um equipamento eletromecânico para codificar mensagens de forma muito mais eficiente do que os métodos manuais: trata-se da máquina Enigma.

8 Figura 7. Um exemplar da máquina Enigma Para quebrar os códigos gerados por esse dispositivo, o governo britânico patrocinou a construção do que foi de fato o primeiro computador eletrônico, batizado de Colossus. Este dispositivo entrou em operação em 1943, e o famoso matemático Alan Turing, criador de muitos dos conceitos do computador moderno, participou do projeto. Infelizmente, todo o projeto foi mantido em segredo pelo governo britânico e, por esse motivo, o trabalho pioneiro de Turing e seus colegas não pôde ser compartilhado e não teve influência nas gerações posteriores de computadores. O ENIAC, por outro lado, teve descendentes diretos. O conhecimento do projeto de Mauchley e Eckert foi compartilhado com vários colegas cientistas que criaram seus próprios computadores. Os próprios Mauchley e Eckert deixaram a Universidade da Pensilvânia, onde lecionavam, para fundar uma companhia, a Eckert-Mauchley Computer Corporation. Hoje, após uma série de fusões e aquisições, essa companhia é parte da Unisys Corporation. Naquela época de interesse florescente, um dos cientistas envolvidos no projeto do ENIAC deu uma contribuição fundamental para a evolução do computador moderno. Seu nome era John von Neumann, e uma das coisas que ele percebeu nos computadores da época é que programar um computador usando quantidades enormes de cabos e chaves era uma tarefa demorada e tediosa. Ele também apontou a vantagem de usar os dados armazenados em forma binária em vez de decimal (como o ENIAC fazia). O projeto básico que ele concebeu na década de 1940 foi utilizado na construção da máquina IAS. Essa arquitetura foi batizada de máquina de Von Neumann e é até hoje a estrutura básica de qualquer computador comercial.

9 Figura 8. A estrutura da máquina de Von Neumann Enquanto tudo isso acontecia, a IBM lentamente despertava para o mercado de computadores comerciais. Apesar de ter parcialmente financiado o projeto de Howard Ai ken, a IBM não estava muito interessada em computadores até que lançou o IBM 701, em Ele era um computador voltado para aplicações científicas, e em cerca de dez anos esse mercado seria dominado pela IBM. 2.3 Segunda geração transistores ( ) O transistor foi inventado por John Bardeen, Walter Brattain e William Shockley em 1948, nos laboratórios Bell. Em pouco tempo o transistor mudou a face da computação (e de toda a incipiente indústria de eletrônica de consumo), pois apresentava grandes vantagens em relação à válvula: era menor e tinha vida útil infinitamente maior. Dez anos após a invenção do transistor, os computadores com válvulas estavam obsoletos. O primeiro computador a usufruir da nova tecnologia foi o TX-0 (Transistored Experimental Computer 0), construído no MIT (Massachusetts Institute of Technology). O objetivo desse projeto era servir como dispositivo de testes para um equipamento mais sofisticado, o TX-2. O TX-2 não foi um grande sucesso, mas um dos engenheiros que participaram do projeto fundou uma companhia, a Digital Equipment Corporation DEC em 1957, para construir um computador cujo projeto era baseado no TX-0. Esse computador foi batizado de PDP-1. Na época, a DEC demorou quatro anos para conseguir financiamento para seu produto, pois os investidores tinham sérias dúvidas sobre a viabilidade do mercado de computadores comerciais. O PDP-1 foi finalmente lançado em Ele tinha cerca de metade da capacidade de processamento do IBM 7090, o computador científico mais rápido do mundo na época, mas custava 120 mil dólares, enquanto o 7090 custava milhões. A DEC vendeu dezenas de PDP-1 e criou o mercado de mini computadores.

10 Alguns anos mais tarde, a DEC lançou uma nova máquina, o PDP-8. Além de ser mais barata que o PDP-1 (16 mil dólares), ela trouxe uma inovação importante: o uso de um barramento. Essa arquitetura representou uma mudança importante em relação à da máquina IAS, que era centrada na memória e é usada em computadores até hoje. Figura 9. Barramento Omnibus do PDP-8 Enquanto a DEC se consolidava no mercado de minicomputadores, a IBM produzia equipamentos de alto desempenho para aplicações científicas, como o 7090, já citado, e sua versão melhorada, o Em outra frente, a IBM estava obtendo sucesso com outro tipo de equipamento, chamado Ele tinha um desempenho muito menor que o 7094 para aplicações científicas, mas era bastante adequado para aplicações comerciais, sem mencionar que era muito mais barato. Em 1964, uma pequena companhia lançou um equipamento voltado para aplicações científicas batizado de O CDC 6600 conseguiu ser mais rápido que o IBM 7094 e qualquer outro computador da época, principalmente por introduzir paralelismo em alta escala, além de pequenos computadores internos para reduzir a carga de processamento da CPU principal. Muitas ideias referentes a paralelismo presentes nos computadores modernos descendem diretamente do CDC O seu projetista, Seymour Cray, dedicou a vida à produção de computadores (depois da CDC, ele criou sua própria empresa, a Cray Computing) cada vez mais rápidos, criando o mercado de supercomputadores no processo. 2.4 Terceira geração circuitos integrados ( ) A invenção do circuito integrado de silício por Robert Noyce, em 1958, permitiu que dezenas de transistores fossem colocados em uma única pastilha (ou chip). Isso conduziu a produção de computadores a um novo patamar, totalmente impensável nas gerações anteriores. Agora eles poderiam ser menores, mais rápidos e mais baratos do que jamais havia sido possível. Mas uma das maiores inovações daquele período não dependia de desenvolvimento de novas tecnologias. A IBM tinha na época dois equipamentos de sucesso, os já citados 1401 e O problema é que eles eram totalmente incompatíveis entre si. Um cliente que possuísse os dois equipamentos teria que ter duas equipes distintas para fazer uso deles.

11 Quando chegou a hora de lançar os substitutos desses equipamentos, a IBM deu um passo revolucionário, lançando vários computadores em uma mesma linha, chamada System/3 60. O grande diferencial da linha 360 é que vários modelos de vários portes compartilhavam uma mesma arquitetura, o que permitia que um mesmo programa fosse utilizado nos vários modelos da mesma família. Hoje isso parece óbvio, mas durante os anos 1950 o foco do desenvolvimento sempre foi o hardware. A família 360 foi a primeira vez em que se pensou em interoperabilidade e compatibilidade. Outra novidade importante na família 360 era o conceito de multiprogramação. Esse conceito permitia que o computador mantivesse vários programas em memória e, enquanto um programa estivesse esperando uma operação de E/S, ele pudesse executar outro. Este conceito simples, uma das primeiras implementações de multitarefa, aumenta a utilização da CPU. E também torna mais importante uma figura até então desconhecida: o sistema operacional. O conceito de multitarefa só pode existir com a presença de um sistema operacional. O mercado de minicomputadores também evoluiu, e o lançamento mais significativo foi o PDP-11 da DEC, que teve enorme sucesso, em especial em universidades. 2.5 Quarta geração integração em larga escala ( ) Na década de 1980, a VLSI (Very Large Scale Integration Integração em Escala Muito Grande) possibilitou colocar dezenas de milhares, depois centenas de milhares e por fim milhões de transistores em um único chip. Esse desenvolvimento levou a computadores menores e mais rápidos. Antes do PDP- 1, os computadores eram tão grandes e caros que universidades e empresas precisavam ter departamentos dedicados à sua operação. Com a chegada do minicomputador, cada departamento poderia ter seu próprio computador. No início dos anos 1980, o processo de barateamento e miniaturização dos computadores chegou a tal ponto que um indivíduo podia possuir seu próprio computador. Era o início da era do computador pessoal, o microcomputador. Os primeiros microcomputadores não eram fabricados da mesma forma que os computadores comerciais da época. Eles eram vendidos como kits para serem montados em casa por hobistas na área de eletrônica ou computação. Um dos primeiros foi o Altair 8800, mostrado na figura seguinte.

12 Figura 10. Altair 8800, um dos primeiros microcomputadores comerciais Esses primeiros computadores não tinham muita aplicação prática, pois, além de montar seus computadores, os usuários tinham que desenvolver seus próprios programas. Apesar das limitações desses equipamentos, diversas empresas investiram no nascente mercado de computação pessoal. Uma das mais bem-sucedidas foi a Apple, fundada por Steve Jobs e Steve Wozniak, cujo modelo Apple II (lançado em 1977) foi um sucesso comercial. O sucesso do Apple II foi tão significativo na época de seu lançamento que a Apple se tornou um grande fabricante de computadores praticamente da noite para o dia. Figura 11. O Apple II, um dos primeiros microcomputadores comerciais de sucesso Enquanto a Apple e outras pequenas empresas criavam todo um novo mercado de computadores para uso doméstico, os grandes fabricantes, como a IBM, estavam hesitantes quanto a investir ou não nesse nicho. A IBM decidiu por fim entrar no mercado do computador pessoal, mas, ao contrário do que era seu hábito, decidiu utilizar componentes de mercado, em vez de desenvolver todo o projeto. Como microprocessador foi escolhido o 8088 da Intel, e o IBM PC foi lançado em Um dos grandes erros da história da IBM foi cometido nessa época. Ela não resguardou seu produto por patentes; muito pelo contrário, ela divulgou publicamente os dados do projeto de seu microcomputador. O resultado foi o surgimento de toda uma indústria de PC Clones, ou computadores-padrão IBM PC, da qual uma pequena parte apenas era fabricada e vendida pela IBM. Figura 12. Um dos primeiros IBM PC

13 A IBM também se associou à Microsoft para o desenvolvimento do sistema operacional de seu microcomputador. Outro grande erro da IBM foi não enxergar o potencial do software para essa plataforma. Na verdade, os executivos da IBM estavam interessados na venda de hardware. Como consequência, o MS-DOS da Microsoft se tornou o sistema operacional padrão para os computadores padrão IBM PC, o que ajudou a Microsoft a ser tornar uma das empresas mais ricas do mundo nos anos A arquitetura desenvolvida pela IBM se tornou o padrão para microcomputadores de uso comercial, e a maioria das empresas que fabricava microcomputadores com padrões distintos (Commodore, Atari, Sinclair, entre outras) desapareceu ou abandonou esse nicho de mercado. A Apple conseguiu sobreviver, em parte por ter sido a primeira a introduzir uma interface gráfica utilizável. Essa característica foi introduzida inicialmente no Apple Lisa, mas encontrou sucesso no Apple Macintosh. Figura 13. Apple Lisa O Apple Lisa fracassou devido ao alto preço, mas deixou claras as vantagens do uso de uma GUI (Graphical User Interface Interface Gráfica com o Usuário). Esse tipo de interface usa um dispositivo apontador (normalmente um mouse) e elementos gráficos como ícones e menus como meio principal para interação com o usuário. As outras gerações usavam principalmente comandos em shels ou prompts de comando, o que requeria um treinamento mais aprofundado para os usuários de computadores. Com a introdução da interface gráfica e o aumento da facilidade de uso, a popularização dos microcomputadores se acelerou ainda mais.

14 Figura 14. O Apple Macintosh original 2.6 Quinta geração computação ubíqua (2000 em diante) Ao contrário das gerações anteriores, atualmente os equipamentos com capacidade de processamento não são mais necessariamente computadores. Desde o final dos anos 1990, diversos equipamentos passaram a possuir capacidade de processamento, sem que necessariamente fossem computadores com pletos. Palmtops, telefones celulares e até mesmo automóveis e certos refrigeradores hoje possuem alguma capacidade de processamento, podendo até mesmo rivalizar com computadores de gerações anteriores. Como exemplo dessa evolução, podemos tomar o AGC (Apollo Guidance Computer), computador embarcado usado pela missão Apollo, responsável por levar os primeiros astronautas para a lua. Esse equipamento tinha menos de 64 KB de memória e 2 Mhz de velocidade de clock se compararmos esse equipamento (que era tecnologia de ponta no final do anos 1960) com um computador desktop padrão de mercado atual, que tem 1 ou 2 Gigabytes de memória e 2 Ghz de velocidade de clock, chegaremos à conclusão que o segundo é cerca de mil vezes mais rápido e possui mais de vezes mais memória, sem mencionar a complexidade do equipamento. Isso pode servir como parâmetro para a velocidade de evolução da tecnologia de processamento de dados nas últimas três décadas. Figura 15. Unidade de interface com o usuário do AGC Mas, além do barateamento e aumento de capacidade de elementos como dispositivos de armazenamento (discos e afins) e memória, o desenvolvimento de várias tecnologias, como redes locais, Bluetooth e WiFi, e a popularização da Internet permitiram o desenvolvimento de equipamentos que se apoiem em redes e recursos localizados em outros computadores para atender às necessidades de seus usuários. Os computadores das gerações anteriores precisavam manter suas massas de dados acessíveis localmente e contar apenas com sua capacidade de processamento. Os computadores de quinta geração podem contar com a capacidade de armazenamento e de processamento de outros computadores através de redes de diversos tipos.

15 Figura 16. Exemplo de smartphone: Motorola Q1 Esse tipo de capacidade pode criar ambientes tão complexos que pode se tornar difícil no futuro determinar onde começa e termina o computador e onde estão os dados que utilizamos, pois teremos à nossa volta diversos dispositivos interagindo entre si para atender às nossas necessidades. Quando esse tipo de ambiente se tornar comum, talvez não tenhamos uma sexta geração de computadores, mas algo totalmente diferente. UNIDADE II 3. Afinal de Contas, Quem Inventou o Computador? Conforme vimos no histórico, a invenção do computador não se deu em apenas um passo. No caso de algumas tecnologias, como o avião, somos tentados a eleger o pai desse invento, mas no caso do computador não desponta uma figura com essa característica. Alguns dos principais visionários nunca conseguiram transformar suas visões em equipamentos funcionais. Em outros casos, esses equipamentos nunca chegaram a público. Por outro lado, os construtores de computadores que se tornaram operacionais e chegaram a público não podem descartar a influência de seus predecessores. Howard Aiken, por exemplo, sempre afirmou ter se baseado no trabalho de Babbage. A conclusão a que podemos chegar é que o computador não tem um pai ou mãe, mas é fruto de diversos passos, alguns maiores, outros menores, mas cada um com sua importância na história. 4. Os Rumos da Evolução do Computador Com base no histórico visto na seção anterior, podemos determinar algumas dimensões na evolução do computador. Desde os primeiros dispositivos mecânicos do século XVII até os computadores de mão atuais, podemos definir algumas linhas sobre as quais se deu (e ainda se dá) a evolução dos com

16 putadores. Miniaturização Os primeiros computadores eletrônicos, como o ENIAC, ocupavam andares inteiros e pesavam toneladas. Hoje a capacidade de processamento daqueles equipamentos é largamente superada por dispositivos de bolso. Na década de 1980, todas as empresas tinham um CPD (centro de processamento de dados), onde residiam todos os seus computadores e periféricos. Hoje uma tarefa das mais trabalhosas em uma grande empresa é localizar onde estão todos os seus computadores. A miniaturização tornou possível o minicomputador, depois o computador pessoal, a computação móvel e a eletrônica embarcada. Sem o extremo progresso que a miniaturização alcançou, o mundo seria muito diferente hoje, pois os computadores estariam confinados nos CPDs, em vez de estarem à nossa volta em toda parte. Barateamento Os primeiros computadores comerciais custavam milhões de dólares. Hoje um microcomputador básico é acessível à maioria das pessoas. O computador já faz parte do cotidiano da maior parte das pessoas, mas de uma forma muito maior do que podemos ver. O barateamento de microprocessadores e afins possibilitou a implantação de dispositivos com capacidade de processamento em carros, elevadores e eletrodomésticos. A eletrônica embarcada, como é chamada, é fruto direto do barateamento de computadores e dispositivos eletrônicos, pois possibilitou a substituição de funções executadas por elementos elétricos ou mecânicos por dispositivos eletrônicos e a inclusão de novas funções, que não seriam possíveis sem esses dispositivos. Facilidade de uso Os primeiros computadores só podiam ser utilizados pelos engenheiros que os construíram, pois, para obter algum resultado, era necessário conhecer detalhes precisos sobre a interconexão de seus componentes. Com a popularização da computação comercial, surgiu a necessidade de uma utilização mais diversificada dos computadores. Para atender a essa demanda surgiram as primeiras linguagens de programação. Um programador podia extrair resultados do computador sem ter necessariamente um conhecimento detalhado de seu funcionamento. Este primeiro degrau de popularização também foi um primeiro degrau na facilidade de uso do computador. Outros degraus vieram depois, sendo que um dos mais recentes foi a introdução da interface gráfica, que dispensou os usuários da necessidade de conhecer ou decorar comandos para utilizar o computador. Talvez estejamos experimentando mais um degrau nesta evolução

17 atualmente, que é a migração de toda a interação entre o usuário e o computador para o browser. Dessa forma, atualmente não temos apenas todo um universo de usuários que não têm conhecimento do funcionamento interno do computador, como também eles não precisam sequer ter conhecimento de que o computador existe. Para esses usuários, a interação se dá com o navegador, independentemente de onde ele está sendo executado (computador, smartphone ou o que quer que seja). Esse é possivelmente o primeiro passo no caminho do computador invisível, ou computação ubíqua. 5. A Organização do Computador Um computador digital consiste em um sistema interconectado de processadores, memórias e dispositivos de entrada e saída. Essas são as três categorias básicas de componentes de um computador moderno. Cada elemento de um computador qualquer se encaixará em uma dessas classificações. Vamos analisar em seguida cada uma delas. 5.1 Processadores A unidade central de processamento (UCP ou CPU Central Processing Unit) é o centro do computador. A execução de um programa normalmente consiste em trazer um programa de um dispositivo de armazenamento (disco, por exemplo) para a memória principal. Da memória principal, o programa é transferido para a CPU, uma instrução por vez. Dentro da CPU é que o verdadeiro processamento ocorre, onde as instruções serão interpretadas e executadas. Como podemos ver na figura seguinte, todos esses elementos se comunicam por meio de um barramento. Figura 17. A organização de um computador simples.

18 Como podemos ver também na figura, internamente a CPU é composta por várias partes distintas. A unidade de controle é responsável por buscar instruções na memória e determinar seu tipo. A unidade lógica e aritmética executa operações matemáticas simples como adição e E booleano. A CPU também contém uma pequena quantidade de memória de alta velocidade, que é utilizada na execução de instruções. Essa memória é organizada em registradores. Cada registrador tem um tamanho fixo (comprimento em bits) e um propósito específico, como o contador de programa (PC program counter). A função do PC é identificar qual a próxima instrução a ser trazida para a CPU do programa em execução. A organização da CPU é detalhada na figura abaixo. Os registradores e a ULA formam um caminho de dados. Figura 18. Um exemplo de caminho de dados Os dados são movimentados dos registradores para um ou dois registradores que alimentam a ULA e deles para a própria ULA através de um barramento que interconecta esses elementos. A ULA realizará as operações matemáticas mais básicas, como soma e comparação, e moverá o resultado para um registrador de saída. Posteriormente, o conteúdo desse registrador será movido para outro registrador e de lá para a memória principal. Neste ponto, podemos estabelecer a distinção entre dois tipos diferentes de

19 instruções: instruções registrador-registrador e instruções registrador-memória. As primeiras dependem apenas dos dados que estão armazenados na CPU, e as segundas precisam buscar dados da memória principal, pelo barramento. O processo de submeter dois valores à ULA e obter um resultado é chamado de ciclo do caminho de dados. Esse ciclo é o núcleo da maioria das CPUs, pois determina o que ela pode fazer. Quanto mais rápido a CPU conseguir executar esse ciclo, mais rápido se dará o processamento. Além do ciclo do caminho de dados, interno à CPU, temos o ciclo externo, que determina como a CPU interage com os dados que estão fora dela, na memória principal. A CPU executa cada instrução em uma série de pequenos passos: 1. Trazer a próxima instrução da memória até o registrador; 2. Alterar o contador de programa para indicar a próxima instrução; 3. Determinar o tipo da instrução; 4. Se a instrução necessitar de uma palavra da memória, determinar onde essa palavra está; 5. Trazer a palavra para dentro de um registrador da CPU, se necessário; 6. Executar a instrução; 7. Voltar à etapa 1 para iniciar a execução da instrução seguinte. Essa sequência costuma ser denominada ciclo buscar-decodificar-executar. É fundamental para a operação de todos os computadores. Lembre-se de que o programa é armazenado na memória na forma de instruções que o processador consiga interpretar. Voltando à máquina multiníveis, o programa escrito originalmente em linguagem de alto nível sofreu vários níveis de tradução antes que pudesse ser executado diretamente pelo processador Princípios de projeto para computadores modernos Os computadores modernos compartilham uma série de características de design que visam maximizar o seu desempenho. Não importa se se trata de um computador de mão ou um computador para fins científicos; sempre se deseja a maior velocidade de processamento possível. É claro que estas linhas se aplicam ao estado atual da tecnologia. Atualmente estamos sujeitos a certas limitações, como velocidade de clock, quantidade de transistores que podem ser embutidos em uma pastilha de silício e outras. Se o cenário tecnológico atual se alterar, talvez algum dos pontos a seguir não seja mais aplicado.

20 Todas as instruções são executadas diretamente pelo hardware No passado houve uma tendência de design de computadores que adicionava uma camada de software entre o hardware e o conjunto de instruções, providenciando um novo nível de interpretação. Esse tipo de implementação é chamado de microcódigo e oferecia algumas vantagens como a possibilidade de incluir ou alterar instruções sem alterar o hardware. Apesar de prover mais flexibilidade, esse tipo de design não é considerado uma boa prática. O nível adicional de tradução acarreta uma perda de desempenho, que não compensa as novas instruções que possam ser adicionadas. Em resumo, a recomendação é que as instruções correspondam diretamente a elementos de hardware, sem que haja níveis adicionais de tradução. Maximize a taxa de execução de instruções Um dos caminhos para se maximizar a performance do computador é maximizar a taxa de execuções de instruções por segundo. Existem vários meios para se conseguir isso. Um é simplesmente aumentar a velocidade de clock do computador. Outra forma é fazer com que o processador realize atividades em paralelo. Se um computador puder realizar duas instruções em paralelo, ele terá teoricamente um desempenho duas vezes superior a um computador sem paralelismo. Neste design, um cuidado especial deve ser tomado para que não seja alterada a ordem de execução do programa. As instruções devem ser fáceis de decodificar Conforme visto anteriormente, o ciclo de execução de instruções tem impacto direto na velocidade de processamento do computador como um todo. Se o tempo de tradução de uma instrução for demorado, o tempo de execução como um todo será degradado. Por esse motivo, uma instrução não deve ter muitas opções de execução ou formatos alternativos. Se a instrução tiver poucos formatos, o tempo de identificação da instrução será reduzido e, consequentemente, o tempo de processamento será otimizado. Somente load e store devem referenciar a memória O acesso à memória principal é uma operação demorada, sob a ótica da velocidade do processador, é claro. Se muitas instruções tiverem acesso direto à memória principal, o tempo de execução das instruções pode se tornar imprevisível. Por esse motivo, é recomendado que apenas as instruções load (leitura) e store (gravação) tenham acesso à memória. Providencie bastantes registradores Se o processador não tiver um registrador para armazenar um valor

21 resultante, ele terá que transferir esse valor para a memória principal. Conforme já vimos, a transferência de dados entre o processador e a memória principal é um processo mais lento que a movimentação de dados dentro do processador. Se o processador não tiver registradores suficientes, o tempo de processamento será degradado Paralelismo Conforme vimos, um dos melhores recursos para otimizar a velocidade de processamento de um computador é a capacidade de executar várias atividades ao mesmo tempo. Existem várias formas de implementar paralelismo, no nível de instrução e no nível de processador. A seguir descreveremos cinco formas de paralelismo. Pipelining e arquiteturas superescalares são exemplos de paralelismo no nível de instrução. Computadores matriciais, multiprocessadores e multicomputadores são exemplos de paralelismo no nível de processador. Pipelining O processo de decodificação e execução de instruções, como foi visto anteriormente, é um elemento crítico no desempenho do computador. Se o processo de identificação e execução de uma instrução puder ser modularizado, haverá um ganho de performance, pois, enquanto uma instrução estiver em execução, os passos iniciais da próxima instrução poderão ser executados. Na figura a seguir temos o exemplo de um pipeline de cinco estágios. Cada instrução passará por cinco módulos antes de ser concluída. Observe que, quando a instrução 1 for concluída, as instruções 2, 3, 4 e 5 estarão em execução. Figura 19. Exemplo de um pipeline de cinco estágios

22 Arquiteturas superescalares O princípio da arquitetura superescalar é que nem todas as instruções demoram o mesmo tempo para serem executadas. Ao executar certas instruções, como as que leem ou gravam na memória principal, o tempo de execução é maior que em instruções que acessem apenas dados dentro do processador (armazenados em registradores). Se o módulo de execução pudesse executar várias tarefas em paralelo, o tempo de execução das instruções mais lentas seria compensado pela execução de outras instruções. Na figura a seguir temos o exemplo de uma arquitetura superescalar com duas ALU, uma unidade para tratar operações de ponto flutuante e um módulo para ler, e outra para gravar na memória principal. Novamente deve ser tomado cuidado neste tipo de design para que as instruções sejam executadas na ordem correta. Figura 20. Exemplo de arquitetura superescalar. Esses dois tipos de paralelismo são implementados dentro do processador, ou seja, não dependem de mais de um processador. Os designs seguintes dependem de vários processadores. Sempre existe demanda por processadores mais rápidos, mas em muitos casos é mais simples e barato dispor de vários processadores que trabalhem harmonicamente do que tentar conseguir um único processador mais rápido.

23 Esse tipo de conclusão já chegou até os computadores de uso comercial e doméstico, com as configurações com processadores de dois, três, quatro ou mais núcleos. Computadores matriciais Um computador matricial é aquele com um grande número de processadores que executam o mesmo conjunto de instruções em conjuntos diferentes de dados. Esse tipo de arranjo encontra uso em aplicações científicas, em que um grande conjunto de dados deve ser submetido a um mesmo conjunto de fórmulas. Ele não é comum em computadores comerciais, mas muitos supercomputadores (especialmente os fabricados pela Cray Computing) usam um tipo especial de arranjo desse tipo, chamado processador vetorial. Multiprocessadores Uma forma simples de aumentar a capacidade de processamento de um computador é adicionar outro processador. Essa é a ideia do multiprocessador, mas isso não é tão simples. Sempre que fazemos algum tipo de paralelismo, deve haver alguma figura fazendo a arbitragem das tarefas que serão executadas por cada processador. Além disso, no multiprocessador, todas as CPUs compartilham uma mesma quantidade de memória. O acesso a essa memória deve ser controlado também, para que um processador não tente utilizar um espaço que esteja sendo usado por outro. Normalmente essa função é desempenhada pelo sistema operacional. Figura 21. Multiprocessador com barramento único A maioria dos sistemas operacionais de mercado atualmente tem alguma capacidade de multiprocessamento. Multicomputadores A diferença entre o multicomputador e o multiprocessador é que no multicomputador cada CPU tem uma memória local que só é acessada por aquele processador.

24 Figura 22. Multicomputador com memórias locais No multicomputador, pode ou não haver uma quantidade de memória compartilhada entre os processadores. Um dos problemas desses tipos de arranjo é conectar todos os processadores à memória. Por esse motivo, muitos projetistas abandonam a ideia da memória compartilhada e criam computadores apenas com processadores com memórias privadas. Este tipo de arranjo normalmente é chamado de fracamente acoplado, em contraste com o arranjo fortemente acoplado, que é o multiprocessador. 5.2 Memória primária A memória é a parte do computador onde são armazenados programas e dados. A memória primária também é chamada de memória principal ou RAM. A memória principal é utilizada para armazenar os programas em execução e os dados em uso por esses programas. Ela é costumeiramente volátil, ou seja, mantém os dados armazenados apenas enquanto o equipamento está energizado Bits, bytes e terabytes A unidade básica de memória é o dígito binário, ou bit. Um bit consegue armazenar apenas o valor 0 ou 1, e é o bloco básico de informações. Um dos agrupamentos mais comuns de bits é o byte, que tem 8 bits de comprimento. Quando se trata de bits e bytes, existe certa confusão quanto aos múltiplos que podem ser usados para expressar essas quantidades. Como o bit é um valor binário, os múltiplos são potências de 2. Um kilobyte, portanto, não são exatamente bytes (10 3 ), mas (2 10 ). De modo semelhante, 1 MB contém bytes (2 20 ), e não de bytes (10 6 ). Os outros prefixos mais comuns, em se tratando de memória, são giga (1 GB equivale a bytes) e tera: 1 TB equivale a 2 40

25 bytes. Na tabela a seguir temos os prefixos decimais mais comuns, lembrando que, em se tratando de memória, devemos usar a base binária em vez da base 10. Figura 23. Os principais sufixos métricos Endereços de memória Para que seja possível utilizar a memória, deve ser possível gravar e ler informações nela. Para que isso seja possível, a memória deve ser organizada de modo que cada unidade utilizável de memória tenha um endereço único. Os bits de memória são organizados em células, e cada célula tem um endereço único. O tamanho da célula varia de acordo com o sistema, mas o mais comum é que ela tenha 8 bits (1 byte) de comprimento. A célula é a menor unidade endereçável de memória. Figura 24. Três formas de organizar 96 bits de memória Outro conceito importante é a palavra. Uma palavra é o tamanho da unidade de dados que é transferida da memória para o processador. Quando falamos que um computador é de 32 bits ou 64 bits, estamos nos referindo ao tamanho da palavra desse processador. Ou seja, um computador de 32 bits consegue transmitir 4 bytes entre a memória e o processador, enquanto um computador de 64 bits transmite 8 bytes.

26 Esse conceito é importante porque, se o processador recebe um valor de 8 bytes da memória, todos os seus registradores têm que ter no mínimo esse comprimento. Isso implica também a quantidade de memória que um computador pode suportar. Se o registrador dedicado a tratar endereços de memória tem 1 bit de comprimento, o computador só suportará dois endereços ou duas células (0 e 1). Se esse registrador tiver 32 bits, a quantidade de células endereçáveis será de Em um computador com células de 1 byte, isso equivale a 4 GB de memória. Se esse registrador tiver 64 bits, a quantidade de endereços possíveis sobe para , ou aproximadamente 18,45 exabytes, uma quantidade de memória impensável nos padrões tecnológicos atuais Memória cache A memória cache (e não cachê) é uma área de memória intermediária entre o processador e a memória principal. O termo cache é amplamente usado para dispositivos que servem como área intermediária entre um meio mais rápido e outro mais lento (cache de disco, cache de impressão etc.). A memória cache, conforme a definição aqui adotada, é uma área de memória localizada entre o barramento e a CPU. Como já falamos antes, o tempo de acesso à memória principal a partir do processador é lento, em termos de velocidade de processamento. Então, se o processador não precisar percorrer o barramento para buscar uma determinada informação, mas uma área mais próxima, o computador ganha em desempenho. Normalmente a memória cache faz parte da mesma embalagem que o próprio processador, mas não faz parte da arquitetura interna dele, onde se localizam os registradores e demais componentes da CPU. Figura 25. A localização lógica da memória cache Existem várias formas de implementar a memória: cache de processador, cache específico para instruções e dados, cache de múltiplos níveis, mas o conceito básico é o mesmo ao se deparar com a necessidade de uma informação da memória principal, o cache será consultado antes. Se a informação estiver lá, ela já é devolvida para o processador (cache hit). Se a informação não estiver no cache (cache miss), ela é trazida da memória principal

27 para o cache e de lá para o processador. A memória cache, assim como a memória principal, também é volátil. 5.3 Memória secundária Independentemente da quantidade de memória principal que o computador disponha, ela nunca será suficiente para armazenar todos os dados que são necessários. Para isso usam-se os meios de armazena mento de massa ou memória secundária. Para se ter uma ideia de ordem de grandeza, um computador comercial comum atualmente possui cerca de 2 GB de memória principal, enquanto um disco rígido comum hoje possui em torno de 160 GB, sendo que já existem discos para uso em computadores comerciais comuns com 1 TB de capacidade Hierarquias de memória Um computador possui vários tipos de memória, desde os registradores até os discos óticos (DVD, Blu-Ray etc.). Existe uma hierarquia entre esses vários tipos de memória, conforme a figura a seguir. Figura 26. Hierarquia de memória de cinco níveis Quanto mais alto vamos na pirâmide acima, maior é a velocidade da memória, maior o custo por byte e menor a quantidade de memória disponível no computador. Quanto mais para baixo vamos, menor a velocidade, menor o custo e maior a quantidade disponível em um computador. A maior parte dos meios de memória secundária atualmente é não volátil, ou seja, mantém os dados gravados até que um usuário os apague. Devemos ter cuidado em usar o termo permanente ao tratar de meios de armazenamento, pois nenhum meio de armazenamento atual consegue garantir a preservação dos dados após um período de alguns anos Discos magnéticos

28 O disco magnético é o meio mais comum de armazenamento atualmente. Isso se deve ao fato de que o disco hoje é o que fornece melhor relação custobenefício. Isso talvez mude no futuro próximo, graças à popularização dos discos de estado sólido (SSD solid state disk) baseados em memória flash. Hoje já é comum encontrarmos esse tipo de dispositivo com cerca de 4 GB a 16 GB. Ainda é pouco se comparado aos 160 GB que um disco magnético possui, mas, com o aumento de capacidade e barateamento desse tipo de dispositivo, em breve ele poderá superar o disco magnético em popularidade. Figura 27. Um disco magnético sem a proteção metálica Como podemos ver na imagem acima, o disco magnético é composto por discos e braços de acesso, além de motores responsáveis por girar os discos e movimentar o braço. O princípio básico de funcionamento do disco magnético é simples: os discos giram em um único sentido com velocidade constante, e as cabeças de leitura e gravação se aproximam e se afastam do centro do disco, de modo que conseguem atingir toda a sua área útil. Essa área é coberta por um material magnético que pode ser sensibilizado pelo campo gerado pela cabeça de leitura. Dependendo da direção em que estiverem direcionadas essas partículas, elas podem simbolizar um bit 0 ou um bit 1. A área útil do disco é dividida em setores. Um setor normalmente corresponde a 512 bytes e é separado do próximo setor por uma área não utilizada chamada lacuna. Como estamos lidando com campos magnéticos, nem toda a superfície pode ser utilizada, pois corremos o risco de afetar outros setores além do desejado, se eles estiverem muito próximos. Os setores são agrupados em círculos concêntricos denominados trilhas.

Sumário. Organização de Computadores Módulo 3. Primeira Geração Válvulas (1945 1955) Primeira Geração Válvulas (1945 1955)

Sumário. Organização de Computadores Módulo 3. Primeira Geração Válvulas (1945 1955) Primeira Geração Válvulas (1945 1955) Sumário M. Sc. Luiz Alberto lasf.bel@gmail.com www.professorluizalberto.com.br Organização de Computadores Módulo 3 1. História da Arquitetura de Computadores - Continuação 1.1. 1.2. Segunda Geração Transistores

Leia mais

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 3

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 3 ORGANIZAÇÃO DE COMPUTADORES MÓDULO 3 Índice 1. História da Arquitetura de Computadores - Continuação..3 1.1. Primeira Geração Válvulas (1945 1955)... 3 1.2. Segunda Geração Transistores (1955 1965)...

Leia mais

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10 ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10 Índice 1. A Organização do Computador - Continuação...3 1.1. Memória Primária - II... 3 1.1.1. Memória cache... 3 1.2. Memória Secundária... 3 1.2.1. Hierarquias de

Leia mais

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8 ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8 Índice 1. A Organização do Computador - Continuação...3 1.1. Processadores - II... 3 1.1.1. Princípios de projeto para computadores modernos... 3 1.1.2. Paralelismo...

Leia mais

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 1

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 1 ORGANIZAÇÃO DE COMPUTADORES MÓDULO 1 Índice 1. Introdução...3 1.1. O que é um Computador?... 3 1.2. Máquinas Multiníveis... 3 2 1. INTRODUÇÃO 1.1 O QUE É UM COMPUTADOR? Para estudarmos como um computador

Leia mais

Organização de Computadores

Organização de Computadores Organização de Computadores Professor conteudista: Renato Lellis Sumário Organização de Computadores Unidade I 1 INTRODUÇÃO...1 1.1 O que é um computador?...1 1.2 Máquinas multiníveis...2 2 HISTÓRIA DA

Leia mais

Capítulo 1 Introdução

Capítulo 1 Introdução Capítulo 1 Introdução Programa: Seqüência de instruções descrevendo como executar uma determinada tarefa. Computador: Conjunto do hardware + Software Os circuitos eletrônicos de um determinado computador

Leia mais

História e Organização Básica de Computadores

História e Organização Básica de Computadores História e Organização Básica de Computadores Arquitetura de Computadores Introdução Durante a evolução do computador digital moderno foram projetadas e construídas centenas de diferentes tipos de computadores.

Leia mais

Abstrações e Tecnologias Computacionais. Professor: André Luis Meneses Silva E-mail/msn: andreluis.ms@gmail.com Página: orgearq20101.wordpress.

Abstrações e Tecnologias Computacionais. Professor: André Luis Meneses Silva E-mail/msn: andreluis.ms@gmail.com Página: orgearq20101.wordpress. Abstrações e Tecnologias Computacionais Professor: André Luis Meneses Silva E-mail/msn: andreluis.ms@gmail.com Página: orgearq20101.wordpress.com Agenda Introdução Sistemas Computacionais Arquitetura X

Leia mais

Fundamentos da Informática. História dos Computadores Prof. Hélder Almeida www.helderalmeida.com.br

Fundamentos da Informática. História dos Computadores Prof. Hélder Almeida www.helderalmeida.com.br Fundamentos da Informática História dos Computadores Prof. Hélder Almeida www.helderalmeida.com.br História da Computação Hoje em dia, os computadores estão presentes em nossa vida de uma forma nunca vista

Leia mais

- Aula 2 ESTÁGIOS DA EVOLUÇÃO DA ARQUITETURA DOS COMPUTADORES

- Aula 2 ESTÁGIOS DA EVOLUÇÃO DA ARQUITETURA DOS COMPUTADORES - Aula 2 ESTÁGIOS DA EVOLUÇÃO DA ARQUITETURA DOS COMPUTADORES 1. INTRODUÇÃO Centenas de tipos diferentes de computadores foram projetados e construídos ao longo do ciclo evolutivo dos computadores digitais.

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Aula 01 Tecnologias e Perspectiva Histórica Edgar Noda Pré-história Em 1642, Blaise Pascal (1633-1662) construiu uma máquina de calcular mecânica que podia somar

Leia mais

Introdução à Computação: História dos computadores

Introdução à Computação: História dos computadores Introdução à Computação: História dos computadores Ricardo de Sousa Bri.o rbri.o@ufpi.edu.br DIE- UFPI 2004 by Pearson Education Objetivos Aprender sobre a história dos computadores. 2004 by Pearson Education

Leia mais

INFORMÁTICA APLICADA À ADMINISTRAÇÃO I

INFORMÁTICA APLICADA À ADMINISTRAÇÃO I CEAP CENTRO DE ENSINO SUPERIOR ADMINISTRAÇÃO DE EMPRESAS Surgimento da Informática INFORMÁTICA APLICADA À ADMINISTRAÇÃO I Unidade I Prof Célio Conrado www.celioconrado.com celio.conrado@gmail.com Já nos

Leia mais

Sistema de Computação

Sistema de Computação Sistema de Computação Máquinas multinível Nível 0 verdadeiro hardware da máquina, executando os programas em linguagem de máquina de nível 1 (portas lógicas); Nível 1 Composto por registrados e pela ALU

Leia mais

O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema.

O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema. O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema. Unidade aritmética e lógica - Executa operações aritméticas (cálculos);

Leia mais

Arquitetura de Computadores. Prof. Marcelo Mikosz Gonçalves

Arquitetura de Computadores. Prof. Marcelo Mikosz Gonçalves Arquitetura de Computadores Prof. Marcelo Mikosz Gonçalves Conceitos Básicos Programa: é uma seqüência de instruções que executam uma determinada tarefa. Linguagem de máquina: conjunto de instruções primitivas

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Introdução Um sistema operacional é um programa que atua como intermediário entre o usuário e o hardware de um computador. O propósito

Leia mais

Introdução à Organização e Arquitetura de Computadores. Prof. Leonardo Barreto Campos 1

Introdução à Organização e Arquitetura de Computadores. Prof. Leonardo Barreto Campos 1 Introdução à Organização e Arquitetura de Computadores Prof. Leonardo Barreto Campos 1 Sumário Introdução; Evolução dos Computadores; Considerações da Arquitetura de von Neumann; Execução de uma instrução

Leia mais

Calculadoras Mecânicas

Calculadoras Mecânicas ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES Evolução e Desempenho de Computadores 1ª Calculadora - séc. V a.c Muitos povos da antiguidade utilizavam o ábaco para a realização de cálculos do dia a dia, principalmente

Leia mais

A Unidade Central de Processamento é a responsável pelo processamento e execução de programas armazenados na MP.

A Unidade Central de Processamento é a responsável pelo processamento e execução de programas armazenados na MP. A ARQUITETURA DE UM COMPUTADOR A arquitetura básica de um computador moderno segue ainda de forma geral os conceitos estabelecidos pelo Professor da Universidade de Princeton, John Von Neumann (1903-1957),

Leia mais

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01 Unidade Central de Processamento (CPU) Processador Renan Manola Introdução ao Computador 2010/01 Componentes de um Computador (1) Computador Eletrônico Digital É um sistema composto por: Memória Principal

Leia mais

3. Arquitetura Básica do Computador

3. Arquitetura Básica do Computador 3. Arquitetura Básica do Computador 3.1. Modelo de Von Neumann Dar-me-eis um grão de trigo pela primeira casa do tabuleiro; dois pela segunda, quatro pela terceira, oito pela quarta, e assim dobrando sucessivamente,

Leia mais

Fundamentos de Informática 1ºSemestre

Fundamentos de Informática 1ºSemestre Fundamentos de Informática 1ºSemestre Aula 1 Prof. Nataniel Vieira nataniel.vieira@gmail.com SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL FACULDADE DE TECNOLOGIA SENAC PELOTAS Uma abordagem inicial... o

Leia mais

ARQUITETURA DE COMPUTADORES - 1866

ARQUITETURA DE COMPUTADORES - 1866 7 Unidade Central de Processamento (UCP): O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento e de controle, durante a execução de um

Leia mais

Informática Instrumental Aula 1. Prof. Msc. Fernando Nakayama de Queiroz

Informática Instrumental Aula 1. Prof. Msc. Fernando Nakayama de Queiroz Informática Instrumental Aula 1 Prof. Msc. Fernando Nakayama de Queiroz Ementa da disciplina 1. Apresentação do sistema operacional windows e linux; 2. Aprendendo a operar o teclado e principais teclas

Leia mais

AULA 01 CONCEITOS BÁSICOS DE PROGRAMAÇÃO. Eduardo Camargo de Siqueira INFORMÁTICA APLICADA TÉCNICO EM ELETRÔNICA

AULA 01 CONCEITOS BÁSICOS DE PROGRAMAÇÃO. Eduardo Camargo de Siqueira INFORMÁTICA APLICADA TÉCNICO EM ELETRÔNICA AULA 01 CONCEITOS BÁSICOS DE PROGRAMAÇÃO Eduardo Camargo de Siqueira INFORMÁTICA APLICADA TÉCNICO EM ELETRÔNICA CURIOSIDADE 2 O COMPUTADOR O homem sempre procurou máquinas que o auxiliassem em seu trabalho.

Leia mais

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 1 2 Revisão de Hardware 2.1 Hardware O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 2.1.1 Processador O Processador

Leia mais

Histórico dos Computadores

Histórico dos Computadores Histórico dos Computadores O mais antigo equipamento para cálculo foi o ábaco (Fig. 1), que era um quadro com arruelas móveis, dispostas em arames paralelos, tendo, portanto, um mecanismo simples. Surgido

Leia mais

Conceitos e Evolução Capítulos 1 e 2

Conceitos e Evolução Capítulos 1 e 2 Aula 2 ARQUITETURA DE COMPUTADORES Conceitos e Evolução Capítulos 1 e 2 Prof. Osvaldo Mesquita E-mail: oswaldo.mesquita@gmail.com 1/48 CONTEÚDO DA AULA Conceitos Importantes O que é arquitetura de computadores?

Leia mais

AUTOMAÇÃO DE ESCRITÓRIOS ADE

AUTOMAÇÃO DE ESCRITÓRIOS ADE Curso: TÉCNICO EM INFORMÁTICA com Habilitação em Programação e Desenvolvimento de Sistemas. AUTOMAÇÃO DE ESCRITÓRIOS ADE NOTA DE AULA 01 Assunto: Introdução a informática. Histórico do computador. Conceitos

Leia mais

1. NÍVEL CONVENCIONAL DE MÁQUINA

1. NÍVEL CONVENCIONAL DE MÁQUINA 1. NÍVEL CONVENCIONAL DE MÁQUINA Relembrando a nossa matéria de Arquitetura de Computadores, a arquitetura de Computadores se divide em vários níveis como já estudamos anteriormente. Ou seja: o Nível 0

Leia mais

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br Conceito de Computador Um computador digital é

Leia mais

Introdução à Computação

Introdução à Computação Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Introdução à Computação DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros 1 Informática x Computação

Leia mais

Elisa Maria Pivetta Cantarelli. PDF created with pdffactory Pro trial version www.pdffactory.com

Elisa Maria Pivetta Cantarelli. PDF created with pdffactory Pro trial version www.pdffactory.com Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Conceitos básicos Elisa Maria Pivetta Cantarelli A informática, que torna a INFORmação automática, não deve intimidar. Computador

Leia mais

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha

Leia mais

1.1. Organização de um Sistema Computacional

1.1. Organização de um Sistema Computacional 1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes

Leia mais

ARQUITETURA DE COMPUTADORES - 1866

ARQUITETURA DE COMPUTADORES - 1866 1 Introdução: Um computador é uma máquina (conjunto de partes eletrônicas e eletromecânicas) capaz de sistematicamente coletar, manipular e fornecer resultados da manipulação de dados para um ou mais objetivos.

Leia mais

Processamento de Dados

Processamento de Dados Processamento de Dados Evolução da Tecnologia 2000 a.c. -------------------------- 1621 Ábaco Réguas de Cálculo 1642 ------------------------------- 1890 Calculadora mecânica Início da Revolução Industrial

Leia mais

Parte 01. Fundamentos de Arquitetura de Computadores. Prof. Pedro Neto

Parte 01. Fundamentos de Arquitetura de Computadores. Prof. Pedro Neto Parte 01 Fundamentos de Arquitetura de Computadores Prof. Pedro Neto Aracaju Sergipe - 2011 Conteúdo 1. Introdução i. Definição de Computador ii. Máquina Multinível iii. Evolução do Computador Histórico

Leia mais

A História do Computador. Linguagem de Programação Rone Ilídio/ Natã Goulart UFSJ - CAP

A História do Computador. Linguagem de Programação Rone Ilídio/ Natã Goulart UFSJ - CAP A História do Computador Linguagem de Programação Rone Ilídio/ Natã Goulart UFSJ - CAP Origem da Palavra Computador (século XIX) pessoa com função de fazer contas e resolver problemas com número Termo

Leia mais

Máquinas Multiníveis

Máquinas Multiníveis Infra-Estrutura de Hardware Máquinas Multiníveis Prof. Edilberto Silva www.edilms.eti.br edilms@yahoo.com Sumário Conceitos básicos Classificação de arquiteturas Tendências da tecnologia Família Pentium

Leia mais

Organização e Arquitetura de Computadores I. de Computadores

Organização e Arquitetura de Computadores I. de Computadores Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de I Organização Básica B de (Parte V, Complementar)

Leia mais

Introdução INTRODUÇÃO À COMPUTAÇÃO M. Sistema Computacional. Máquina Virtual. Solução 8/10/10. O problema de comunicação humanocomputador

Introdução INTRODUÇÃO À COMPUTAÇÃO M. Sistema Computacional. Máquina Virtual. Solução 8/10/10. O problema de comunicação humanocomputador Introdução INTRODUÇÃO À COMPUTAÇÃO M M.Sc. Ricardo de Sousa Britto (rbritto@ufpi.edu.br) Computador: Máquina programável, de propósito geral, que processa informação. Programa: Seqüência de instruções

Leia mais

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores. 7.3.1.2 Registradores: São pequenas unidades de memória, implementadas na CPU, com as seguintes características:

Leia mais

A Evolução dos Sistemas Operacionais

A Evolução dos Sistemas Operacionais Capítulo 3 A Evolução dos Sistemas Operacionais Neste capítulo, continuaremos a tratar dos conceitos básicos com a intensão de construirmos, agora em um nível mais elevado de abstração, o entendimento

Leia mais

Disciplina: Introdução à Informática Profª Érica Barcelos

Disciplina: Introdução à Informática Profª Érica Barcelos Disciplina: Introdução à Informática Profª Érica Barcelos CAPÍTULO 4 1. ARQUITETURA DO COMPUTADOR- HARDWARE Todos os componentes físicos constituídos de circuitos eletrônicos interligados são chamados

Leia mais

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui.

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui. 3 Tecnologia FPGA Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui. 3.1. FPGA: Histórico, linguagens e blocos Muitos dos

Leia mais

Sistemas Numéricos bit / Byte BIT BYTE. Prof. Celso Candido ADS / REDES / ENGENHARIA

Sistemas Numéricos bit / Byte BIT BYTE. Prof. Celso Candido ADS / REDES / ENGENHARIA BIT BYTE 1 BIT / BYTE Toda informação introduzida em um computador precisa ser entendida pela máquina para que possa ser corretamente interpretada e processada. O computador armazena e movimenta as informações

Leia mais

Microprocessadores. Prof. Leonardo Barreto Campos 1

Microprocessadores. Prof. Leonardo Barreto Campos 1 Microprocessadores Prof. Leonardo Barreto Campos 1 Sumário Introdução; Arquitetura de Microprocessadores; Unidade de Controle UC; Unidade Lógica Aritméticas ULA; Arquitetura de von Neumann; Execução de

Leia mais

Disciplina de Informática. Profª. Me. Valéria Espíndola Lessa lessavaleria@gmail.com Valeria-lessa@uergs.edu.br

Disciplina de Informática. Profª. Me. Valéria Espíndola Lessa lessavaleria@gmail.com Valeria-lessa@uergs.edu.br Disciplina de Informática Profª. Me. Valéria Espíndola Lessa lessavaleria@gmail.com Valeria-lessa@uergs.edu.br 1 O que é Informática? Informática A Informática nasceu da ideia de auxiliar o homem nos trabalhos

Leia mais

História da Informática. Prof. Bruno Crestani Calegaro

História da Informática. Prof. Bruno Crestani Calegaro História da Informática Prof. Bruno Crestani Calegaro Roteiro Introdução Pré-História A evolução dos computadores Cronologia Vídeos Atividade prática Introdução Os computadores estão presentes no dia-a-dia

Leia mais

Processadores. Guilherme Pontes

Processadores. Guilherme Pontes Processadores Guilherme Pontes Já sabemos o básico! Como já sabemos, o processador exerce uma das mais importantes funções do computador. Vamos agora nos aprofundar em especificações mais técnicas sobre

Leia mais

Visão Geral da Arquitetura de Computadores. Prof. Elthon Scariel Dias

Visão Geral da Arquitetura de Computadores. Prof. Elthon Scariel Dias Visão Geral da Arquitetura de Computadores Prof. Elthon Scariel Dias O que é Arquitetura de Computadores? Há várias definições para o termo arquitetura de computadores : É a estrutura e comportamento de

Leia mais

Gerações de Computadores. INF005 - Arquitetura de Computadores e Software Básico Aula 3 Flávia Maristela (flavia@flaviamaristela.

Gerações de Computadores. INF005 - Arquitetura de Computadores e Software Básico Aula 3 Flávia Maristela (flavia@flaviamaristela. Gerações de Computadores INF005 - Arquitetura de Computadores e Software Básico Aula 3 Flávia Maristela (flavia@flaviamaristela.com) Como é formado o meu computador? Computador = hardware + software 1ª

Leia mais

Estrutura geral de um computador

Estrutura geral de um computador Estrutura geral de um computador Prof. Helio H. L. C. Monte-Alto Cristo padeceu uma vez pelos pecados, o justo pelos injustos, para levar-nos a Deus Porque Deus amou o mundo de tal maneira que deu o seu

Leia mais

RESUMO DO LIVRO. A linguagem de máquinas e o custo são analisados antes do computador ser projetado. LINGUAGEM, NÍVEIS E MÁQUINA REAIS

RESUMO DO LIVRO. A linguagem de máquinas e o custo são analisados antes do computador ser projetado. LINGUAGEM, NÍVEIS E MÁQUINA REAIS RESUMO DO LIVRO Um computador digital é uma máquina com programas que, convertidos em instruções, podem facilitar a vida das pessoas. As instruções são simples, como some dois números. As instruções são

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO O que é a Informática? A palavra Informática tem origem na junção das palavras: INFORMAÇÃO + AUTOMÁTICA = INFORMÁTICA...e significa, portanto, o tratamento da informação

Leia mais

Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados

Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Organização de um Computador Típico Memória: Armazena dados e programas. Processador (CPU - Central Processing

Leia mais

Cursos de Computação. Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 01 - História e Funções dos Sistemas Operacionais

Cursos de Computação. Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 01 - História e Funções dos Sistemas Operacionais Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 01 - História e Funções dos Sistemas Operacionais Visão do Sistema Operacional programadores e analistas usuários programas,

Leia mais

Organização de Computadores Hardware

Organização de Computadores Hardware Organização de Computadores Hardware Professor Marcus Vinícius Midena Ramos Colegiado de Engenharia de Computação (74)3614.1936 marcus.ramos@univasf.edu.br www.univasf.edu.br/~marcus.ramos Computador Ferramenta

Leia mais

Unidade 13: Paralelismo:

Unidade 13: Paralelismo: Arquitetura e Organização de Computadores 1 Unidade 13: Paralelismo: SMP e Processamento Vetorial Prof. Daniel Caetano Objetivo: Apresentar os conceitos fundamentais da arquitetura SMP e alguns detalhes

Leia mais

TRABALHO COM GRANDES MONTAGENS

TRABALHO COM GRANDES MONTAGENS Texto Técnico 005/2013 TRABALHO COM GRANDES MONTAGENS Parte 05 0 Vamos finalizar o tema Trabalho com Grandes Montagens apresentando os melhores recursos e configurações de hardware para otimizar a abertura

Leia mais

AULA 1. Informática Básica. Gustavo Leitão. gustavo.leitao@ifrn.edu.br. Disciplina: Professor: Email:

AULA 1. Informática Básica. Gustavo Leitão. gustavo.leitao@ifrn.edu.br. Disciplina: Professor: Email: AULA 1 Disciplina: Informática Básica Professor: Gustavo Leitão Email: gustavo.leitao@ifrn.edu.br Estudo de caso Empresa do ramo de seguros Presidência RH Financeiro Vendas e Marketing TI CRM Riscos Introdução

Leia mais

Técnicas de Manutenção de Computadores

Técnicas de Manutenção de Computadores Técnicas de Manutenção de Computadores Professor: Luiz Claudio Ferreira de Souza Processadores É indispensável em qualquer computador, tem a função de gerenciamento, controlando todas as informações de

Leia mais

Evolução... Introdução (Aula 1) Histórico da Arquitetura de Computadores

Evolução... Introdução (Aula 1) Histórico da Arquitetura de Computadores Evolução... Introdução (Aula 1) Histórico da Arquitetura de Computadores Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Agradecimentos: Camilo Calvi - LPRM/DI/UFES 2 Geração

Leia mais

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de

Leia mais

Informática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1

Informática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Informática I Aula 5 http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

1. CAPÍTULO COMPUTADORES

1. CAPÍTULO COMPUTADORES 1. CAPÍTULO COMPUTADORES 1.1. Computadores Denomina-se computador uma máquina capaz de executar variados tipos de tratamento automático de informações ou processamento de dados. Os primeiros eram capazes

Leia mais

SIS17-Arquitetura de Computadores

SIS17-Arquitetura de Computadores Sistema de Computação SIS17-Arquitetura de Computadores Apresentação da Disciplina Peopleware Hardware Software Carga Horária: 40 horas 2 Computadores atuais Unidade Central de Processamento Entrada Computadores

Leia mais

Organização Básica de computadores e linguagem de montagem

Organização Básica de computadores e linguagem de montagem Organização Básica de computadores e linguagem de montagem Prof. Edson Borin 1 o Semestre de 2012 ~2400 AC Ábaco: 1 a calculadora ~500 AC Introdução do Zero, Índia antiga ~300 AC Matemático Indiano descreveu

Leia mais

ARQUITETURA DE COMPUTADORES - 1866

ARQUITETURA DE COMPUTADORES - 1866 6.7 Operações com as Memórias: Já sabemos, conforme anteriormente citado, que é possível realizar duas operações em uma memória: Escrita (write) armazenar informações na memória; Leitura (read) recuperar

Leia mais

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO 10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO UMA DAS GRANDES FUNÇÕES DA TECNOLOGIA É A DE FACILITAR A VIDA DO HOMEM, SEJA NA VIDA PESSOAL OU CORPORATIVA. ATRAVÉS DELA, ELE CONSEGUE

Leia mais

2. Representação Numérica

2. Representação Numérica 2. Representação Numérica 2.1 Introdução A fim se realizarmos de maneira prática qualquer operação com números, nós precisamos representa-los em uma determinada base numérica. O que isso significa? Vamos

Leia mais

INFORMÁTICA HISTÓRIA DA INFORMÁTICA 1º PD PROFESSOR

INFORMÁTICA HISTÓRIA DA INFORMÁTICA 1º PD PROFESSOR INFORMÁTICA HISTÓRIA DA INFORMÁTICA 1º PD PROFESSOR Nelson Fabbri Gerbelli O que é informática? INFORMAÇÃO TECNOLOGIA INFORMÁTICA INFORmação automática 2 ÁBACO Na China, 3000 anos antes de Cristo, surgiu

Leia mais

BARRAMENTO DO SISTEMA

BARRAMENTO DO SISTEMA BARRAMENTO DO SISTEMA Memória Principal Processador Barramento local Memória cachê/ ponte Barramento de sistema SCSI FireWire Dispositivo gráfico Controlador de vídeo Rede Local Barramento de alta velocidade

Leia mais

Curso Técnico em Redes de computadores. Evolução Histórica dos Computadores

Curso Técnico em Redes de computadores. Evolução Histórica dos Computadores Curso Técnico em Redes de computadores Evolução Histórica dos Computadores 1 O conceito de efetuar cálculos com algum tipo de equipamento data pelo menos do século V a.c, com os babilônios e sua invenção

Leia mais

for Information Interchange.

for Information Interchange. 6 Memória: 6.1 Representação de Memória: Toda a informação com a qual um sistema computacional trabalha está, em algum nível, armazenada em um sistema de memória, guardando os dados em caráter temporário

Leia mais

Memórias Prof. Galvez Gonçalves

Memórias Prof. Galvez Gonçalves Arquitetura e Organização de Computadores 1 s Prof. Galvez Gonçalves Objetivo: Compreender os tipos de memória e como elas são acionadas nos sistemas computacionais modernos. INTRODUÇÃO Nas aulas anteriores

Leia mais

Arquitetura de Computadores. por Helcio Wagner da Silva

Arquitetura de Computadores. por Helcio Wagner da Silva Arquitetura de Computadores -Introdução por Helcio Wagner da Silva Histórico da Evolução dos Computadores ENIAC (Eletronic Numerical Integrator and Computer) John Mauchly& John Presper Eckert, Universidade

Leia mais

INSTITUTO DE EMPREGO E FORMAÇÃO PROFISSIONAL, I.P.

INSTITUTO DE EMPREGO E FORMAÇÃO PROFISSIONAL, I.P. INSTITUTO DE EMPREGO E FORMAÇÃO PROFISSIONAL, I.P. Centro de Emprego e Formação Profissional da Guarda Curso: Técnico de Informática Sistemas (EFA-S4A)-NS Trabalho Realizado Por: Igor_Saraiva nº 7 Com

Leia mais

EVOLUÇÃO DOS SIST. DE COMPUTAÇÃO DÉC. DE 50 E 60

EVOLUÇÃO DOS SIST. DE COMPUTAÇÃO DÉC. DE 50 E 60 INTRODUÇÃO REDES EVOLUÇÃO DOS SIST. DE COMPUTAÇÃO DÉC. DE 50 E 60 Computadores eram máquinas grandes e complexas, operadas por pessoas altamente especializadas; Não havia interação direta entre usuários

Leia mais

Montagem e Manutenção. Luís Guilherme A. Pontes

Montagem e Manutenção. Luís Guilherme A. Pontes Montagem e Manutenção Luís Guilherme A. Pontes Introdução Qual é a importância da Montagem e Manutenção de Computadores? Sistema Binário Sistema Binário Existem duas maneiras de se trabalhar e armazenar

Leia mais

CISC RISC Introdução A CISC (em inglês: Complex Instruction Set Computing, Computador com um Conjunto Complexo de Instruções), usada em processadores Intel e AMD; suporta mais instruções no entanto, com

Leia mais

Sistemas Operacionais Introdução. Professora: Michelle Nery

Sistemas Operacionais Introdução. Professora: Michelle Nery Sistemas Operacionais Introdução Professora: Michelle Nery Área de Atuação do Sistema Operacional Composto de dois ou mais níveis: Tipo de Sistemas Operacionais Sistemas Operacionais Monotarefas Sistemas

Leia mais

Fundamentos de Sistemas de Informação Hardware: Dispositivos de Entrada, Processamento e Saída

Fundamentos de Sistemas de Informação Hardware: Dispositivos de Entrada, Processamento e Saída Fundamentos de Sistemas de Informação Hardware: Dispositivos de Entrada, Processamento e Saída Profª. Esp. Milena Resende - milenaresende@fimes.edu.br Introdução O uso apropriado da tecnologia pode garantir

Leia mais

Prof. Esp. Lucas Cruz

Prof. Esp. Lucas Cruz Prof. Esp. Lucas Cruz O hardware é qualquer tipo de equipamento eletrônico utilizado para processar dados e informações e tem como função principal receber dados de entrada, processar dados de um usuário

Leia mais

Aula 26: Arquiteturas RISC vs. CISC

Aula 26: Arquiteturas RISC vs. CISC Aula 26: Arquiteturas RISC vs CISC Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Arquiteturas RISC vs CISC FAC 1 / 33 Revisão Diego Passos

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Introdução Arquitetura de Introdução Computador: Máquina programável, de propósito geral, que processa informação. Programa: Seqüência de instruções (de uma dada linguagem de programação) que operam sobre

Leia mais

Introdução (Aula 1) Histórico da Arquitetura de Computadores

Introdução (Aula 1) Histórico da Arquitetura de Computadores Introdução (Aula 1) Histórico da Arquitetura de Computadores Evolução... 2 Geração Zero Computadores Mecânicos (1642-1945) (1) Blaise Pascal (1623-1662) Construiu em 1642 a primeira máquina de calcular,

Leia mais

Tecnologia da Administração Computador: origem, funcionamento e componentes básicos Parte I Sumário Introdução Origem Funcionamento Componentes Básicos Referências Introdução O objetivo deste material

Leia mais

ULA Sinais de Controle enviados pela UC

ULA Sinais de Controle enviados pela UC Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento

Leia mais

Processamento de dados - Aula I

Processamento de dados - Aula I Fundamentos de computação Paulo R. S. L. Coelho paulo@facom.uuf.br Faculdade de Ciência da Computação Universidade Federal de Uberlândia Organização 1 Conceitos iniciais 2 3 Organização 1 Conceitos iniciais

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

O quê um Processador e qual a sua função?

O quê um Processador e qual a sua função? O quê um Processador e qual a sua função? O processador é um chip de silício responsável pela execução das tarefas atribuídas ao computador. Os processadores (ou CPUs, de Central Processing Unit) são responsáveis

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador

Leia mais

Arquitetura de Computadores. AULA 1 Introdução

Arquitetura de Computadores. AULA 1 Introdução Arquitetura de Computadores AULA 1 Introdução Adaptação do material desenvolvido pelo Profs. Eduardo Moresi e Edilson Ferneda UCB - DF Histórico Sumário Computadores Mecânicos Computadores Eletrônicos

Leia mais

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br MARCOS DA ARQUITERURA DE COMPUTADORES Geração Zero

Leia mais

Introdução. INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br

Introdução. INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br Introdução INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br introdução Tópicos conceitos básicos o que é um programa um programa na memória decifrando um código referência Capítulo

Leia mais