Introdução à Computação: História da...

54
Introdução à Computação: História da Computação Beatriz F. M. Souza ([email protected]) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória, ES Brazil 1

Transcript of Introdução à Computação: História da...

Introdução à

Computação: História

da Computação

Beatriz F. M. Souza

([email protected])

http://inf.ufes.br/~bfmartins/

Computer Science Department

Federal University of Espírito Santo

(Ufes),

Vitória, ES – Brazil

1

História da Computação – Paralelo

História da Computação versus História Humana

– Fatos da História Humana com influência importante no desenvolvimento tecnológico;

– Sequência cronológica de descobertas importantes sob a influência dos acontecimentos históricos;

– Serendiptidade.

2

História da Computação – Antiguidade

• A civilização Grega:

– Amor ao conhecimento;

– Lógica e Axiomas;

– Pensadores e Filósofos: • Sócrates, Platão,

Aristóteles, Thales de Mileto, Archimedes e muitos outros.

(Homem de Rodin)

3

História da Computação – Antiguidade

• A civilização Egípcia:

– Trabalho Remunerado na construção das tumbas e pirâmides, os primeiros registros datam de 1650 a.C.;

– Pagamento calculado a partir da divisão de pães;

– Resolução de problemas.

(Papiro de Rhind)

4

História da Computação – Antiguidade

• A civilização Macedônica:

– Existiu por volta de 808 a.C. até 168 a.C.;

– Alexandre o Grande era discípulo de Arquimedes;

– Biblioteca de Alexandria;

– Valorização do conhecimento;

– Conquistas geográficas e

internacionalização.

5

História da Computação – Antiguidade

• A civilização Romana:

– Algarismos Romanos e o não uso de zero;

– Disseminação do Latin;

– Conquistas geográficas, estradas, construções, moeda, comércio, integração cultural e a República.

6

História da Computação – Antiguidade

• A civilização Indo-arábica:

– Algarismos arábicos data do século II a.C.;

– Levado para o Oriente Médio por volta de 670 d.C.;

– Chegou a Europa por volta de 976 d.C.;

– Matemática decimal como conhecemos;

– Região do vale do Rio Indo,

localizada o atual Paquistão.

7

História da Computação – Antiguidade

• A civilização da Ásia Oriental:

– Atribui-se aos Chineses e a Japoneses a criação dos primeiros ábacos como uma extensão da contagem nos dedos;

– As publicações mais antigas são de Chou Pei. Em seu livro de matemática “Chui Chang Suan Shu” (Nove capítulos sobre a arte da matemática, em torno de 1200 a.c.). Entre vários assuntos abordados, chama a atenção problemas sobre mensuração de terras, agricultura, sociedades, engenharia, impostos, cálculos, soluções de equações e propriedades dos triângulos retângulos.

8

História da Computação – Etimologia

• Antigos pastores, para controlar seus rebanhos de ovelhas, os associavam a pedras que guardavam em sacolas. Cada ovelha correspondia a uma pedrinha. No início e final do dia, faziam as devidas correspondências. Se sobrasse pedra, faltava ovelha. Como pedrinha em latim significa "Calculus", daí vem a palavra cálculo.

9

História da Computação - Primórdios

• O cálculo é uma das criações supremas do pensamento humano;

• Motivação dos primeiros cálculos:

– A necessidade de prever condições de tempo e clima para colheitas;

– A necessidade de contar, trocar, vender e emprestar;

– A necessidade de remunerar um trabalho;

– A necessidade humana de medir (tempo, distância, volume, etc.);

– A necessidade de prever medidas;

– A necessidade de resolver problemas.

10

História da Computação – Pré-história

• O Ábaco:

– Constituiu o primeiro dispositivo manual de cálculo, servia para representar os números no sistema decimal e trabalhar operações com eles;

– Data de 2400 a.C.

11

História da Computação – Pré-história

• O Ábaco:

– Presente em várias civilizações.

12

História da Computação – Pré-história

• Pré-história Tecnológica:

– Uso de dispositivos, primitivos e analógicos:

– A misteriosa máquina de Anticítera (Antikythera);

13

História da Computação – Pré-história

• Pré-história Tecnológica:

– A primeira máquina de calcular foi criada em 1623 por Wilhelm Schickard, teólogo alemão.

(Manuscritos de Shickard) (Réplica da máquina)

14

História da Computação – Pré-história

• Pré-história Tecnológica:

– No início do século XVII, o escocês John Napier inventou um dispositivo chamado Ossos de Napier que são tabelas de multiplicação gravadas em bastões;

– Evitava a memorização da tabuada e que trouxe grande auxílio ao uso de logaritmos em execução de operações como multiplicações e divisões longas.

15

História da Computação – Pré-história

• Pré-história Tecnológica:

– William Oughtred, um sacerdote inglês, em 1633 representou os logarítmos de Napier em escalas de marfim, chamando-os de Círculos de Proporção;

– Originou-se a Régua de Cálculos.

16

História da Computação – Pré-história

• Pré-história Tecnológica:

– A Pascalina primeira calculadora, criada por Blaise Pascal em 1642, executava operações de soma e subtração;

17

História da Computação – Pré-história

• Pré-história Tecnológica:

– A Lógica Matemática (dedução lógica) como conhecemos foi iniciada pelos estudos do filósofo alemão Gottfried Wilhelm Leibniz (1646 - 1716);

– Entre outras coisas, Leibniz queria dotar a Metafísica (aquela parte da Filosofia que estuda o “ser” em si) de um instrumento suficientemente poderoso que a permitisse alcançar o mesmo grau de rigor que tinha alcançado a Matemática.

(Gottfried Wilhelm Leibniz) 18

História da Computação – Pré-história

• Pré-história Tecnológica:

– Em 1728, Basile Bouchon construiu o “Tear para Tecer Desenhos de Seda”;

– Os desenhos eram cifrados em folha giratória de papel perfurado. As agulhas trabalhavam coincidentes com este furos;

– Em 1801, Joseph Marie Jacquard construiu a “Máquina de Tecer com Cartões Perfurados”;

Esta ideia seria aproveitada posteriormente!

19

História da Computação – Pré-história

• Pré-história Tecnológica:

– Máquina de Tecer de Jacquard.

20

História da Computação – Pré-história

• Pré-história Tecnológica:

– A Máquina Diferencial, foi criada por Charles Babbage, um inventor inglês, em 1822, com a finalidade de efetuar cálculos de polinômios.

– Vídeo:

• Babbage Difference Engine in Motion.

21

História da Computação – Pré-história

• Pré-história Tecnológica:

– Posteriormente em 1833, Babbage projetou a Máquina Analítica, que era uma evolução da Máquina Diferencial;

– Babbage é considerado por muitos, como o pai dos computadores.

22

História da Computação – Pré-história

• Pré-história Tecnológica:

– A Primeira Programadora: • Ada Augusta Byron era filha do famoso poeta Lord Byron e foi

educada pelo matemático logicista inglês Augustus De Morgan;

• Foi auxiliar de Babbage, depois de ter sido apresentada a ele durante a demonstração da Máquina de Diferenças;

• Traduziu anotações do trabalho de Babbage para o Inglês e adicionou suas observações pessoais a elas, posteriormente publicadas em “Observations on Mr. Babbage’s Analytical Engine”;

• Conforme comentado por B.H. Newman, os escritos de Ada Byron “mostram como ela teve uma total compreensão dos princípios de um computador programado, um século antes do tempo deste”.

23

História da Computação – Pré-história

• Pré-história Tecnológica:

– O primeiro programa (algoritmo), publicado por Lady Ada Lovelace:

24

História da Computação – Pré-história

• Pré-história Tecnológica:

– A primeira programadora: • Artigo para leitura:

– Rheingold, Howard (2000) The First Programmer Was a Lady. In

Tools for Thought (pp. 25-44).

25

História da Computação – Pré-história

• Pré-história Tecnológica:

– O inglês George Boole (1815 - 1864) é considerado o fundador da Lógica Simbólica (proposicional). Ele desenvolveu com sucesso o primeiro sistema formal para raciocínio lógico;

– Boole foi o primeiro a enfatizar a possibilidade de se aplicar o cálculo formal a diferentes situações, e fazer operações com regras formais, desconsiderando noções primitivas.

(George Boole) 26

História da Computação – Pré-história

• Pré-história Tecnológica:

– Os dados do censo de 1880 dos EUA, que ocorre a cada 10 anos, levou quase 8 anos para ser processado. Temia-se que os dados do censo de 1890 não estivessem processados em 1900;

– Herman Hollerith, estatístico americano, foi encarregado pela Agência Estatística dos EUA de desenvolver uma técnica para acelerar o processamento dos dados do censo;

– Hollerith usou a ideia de Jackard e construiu a Perfuradora de Cartões na qual os dados eram perfurados em cartões, que podiam ser classificados por meio de pinos que passavam pelos furos.

27

História da Computação – Pré-história

• Pré-história Tecnológica:

– O processamento do censo de 1900 dos EUA demorou 3 anos, com o uso da ideia de Hollerith;

– Outros países adotaram a máquina posteriormente;

– A palavra holerite, que se refere ao demonstrativo impresso dos vencimentos do trabalhador, tem origem a partir do nome deste visionário;

– Em 1911, quatro corporações, incluindo a firma de Hollerith (Tabulating Machine Company), se fundiram para formar a Computing Tabulating Recording Corporation. Sob a presidencia de Thomas J. Watson, ela foi renomeada para IBM.

28

História da Computação – Pré-história

• Pré-história Tecnológica:

– A Perfuradora e a Tabuladora de cartões de Hollerith e o cartão perfurado;

29

História da Computação – Idade Áurea

• Idade Áurea (a Matemática):

– A passagem do século XVIII para o século XIX marca o início de um novo tempo na História da matemática, e, mais do que qualquer período precedente, mereceu ser conhecido como a sua “Idade Áurea”, que afetou diretamente a evolução em direção ao surgimento e fundamentação da Ciência da Computação;

– Os primeiros sistemas foram desenvolvidos pelos matemáticos Friedrich Ludwig Gottlob Frege (alemão) Giuseppe Peano (italiano). Ao lado destes, George Cantor (alemão), abriu um novo campo dentro do mundo da análise, com sua teoria sobre conjuntos infinitos;

– Apesar de inicialmente Frege e Peano tratarem suas idéias como Lógica, hoje as conhecemos como a Teoria dos Conjuntos.

30

História da Computação – Idade Áurea

• Idade Áurea (a Matemática):

– David Hilbert trabalhava baseado em duas premissas:

• A atemática deveria, pelo menos em teoria, ser capaz de responder a cada pergunta individual;

• Deveria ficar livre de inconsistências – ou seja, tendo-se mostrado que uma declaração é verdadeira por um método, não deveria ser possível mostrar que ela é falsa por outro método.

– Hilbert estava convencido de que, tomando apenas alguns axiomas, seria possível responder a qualquer pergunta matemática imaginária, sem medo de contradição.

31

História da Computação – Idade Áurea

• Idade Áurea (a Matemática):

– No dia 8 de agosto de 1900, Hilbert deu uma palestra histórica no Congresso Internacional de Matemática em Paris.

– Nesta palestra ele propôs-se a demonstrar a coerência da aritmética, para depois estender tal coerência aos âmbitos dos demais sistemas. Apostou na possibilidade da criação de uma linguagem puramente sintática, sem significado, a partir da qual se poderia falar a respeito da verdade ou falsidade dos enunciados. Tal linguagem foi, e é chamada de sistema formal.

32

História da Computação – Idade Áurea

• Idade Áurea (a Matemática):

– Kurt Gödel, em sua tese de doutorado publicada em 1929, expõe diversos resultados extremamente importantes para a lógica;

– Deduz que todo sistema de axiomas de primeira ordem não-contraditório possui um modelo (Teorema de Gödel).

– Do Teorema de Gödel, surgiu o fundamento básico de todo o estudo e desenvolvimento da Computação posterior: a Máquina de Turing.

33

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– O inglês Alan Mathison Turing, enquanto aluno do matemático Max Neumann, tomou conhecimento de Hilbert e Gödel;

– Para as pesquisas da época, era fundamental saber se é possível haver um procedimento efetivo para se solucionar todos os problemas de uma determinada classe, que estivesse bem definida.

– O conjunto desses esforços acabou por formar a fundamentação teórica da que veio a ser chamada “Ciência da Computação”.

34

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– Em 1936, Turing consagrou-se como um dos maiores matemáticos do seu tempo, quando fez antever aos seus colegas que é possível executar operações computacionais sobre a teoria dos números por meio de uma máquina que tenha embutida as regras de um sistema formal;

– Turing definiu uma máquina teórica que se tornou um conceito chave dentro da Teoria da Computação.

(Alan Mathison Turing)

35

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– A percepção genial de Turing foi a substituição da noção intuitiva de procedimento efetivo por uma ideia formal, matemática.

– O resultado foi a construção de uma conceituação matemática da noção de algoritmo*, uma noção que ele modelou baseando-se nos passos que um ser humano dá quando executa um determinado cálculo ou cômputo;

– Ele formalizou definitivamente o conceito de algoritmo.

36

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– O trabalho de Turing ficou documentado no artigo On Computable Numbers with an aplication to the Entscheidungs problem, publicado em 1936;

– Ele provou que para qualquer sistema formal existe uma Máquina de Turing que pode ser programada para imitá-lo. Ou em outras palavras: para qualquer procedimento computacional bem definido, uma Máquina de Turing Universal é capaz de simular um processo mecânico que execute tais procedimentos.

37

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– O esquema da Máquina de Turing.

38

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– Uma réplica da Máquina de Turing.

39

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– Mais detalhes sobre a Máquina de Turing (a Fita):

• Composta por quadrantes ou células que armazenam uma informação simbólica de cada vez;

• Usada como dispositivo de Entrada e Saída;

• Usada também como Memória;

40

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– Mais detalhes sobre a Máquina de Turing (a Unidade de Controle);

• Possui uma unidade de Leitura e Gravação da Fita, uma célula de cada vez em cada movimento;

• Na leitura reflete o Estado de Controle da máquina;

• Pode deslocar-se para ambos os sentidos da Fita;

41

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– Mais detalhes sobre a Máquina de Turing (a Função de Transição);

• Comanda a Leitura e Gravação da Fita por meio da Unidade de Controle;

• Comanda o sentido da operação de Leitura e Gravação da Fita por meio da Unidade de Controle;

• Define o Estado da Máquina;

42

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– Durante a Segunda Guerra Mundial, Turing trabalhou para a inteligência britânica num centro especializado em quebra de códigos.;

– Foi chefe do Hut 8, a seção responsável pela criptoanálise da frota naval alemã. Planejou uma série de técnicas para quebrar os códigos alemães, incluindo o método da bomba eletromagnética, uma máquina eletromecânica que poderia encontrar definições para a Máquina Enigma, usada nos U-Boats de Hitler.

43

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– Konrad Zuse criou entre 1936 e 1938 o Z1;

– E posteriormente 1941 é concluído o Z3, primeira calculadora universal controlada por um programa;

– Com 2600 relés e memória: 64 números de 22 bits.

45

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

“O sonho de Babbage torna-se realidade!”

– Howard Aiken cria entre 1937 e 1944 o Harvard Mark 1:

• Medidas: 16,6m X 2,6m;

• Peso: 5t e várias toneladas de gelo para refrigeração;

• Utilizava relés e outros dispositivos eletromecânicos.

46

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– O Colossus foi desenvolvido em 1943 pelos britânicos:

• Possuía dimensões gigantescas, com 1.500 válvulas e era capaz de processar cerca de 5.000 caracteres por segundo;

• Criado com a finalidade de decifrar os códigos secretos usados pelo exército alemão na Segunda Guerra Mundial;

• O interesse pela construção do primeiro computador foi grande, seu interesse inicial era militar, porque Alemanha e EUA disputavam uma acirrada corrida contra o tempo.

47

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– O Colossus:

48

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– ENIAC (Electronic Integrator and Calculator):

• Conhecido como a derradeira grande calculadora, levou 3 anos para ser construída: 1943 -1946;

• Possuía 17.468 válvulas, 70.000 resistências, 10.000 capacitores, 1.500 relés e 6.000 comutadores manuais.

• Consumiu uma pequena fortuna: US$500.000,00 da época;

• Ocupava uma área de 150m2 e pesava 30 toneladas;

• Era acionada por um motor equivalente a dois potentes motores de carros de quatro cilindros, enquanto um enorme ventilador refrigerava o calor produzido pelas válvulas;

• Consumia 150.000 watts ao produzir o calor equivalente a 50 aquecedores domésticos;

49

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– ENIAC (Electronic Integrator and Calculator):

• Programação: através de fios e pinos (como painel etelefônico);

• Executava 5000 adições/subtrações ou 300 multiplicações por segundo

• Para programar demorava 1 ou 2 dias (situação intolerável);

• A grande limitação era a capacidade de armazenamento de dados;

• O ENIAC é considerado por muitos o primeiro computador.

50

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– ENIAC (Electronic Integrator and Calculator):

51

História da Computação – Efervescentes

• Décadas de 30 e 40 – Anos Efervescentes:

– ENIAC (Electronic Integrator and Calculator):

52

http://nemo.inf.ufes.br/

54