Buscar

Aula_03_Evolucao_Computacao

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

Continue navegando