Baixe o app para aproveitar ainda mais
Prévia do material em texto
Algoritmos e Programação I Aula nº 03 EVOLUÇÃO DA COMPUTAÇÃO Cátia khouri – dcet/uesb Agenda Iniciativas para acelerar o cálculo. Calculadoras Mecânicas. Outros auxílios mecânicos automáticos. Máquinas programáveis. Computadores. As eras da informática. Evolução das Linguagens de Programação. 19/04/2017 Aula 03 - Evolução da Computação 2 Os ancentrais do computador surgiram há mais de 3000 anos!! 19/04/2017 3 Iniciativas para Acelerar Cálculos Aula 03 - Evolução da Computação Mas, quais os primeiros métodos de Cálculo? É quase certo que o primeiro instrumento que o homem utilizou foram seus próprios dedos. 3 19/04/2017 4 Multiplicação dos Romanos Aula 03 - Evolução da Computação Só decoravam a tabuada de multiplicação até 5. O resto dos cálculos era feito com os dedos. 4 Multiplicação dos Romanos 19/04/2017 Aula 03 - Evolução da Computação 5 de 13 9 x 7 = ? Métodos de Cálculo À medida que os cálculos foram ficando mais complexos, A necessidade de outros instrumentos foi ficando mais evidente. 19/04/2017 Aula 03 - Evolução da Computação 6 de 13 Aula 03 - Evolução da Computação 19/04/2017 7 Ábaco 3000AC 7 Aula 03 - Evolução da Computação 19/04/2017 8 Ábaco 8 Aula 03 - Evolução da Computação 19/04/2017 9 Ábaco Representação do número 28: 2 x 10 + 1 x 5 + 3 x 1 9 Aula 03 - Evolução da Computação 19/04/2017 10 Soma efetuada no Ábaco 326 1 10 100 1000 5 50 500 5000 326 + 102 = ? = 428 + 102 10 Aula 03 - Evolução da Computação 19/04/2017 11 Multiplicação dos Árabes 11 19/04/2017 12 Multiplicação dos Árabes Aula 03 - Evolução da Computação Soma-se os números em cada diagonal, colocando o “vai-um” acima da próxima diagonal, quando houver. 2 1 7 8 4 8 2 1 7 1 4 2 217 x 14 = ? 3 0 3 8 217 x 14 = 3038 1 1 12 Ossos de Napier Jonh Napier (1617) Inventor dos logaritmos Generalizou o método tabular dos árabes 19/04/2017 Aula 03 - Evolução da Computação 13 de 13 Ossos de Napier 19/04/2017 Aula 03 - Evolução da Computação 14 de 13 Régua de Cálculo William Oughtred (1633) Sacerdote inglês Representou os logaritmos de Napier em escalas de marfim Círculos de Proporção Régua de Cálculos primeiro computador analógico 19/04/2017 15 Aula 03 - Evolução da Computação 15 Primeira Máquina de Calcular Wilhelm Schickard (1592-1635) Fazia multiplicação e divisão Foi perdida durante a Guerra dos Trinta Anos Usada por Kepler em 1623 19/04/2017 16 Aula 03 - Evolução da Computação Réplica no Deutsches Museum Munique-AL 16 Máquina de Somar – Pascalina Blaise Pascal (1623-1662) Filósofo e matemático francês; Auxiliar de seu pai – coletor de impostos. Máquina fazia somas e subtrações; Constituída de engrenagens mecânicas; Sistema decimal Quando um disco ultrapassava o valor 9, retornava ao 0 e aumentava uma unidade no disco imediatamente superior. Primeira calculadora mecânica do mundo. 19/04/2017 17 Aula 03 - Evolução da Computação 17 Réplica da máquina de calcular de Blaise Pascal 19/04/2017 18 Aula 03 - Evolução da Computação Originais no Zwinger Museum – Dresden-AL e Musée des Arts et Métiers – Paris-FR 18 Máquinas de calcular Gottfried Wilhelm Leibzniz (1646-1716) Filósofo e matemático alemão. Aprimorou o projeto de Pascal. A máquina de Leibniz fazia multiplicações e divisões. 19/04/2017 19 Aula 03 - Evolução da Computação Auxílios Mecânicos Automáticos 19/04/2017 20 Aula 03 - Evolução da Computação Basile Bouchon (1728) Tear para tecer desenhos de seda. Desenhos cifrados em folha de papel perfurado giratória. Somente trabalhavam as agulhas que coincidiam com os furos. Auxílios Mecânicos Automáticos 19/04/2017 21 Aula 03 - Evolução da Computação Joseph Marie Jacquard (1801) Máquina de tecer com cartões perfurados. Ideia que seria aproveitada mais tarde. Máquina Diferencial de Babbage 19/04/2017 22 Aula 03 - Evolução da Computação Charles Babbage (1820) Baseado em conceitos e ideias de outros cientistas, Inclusive de Jacquard, Buscando evitar os erros contidos em tabelas matemáticas de sua época logaritmos, funções trigonométricas, etc., Construiu um modelo. Máquina Diferencial de Babbage 19/04/2017 23 Aula 03 - Evolução da Computação Em 1823 o governo britânico financiou a construção da máquina. Não havia ferramentas adequadas na época. Babbage gastou tempo construindo ferramentas. O projeto parou várias vezes por falta de fundos. A máquina era composta por discos giratórios operados por manivelas. Máquina Analítica de Babbage 19/04/2017 24 Aula 03 - Evolução da Computação Em 1833 projetou uma máquina que podia ser programada com cartões perfurados. Calculava várias funções diferentes. Não foi concluída – tecnologia pouco avançada. Um século mais tarde suas ideias seriam materializadas. Além do Hardware... Augusta Ada Byron (1815-1852) Conheceu o projeto de Babagge; Teve ideias que superavam às do autor; Projetou diversas funcionalidades; Escreveu o primeiro algoritmo para a máquina. Deu nome à linguagem de programação Ada. 25 Aula 03 - Evolução da Computação Máquina Analítica de Babbage 19/04/2017 26 Babbage é considerado por muitos como o verdadeiro pai do computador. Aula 03 - Evolução da Computação George Boole (1815-1864) Matemático inglês 1854 – princípios da lógica booleana variáveis assumem apenas valores 0 e 1 (verdadeiro e falso). Tipo bool nas linguagens de programação. 27 Aula 03 - Evolução da Computação Além do Hardware... Incrementando a entrada de dados Herman Hollerith (1860-1929) - Estatístico Responsável por grande mudança na maneira de se processar os dados dos censos da época. Censo de 1880 dos EUA levou quase 8 anos para ser processados. Agência Estatística dos EUA – contratou Hollerith Máquina de perfurar cartões (lembram de Jacquard?) 19/04/2017 28 Aula 03 - Evolução da Computação Incrementando a entrada de dados Tabuladora de cartões Primeiro passo à programação Censo de 1890 - 1 a 3 anos Vários países usaram a máquina. Hollerith montou a empresa Tabulating Machine Company Mais tarde, fundiu-se com outras 3 empresas: International Business Machines Corporation – IBM. 19/04/2017 29 Aula 03 - Evolução da Computação Máquinas sob encomenda para o United States Census Bureau; Fundou a Tabulating Machine Company – 1896; Alugava e vendia para outros países; 1911 – quatro corporações se fundiram, incluindo a firma de Hollerith – Computing Tabulating Recording Corporation. Sob a presidencia de Thomas J. Watson, foi renomeada para IBM 19/04/2017 30 Incrementando a entrada de dados Aula 03 - Evolução da Computação 1930 a 1950 – anos efervescentes Konrad Zuse (1910-1995) 1936-1938 surge o Z1 1941 é concluído o Z3 primeira calculadora universal controlada por um programa 2600 relés Memória: 64 números de 22 bits Projetar aviões e mísseis 31 Aula 03 - Evolução da Computação Howard Aiken “O sonho de Babbage torna-se realidade” 1937-1944 Harvard Mark 1 Medidas: 16,6m X 2,6m; Peso: 5t e várias toneladas de gelo para refrigeração Milhares de relês Barulhento. Projeto conjunto Universidade de Harvard e IBM. 32 Aula 03 - Evolução da Computação 1930 a 1950 – anos efervescentes COLOSSUS - 1943 Inglaterra 1500 válvulas 5000 caracteres por segundo Para decifrar códigos usados pelo exército alemão na II Guerra Mundial. 33 Aula 03 - Evolução da Computação ENIAC – 1943-1946 John Presper Eckert (1919-1995) e John Mauchly (1907-1980) (Univ. Pensilvânia) Eletronic Numeric Integrator And Calculator. Última grande calculadora ou primeiro computador? Contratado para cálculos de balística 34 Aula 03 - Evolução da Computação ENIAC 17.468 válvulas, 70.000 resistências, 10.000 capacitores, 1.500 relés e 6.000 comutadores manuais. 150 m2 500 multiplicações por segundo. Consumo de 150.000 watts. US$ 500.000 19/04/2017 35 Aula 02 - Um pouco de história Aula 03 - Evolução da Computação ENIAC 19/04/2017 36 Aula 03 - Evolução da Computação ENIAC Programação: através de fios e pinos (como painel telefônico)– Manualmente; Executava 5000 adições/subtrações ou 300 multiplicações por segundo; Permitia Processamento Paralelo; Para programar demorava 1 ou 2 dias; Grande limitação: capacidade de armazenamento de dados. 19/04/2017 37 Aula 03 - Evolução da Computação Arquitetura Von Neumann John von Neumann (1903-1957) (consultor do ENIAC) Matemático húngaro Formalizou o projeto lógico de um computador. Programa armazenado (até então instruções elas eram lidas de cartões perfurados e executadas, uma a uma). Operações com número binário. Desenvolveu lógica dos circuitos. A maioria dos computadores de hoje em dia segue ainda o modelo proposto por von Neumann. 19/04/2017 38 Aula 03 - Evolução da Computação 19/04/2017 39 Aula 03 - Evolução da Computação Arquitetura Von Neumann Computadores 40 Aula 03 - Evolução da Computação EDSAC – Eletronic Delay Storage Automatic Calculator Primeira baseada em Von Neumann; Vários outros baseados na arquitetura IAS BINAC Manchester MARK 1 Computadores UNIVAC I UNIVersal Automatic Computer Maucly, Eckert – 1951 Construtores do ENIAC lançado em escala comercial – 46 vendidos usado pela 1a vez na Agência de Recenseamento dos EUA em 1951 usava diodos de cristal ao invés de válvulas a vácuo 35 m2 41 Aula 03 - Evolução da Computação UNIVAC I Aula 03 - Evolução da Computação 42 19/04/2017 Computadores IBM 701 1953 Guerra da Coréia 1o computador de grande porte da IBM 43 Aula 03 - Evolução da Computação Computadores IBM 704 – 1955 Só entrava em pane a cada 8 dias ! Ainda utilizava válvulas Criada a primeira linguagem de programação: o FORTRAN 44 Aula 03 - Evolução da Computação Computadores IBM 7090 – 1959 Transistores (1947) Foram vendidas centenas a um preço médio de US$ 3.000.000 Réplica do Primeiro Transistor 45 Aula 03 - Evolução da Computação Computadores Família IBM/360 – 1961 Objetivo - padronização Transistorizados - chip Sistema modular Mais poderosos e mais baratos Aceitavam uma grande variedade de periféricos Vendidas milhares de unidades hegemonia absoluta da IBM 46 Aula 03 - Evolução da Computação IBM/360 19/04/2017 Aula 03 - Evolução da Computação 47 As Eras da Informática 1ª Geração Circuitos Eletro-mecânicos e Válvulas 2ª Geração Transistor 3ª Geração Circuito Integrado 4ª Geração Computadores pessoais Miniaturização Microprocessador 5ª Geração Computação ubíqua (softwares embarcados) 48 Aula 03 - Evolução da Computação 1ª Geração – 1951-1958 Circuitos eletromecânicos e válvulas Operações internas em milissegundos Válvula – dispositivo que conduz a corrente elétrica num só sentido ENIAC 49 Aula 03 - Evolução da Computação 19/04/2017 Além do Hardware... 1951 – Grace Murray criou a noção do compilador. 1956 – Edsger Dijkstra cirou um algoritmo eficiente para resolver o problema do caminho mínimo em grafos. 1957 – John Backus e outros desenvolveram o primeiro compilador de FORTRAN. 1959 – Alan Turing – Teste de Turing – um dos primeiros esforços em Inteligência Artifcial. 50 Aula 03 - Evolução da Computação 19/04/2017 Transistor – 1948 (prêmio Nobel de 1956) Amplificador e Interruptor de sinais elétricos Utiliza uma pequena quantidade de energia para controlar uma quantidade maior. Em comparação com válvula: Menor, mais rápido, mais duradouro. IBM 7090 19/04/2017 51 2ª Geração – 1959-1963 Aula 03 - Evolução da Computação Além do Hardware... 1960 – A Ciência da Computação surge como uma disciplina por si só. Final da década – ARPAnet começou a ser construída. Precurssora da Internet. Para fins militares. Diversas novas lingugens de programação foram criadas. Prova de corretude de programas com métodos formais ganhou importância. Uma base matemática rigorosa para análise de algoritmos se iniciou com o trabalho de Donald Knuth. Lógica Fuzzy. 52 Aula 03 - Evolução da Computação 19/04/2017 Circuito Integrado SSI – (small scale integration) até 10 elementos por chip MSI – (medium scale integration) 10 a 100 elementos por chip Uma pastilha de silício – cm2 ou mm2 Operações internas em nanosegundos Influência do programa espacial americano IBM 360. 19/04/2017 53 3ª Geração – 1964-1979 Aula 03 - Evolução da Computação Além do Hardware... Grande avanço em algoritmos e complexidade computacional. 1971 – Steve Cook – NP-Completude. Richard Karp mostrou que vários problemas combinatórios são NP-completos. Unix – Ken Thompson e Dennis Ritchie – Bell Laboratórios. Teoria de criptografia de chave pública. Brian Kernighan e Ritchie – Linguagem de programação C. Pascal. Ada. Criação do protocolo TCP/IP Pela primeira vez é mencionado o nome Internet. 54 Aula 03 - Evolução da Computação 19/04/2017 Firmware – software armazenado em chip. Integração em escalas superiores. Microprocessador – Intel - 1970. LSI (large scale integration) Contém todo circuito lógico de uma CPU em um chip do tamanho de uma unha. Mini e microcomputadores – PCs desktop e laptops. VLSI (very large scale integration) e ULSI (ultra large scale integration). 19/04/2017 55 4ª Geração – 1980-presente Aula 03 - Evolução da Computação Além do Hardware... Steve Wozniak e Steve Jobs – Apple – crescimento do PC. Macinttosh. Inteligência Artificial. Data Mining. Lógica Fuzzy. Robótica. Expansão da Internet Uso acadêmico. World Wide Web Desenvolvimento de navegadores para Internet. Redes Sociais. Comércio eletrônico. 56 Aula 03 - Evolução da Computação 19/04/2017 Escala de integração de circuitos integrados Abrev. Denominação (Scale Integration) Complexidade (números de transístores) Interpretação comum Tanenbaum7 Texas Instruments8 SSI Small SI 10 1–10 Até 12 MSI Medium SI 100 10–100 12–99 LSI Large SI 1.000 100–100.000 100–999 VLSI Very Large SI 10.000–100.000 > 100.000 ab 1.000 ULSI Ultra Large SI 100.000–1.000.000 — — SLSI Super Large SI 1.000.000–10.000.000 — — 19/04/2017 57 Aula 03 - Evolução da Computação Diminuição dos computadores PDAs SLSI (super large scale integration). Computação em atividades cotidianas. Softwares embarcados Celular; Cartão de banco; Microondas; Automóvel. Computação ubíqua. Computação pervasiva. Uso massivo das redes sociais. Computação em Nuvem. 19/04/2017 58 5ª Geração – atualmente Aula 03 - Evolução da Computação Classificação dos computadores Mainframes Supercomputadores Computadores de porte médio Estações de Trabalho (Workstations) Computadores Pessoais (Personal Computers - PC) Esta classificação varia com a época! 19/04/2017 59 Aula 03 - Evolução da Computação Mainframes Grande tamanho físico; Processamento de grande volume de informações Bilhões de instruções por segundo; Bilhões de caracteres. Acesso a vários usuários ao mesmo tempo conectados através de uma rede; Alta disponibilidade; Alta taxa de transferência de dados; Grandes empresas. 19/04/2017 60 Aula 03 - Evolução da Computação Supercomputadores Os mais rápidos e poderosos Problemas em que o tempo de cálculo é o limite Trilhões de instruções por segundo Aplicações muito sofisticadas que requerem gigantescas manipulações de dados: Científicas e militares Previsão do tempo. Pesquisa de armamentos. Efeitos especiais para cinema. 19/04/2017 61 Aula 03 - Evolução da Computação Computadores de Porte Médio Computadores multiusuário projetados para suprir as necessidades de organizações de porte médio. Centenas ou milhares de usuários conectados. Controle de estoques; Entrada de pedidos, etc. 19/04/2017 62 Aula 03 - Evolução da Computação Estações de Trabalho Grande capacidade de processamento gráfico e matemático; Diversas tarefas ao mesmo tempo; Aplicações de engenharia, operações financeiras e gráficas. 19/04/2017 63 Aula 03 - Evolução da Computação Computadores Pessoais Revolução na Informática! Popularização/democratização. Mesma capacidade de processamento dos Mainframes da década 1980 e mais capacidades gráficas e interativas; Utilização isolada ou em rede; Usuários domésticos; Pequenas empresas. 19/04/2017 64 Desktops Laptops Palmtops Aula 03 - Evolução da Computação Evolução das Linguagens de Programação Acompanhandoa evolução das máquinas – do hardware – as formas de programar os computadores também evoluiu muito. 19/04/2017 Aula 03 - Evolução da Computação 65 19/04/2017 Aula 03 - Evolução da Computação 66 de 13 Evolução das Linguagens de Programação Linguagens de Máquina 0’s e 1’s dependentes de máquina; 1 0 0 1 1 0 1 0 1 1 0 0 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 0 1 1 0 0 1 0 0 0 0 1 0 1 1 0 1 0 0 1 1 1 0 0 0 1 0 1 1 0 0 1 1 1 0 0 1 0 19/04/2017 Aula 03 - Evolução da Computação 67 de 13 Linguagens simbólicas Mnemônicos – tradutor (assembler) LOAD A ADD B STORE SOMA Linguagens de alto nível Mais próximas do ser humano soma = a + b compiladores interpretadores Evolução das Linguagens de Programação 19/04/2017 Aula 03 - Evolução da Computação 68 de 13 C e C++ FORTRAN, COBOL 1967 – BCPL Martin Richards – p/ SO e compiladores 1970 – B Ken Thompson – UNIX (Bell Laboratories) B e BCPL – typeless – um dado, uma palavra – o programador trata inteiros e reais 19/04/2017 Aula 03 - Evolução da Computação 69 de 13 C e C++ 1972 – C Dennis Ritchie – Bell Lab. Acrescenta tipos de dados UNIX Maioria dos SO em C e C++ Independente de hardware – portabilidade Várias versões incompatíveis Em 1983 – criado comitê técnico ANSI 1989 – documento ANSI (American National Standards Institute) 1990 – documento ANSI/ISSO 9899 – ANSI C 19/04/2017 Aula 03 - Evolução da Computação 70 de 13 C e C++ C++ anos 80 Bjarne Stroustrup – Bell Programação orientada a objetos Busca de desenvolvimento de programas sem erro; Maneira natural de modelar/enxergar os problemas; Desenvolvimento mais produtivo do que estruturada; Smaltalk (Xerox) – linguagem OO pura – tudo nela é um objeto. 19/04/2017 Aula 03 - Evolução da Computação 71 de 13 C e C++ Biblioteca padrão de C++ Peças – classes e funções Abordagem – blocos de construção Vantagem de criar funções – conhecer Desvantagem – perda de tempo 19/04/2017 Aula 03 - Evolução da Computação 72 de 13 Java 1995 – Sun – baseada em C e C++ Páginas com conteúdo dinâmico – interativas. Aplicativos para equipamentos (SE). Aplicação com gráficos, animação, audio, BD, redes, multithreading. Aparelhos celulares. Referências Livro - Informática: novas aplicações com microcomputadores. Meirelles, F. de Souza. SANCHES, Rosely. Uma breve história da computação. Disponível em http://www.icmc.usp.br/pessoas/andretta/ensino/aulas/sme0230-1-10/aula01.pdf WILLRICH, Roberto. Introdução Informática. Capítulo 1. Disponível em http://www.inf.ufsc.br/~willrich/Ensino/INE5602/ Site: Musée des arts et métiers. Disponível em http://www.arts-et-metiers.net/ Site: Deutsches Museum. Disponível em http://www.deutsches-museum.de/en/exhibitions/communication/computers/digital-calculators/ Site da IBM: http://www-03.ibm.com/ibm/history/ Site do Computer History Museum. Disponível em http://www.computerhistory.org/timeline/ 19/04/2017 73 Aula 03 - Evolução da Computação
Compartilhar