Você está na página 1de 48

HISTRIA DA COMPUTAO

Valdemar W. Setzer
Depto. de Cincia da Computao da USP
www.ime.usp.br/~vwsetzer

TPICOS
1. O ser humano uma mquina?
2. O que um computador? O Computador a
Papel: um recurso didtico
3. Qual o computador mais simples? A Mquina
de Turing
4. Histria da evoluo dos computadores
5. Bibliografia

1. O ser humano uma mquina?


Favor responder

SIM ou NO
no papelzinho

1. O ser humano uma mquina? (cont.)


Desculpem, mas a pergunta estava
E R R A D A:
Toda mquina um artefato projetado e
construdo por seres humanos

Eventualmente
mquinas

com

ajuda

de

outras

QUEM projetou e construiu cada ser humano?

Certamente no um outro ser humano


Muito menos com a ajuda de outras mquinas

1. O ser humano uma mquina? (cont.)


Pergunta CORRETA:
O ser humano
um sistema puramente fsico?

1. O ser humano uma mquina? (cont.)


Resultados anteriores:
O SER HUMANO UMA MQUINA?
1
2
3
4
5
6
7
8
9
10
11
12
13

18/09/02
09/09/02
25/09/02
12/05/03
30/05/03
25/08/03
28/08/03
15/09/03
17/09/03
25/09/03
12/11/03
21/10/04
20/10/05
Totais

UFMT, Cuiab (BCC)


Facs. Dom Domnico, Guaruj (grad)
PUC, SPaulo (ps G Jornalismo)
UNOESTE, Pres. Pruente (grad SI e CC)
IC Unicamp (ps Gr CC)
UNESP, Rio Claro (BCC)
UNISO, Sorocaba (Bach Sist Info)
Centro de Cultura Judaica, SPaulo (#)
CEFET, Alagoas, Macei (Tecnol. PD)
Centro Cultural Ita, SPaulo (#)
Faculdades SENAC, SPaulo (BCC)
UNIP, cp. Indianpolis, SPaulo (BCC, EC...)
UNESP, Rio Claro (BCC)

SIM NO TOTAL %SIM


25
26
6
17
12
13
73
10
76
25
13
56
13
365

21
54
7
20
24
11
105
10
60
48
9
32
18
419

46
80
13
37
36
24
178
20
136
73
22
88
31
784

54
33
46
46
33
54
41
50
56
34
59
64
42
47

TPICOS
1. O ser humano uma mquina?
2. O que um computador? O
Computador a Papel: um recurso didtico
3. Qual o computador mais simples? A
Mquina de Turing
4. Histria da evoluo dos
computadores
5. Bibliografia

2. O que um computador? O
Computador a Papel: um recurso
didtico
Funcionamento
Conceitos fundamentais

Unidades
Processador Central
Controla todo o funcionamento e o fluxo de dados
Contm um Apontador de Instruo
Contm uma Unidade Aritmtica (mostrador:
acumulador)

Unidade de Armazenamento (mmria)


Unidades de Entrada e de Sada

2. O que um computador? O
Computador a Papel: um recurso
didtico

Regras do Processador Central


1. Leia a instruo apontada pelo apontador
de instruo e memorize-a
2. Mova o apontador de instruo para a
prxima
posio
da
unidade
de
armazenamento (memria)
3. Execute a instruo memorizada em (1)
4. Volte para o passo (1)

2. O que um computador? O
Computador a Papel: um recurso
didtico (cont.)

Conceitos fundamentais
Programa armazenado
Fluxo de execuo
O Apontador de Instruo
O que aconteceria se o A. I. fosse incrementado
depois da execuo da instruo?

Codificao
Codificar a instruo numericamente no formato

+IIEE
onde II o cdigo numrico da instruo
e EE o endereo referenciado pela instruo
Resulta: computador HIPO

2. O que um computador? O
Computador a Papel: um recurso
didtico (cont.)
Posio
01
02
03
04
05
06
07
08
09
10
11
12
30
40
45

Instruo do computador a papel


Carregue o ACC com [30]
Armazene o [ACC] na posio 40
Receba um nmero e coloque-o em 45
Exiba numericamente [45]
Carregue o ACC com [45]
Se [ACC] < 0 desvie para 11
Carregue o ACC com [40]
Adicione [45] ao ACC
Armazene o [ACC] na posio 40
Desvie incondicionalmente para 03
Exiba numericamente [40]
Pare

HIPO
+1130
+1240
+3145
+4145
+1145
+5611
+1140
+2145
+1240
+5103
+4140
+7000
+0000

2. O que um computador? O
Computador a Papel: um recurso
didtico (cont.)

Conceitos fundamentais (cont.)


Posio de memria, palavra
Endereo
Instruo/computador de um s endereo
Da a necessidade do Acumulador
Poderia ser de 2 ou de 3 endereos
Ex: Some [40] ao [45] e armazene em 40

Simulador HIPO (carregar de meu site)

2. O que um computador? O
Computador a Papel: um recurso
didtico (cont.)

Conceitos fundamentais (cont.)


Dado
Como o Processador Central distingue entre

uma instruo e um dado?


Tudo dado!

Entrada e sada de dados


Dados alfabticos
No HIPO, representados por dois algarismos
A = 01, B = 02, ...
Ex: DUDA = +0421 +0401

Novas instrues de entrada/sada de dados

2. O que um computador? O
Computador a Papel: um recurso
didtico (cont.)

Conceitos fundamentais (cont.)


Dados grandes e pequenos

Notao de Ponto Flutuante (excesso 50)


Exs:
1 = +5001

200 = +5120
(20x101)
-35 = -5035
1500 = +5315
(15x103)
0,1 = +4901
(1x10-1)
0,00083 = +4583
(83x10-5)
Extenso do HIPO para maior preciso
Ex: palavras de 8 dgitos: 6 de preciso
Ex: -46123456
??

2. O que um computador? O
Computador a Papel: um recurso
didtico (cont.)
ESTRUTURA DE UM COMPUTADOR

Unidades
de entrada

CPU

Unidade
central de
armazenamento

Unidades
de sada

Unidades
externas de
armazenamento

TPICOS
1. O ser humano uma mquina?
2. O que um computador? O
Computador a Papel: um recurso didtico
3. Qual o computador mais simples? A
Mquina de Turing
4. Histria da evoluo dos
computadores
5. Bibliografia

3. Qual o computador mais simples?


A Mquina de Turing

O Computador a Papel e o HIPO tinham


muitas instrues
Um computador real tem centenas
Qual a quantidade mnima de tipos
diferentes de instrues necessria e
suficiente para executar qualquer
processamento de dados em um
computador isolado?
Um nico tipo de instruo!

3. Qual o computador mais simples? A Mquina de Turing


(cont.)
...

...

L/G

0,0;D
A

CONTROLE
FINITO

#,#;D

#,0;D

,#;E

movimento
smbolo gravado
smbolo lido

Resulta:
...

1,1;D

L/G

CONTROLE
FINITO

...

Est.At. Entrada Sada Movim. Prx.Est.


A
#
#
D
B
B
0
0
D
B
B
1
1
D
B
B
#
0
D
C
C
#
E
F
Estado inicial: A. Estado final: F.

3. Qual o computador mais simples? A Mquina de Turing


(cont.)

Exerccios
1. Desenhar um diagrama de estados comentado
de uma mquina de Turing para fazer somas
unrias
#1111+11=# #1111+11=111111#
2. Idem, para verificar se o nmero de as o
mesmo que o nmero de bs
#abaababb# #abaababb#SIM#
#bbababba# #bbababba#NO#

3. Qual o computador mais simples? A Mquina de Turing


(cont.)

Um s tipo de instruo:

(Est. atual, Smb. de entrada, Smb. de sada, Movimento, Prx. estado)


Ex: (B,#,0,D,C)

uma mquina abstrata!


Foi inventada por Turing em 1935 para
resolver o Entscheidungsproblem de David
Hilbert
Ser que todo problema matemtico bem
formulado tem soluo, isto , decidvel?
O problema da parada (Halting problem)
Turing provou que no possvel construir uma

MT que receba na fita a descrio de uma outra e


seus dados de entrada, e deduza que essa outra
vai parar durante a execuo

3. Qual o computador mais simples? A Mquina de Turing


(cont.)

Mquina universal

Pode-se construir uma MT que recebe a


descrio de uma outra e sua entrada e
executa exatamente o que essa outra faria

Quais as diferenas entre uma M.T. e um


computador real?
Essencialmente, o armazenamento infinito
Praticamente, instrues mais potentes
nos computadores

TPICOS
1. O ser humano uma mquina?
2. O que um computador? O
Computador a Papel: um recurso didtico
3. Qual o computador mais simples? A
Mquina de Turing
4. Histria da evoluo dos
computadores
5. Bibliografia

4. Histria da evoluo dos


computadores
Ver
http://pt.wikipedia.org/wiki/Computador
www.computerhistory.org/

www.mansano.com/beaba/hist_comp.htm

4. Histria da evoluo dos


computadores
Incio:

talvez pedrinhas para ajudar a


contar
baco
Origem babilnica
Palavra semita

Hebraico: abac (poeira), ibeq (remover a


poeira), provavelmente por se usar areia ou
poeira sobre uma bandeja, em montinhos,
para contar

4. Histria da evoluo dos


computadores (cont.)

Primeiras mquinas de calcular


Leonardo da Vinci (1452-1519) fez um
projeto de uma calculadora, suficiente
para que hoje se construsse uma

4. Histria da evoluo dos


computadores (cont.)
Primeiras

mquinas de calcular (cont.)

1642: Blaise Pascal (1623-1662) constri 1 calculadora


que foi usada
Projetada para seu pai, que era coletor de impostos
Primeira calculadora comercial

Construiu 50 em 10 anos
Baseada em engrenagens
Somente adio e subtrao
Introduziu o vai um mecnico
Entrada por movimento de engrenagens com

marcas dos dgitos

4. Histria da evoluo dos


computadores
(cont.)
Primeiras mquinas de calcular (cont.)
1668: Samuel Morland inventa uma mquina de calcular
para o sistema monetrio ingls, que no era decimal
1671:
Gottfried
Wilhelm
von
Leibniz
(1646-1716)
constri
uma
mquina
de
calcular que ele denominou reconhecedor de passos
Fazia tambm multiplicaes por meio de

adies repetidas e deslocamentos


Foi defensor do sistema binrio
Permitia uso de chaves em lugar de engrenagens
Mas nunca a usou

4. Histria da evoluo dos


computadores (cont.)
Primeiras

mquinas de calcular (cont.)

1673: o matemtico e astrnomo alemo


Wilhelm Schickard constri uma sob
encomenda de Kepler
Chamou de relgio de clculo
Nunca foi usada

4. Histria da evoluo dos


computadores (cont.)
Fim do sc. XVIII: primeiro projeto de computar
tabelas das principais funes (seno, log, etc.). Linha
de produo:

6 matemticos: mtodos de clculo


8-10 computadores para pontos piv, a 5-10 vezes o
intervalo da tabela
100 computadores de baixo nvel para os outros pontos
17 volumes computados, mas nunca publicados
Em 1820 o gov. britnico fez proposta para publicao
mas nada ocorreu

4. Histria da evoluo dos


computadores
(cont.)
1804-5: Joseph-Marie Jacquard inventa o tear de Jacquard
Controlado por cartes

Cartes controlavam o movimento das navetas,

produzindo diferentes padres


Seqncia de cartes era
lida automaticamente
Mtodo de dar instrues
mquina usado at o sec. XX

1812: havia 11.000 deles


na Frana
Com o tear de Jacquard,
a programao foi inventada
antes dos computadores!

Gravura de 1874

4. Histria da evoluo dos


computadores (cont.)
1820: O francs Charles Xavier Thomas
de Colmar construiu o Aritmmetro

Primeira calculadora produzida em massa


Baseada na tecnologia de Leibniz
Adio, subtrao, multiplicao e, com
aes do usurio, diviso
Ocupava todo o tampo de uma mesa
Foi muito popular, e vendida por 90 anos

4. Histria da evoluo dos


computadores
(cont.)

1822: Charles Babbage


(1792-1871) inventa a
Difference Engine

6 dgitos
Clculo de polinmios por meio

de somas e subtraes (Clculo


de Diferenas)
N
0
1
2
3
4
5

N +N+41
41
43
47
53
61
71
2

D1
2
4
6
8
10

D2
2
2
2
2

4. Histria da evoluo dos


computadores (cont.)
1822:

Charles Babbage (cont.)

Razo para se usar polinmios

Teorema de Weiestrass (1815-1897):

Qualquer intervalo de qualquer funo pode


ser aproximado por um polinmio
assim que computadores calculam seno,
coseno, log, etc., pois tm preciso fixa
(Aproximaes de Tchebitchev)

Projeto previa polinmios at grau 6


Construo nunca foi completada

4. Histria da evoluo dos


computadores
(cont.)

1833: Babbage projeta a sua Analytical Engine

Calculava qualquer problema aritmtico


No projeto, 60 somas por minuto
Tudo mecnico, energia por vapor
4 partes
Store - hoje unidade central de armazenamento
colunas de engrenagens com 10 dgitos
1000 nmeros de 50 dgitos

Mill - hoje, o processador central (CPU)


Unidade de transferncia entre mill e store -

hoje, bus
Mecanismos de entrada/sada

Sua colaboradora Ada Lovelace considerada a primeira


programadora

4. Histria da evoluo dos


computadores (cont.)
1925:

incio da era moderna dos computadores

Computador analgico no MIT


1939-44:

Howard Aiken, Mark I (Automatic


Sequence Controlled Calculator) com IBM
Aiken: o sonho de Babbage tornado realidade
Mquina eletromecnica, com 3.000 rels
Instrues introduzidas por meio de fita de papel
perfurada
4,5 s para multiplicar 2 nmeros de 23 dgitos

4. Histria da evoluo dos


computadores
(cont.)

1943: ENIAC (Electronic Integrator and


Calculator), de Presper Eckert e John
Mauchly

Na Moore School of Eng., Univ. da Pensilvnia


Primeiro computador realmente eletrnico
Com vlvulas (velocidade de chaveamento de 1 seg)
Pronto em 1946
18.000 vvulas, 70.000 resistores, 10.000 capacitores,
6.000 chaves - o sistema eletrnico mais complexo do
mundo
30x3x3 m, consumo de 140 kw

4. Histria da evoluo dos


computadores (cont.)
ENIAC

(cont.)

Dispositivo especial para armazenar nmeros


Programa era feito conectando-se painis furados, com
fios (pegas), como em centrais telefnicas locais
antigas
Motivao: clculo balstico

1945:

EDVAC (Electronic Delay Storage Automatic


Calculator)

Algum tempo antes de o ENIAC entrar em funcionamento,


Moore School

4. Histria da evoluo dos


computadores (cont.)
EDVAC

(cont.)

Primeiro computador com programa armazenado


Idia de John von Neumann (1903-1957) - relatrio de

1945

1o. a perceber que os computadores executam funes lgicas, e


que os aspectos eltricos eram secundrios

Por isso o tipo dos computadores modernos

denominado de Mquina von Neumann

Armazenamento central por linha acstica de atraso


Entrou em operao em maio de 1949
operou at 1962

4. Histria da evoluo dos


computadores (cont.)
1949: EDSAC (Electronic Delay Storage
Automatic Calculator)

Desenvolvido por Wilkes, Univ. de


Cambridge, Inglaterra
1a. mquina do mundo a usar programas
armazenados
Apresentado em 6/1949
Armazenamento central por linha acstica
de atraso
1450 m/s
Gerador/
Amplific.

4.000 vlvulas

4. Histria da evoluo dos


computadores (cont.)
1953:

IBM 701

Armazenamento por tubos eletrostticos, e por


tambor magntico e fitas magnticas
19 foram construdos

1957:

UNIVAC I (Universal Automatic


Computer), da Sperry-Rand, por Eckert
e Mauchly

Fornecido para o Depto. do Censo americano


Funcionou at 1963

4. Histria da evoluo dos


computadores (cont.)

6/1948: na Inglaterra, j havia


funcionado um computador

Usava tubos de raios catdicos (de TV ou radar) para


armazenamento
32 linhas de 32 pontos (bits)

Mais um tubo para controle e outro para acumulador


1949:

na Inglaterra, testou-se
armazenamento com tambor magntico
1948: inventado o transistor
por Bardeen, Brattain e Shockley (prmios Nobel de 1956)

4. Histria da evoluo dos


computadores (cont.)

Circuito bsico: biestvel (flip-flop) pode representar 0 ou 1


0

Muda para 1

Muda para 0

Quando a tenso ligada, apenas um dos dois transistores conduz, e seu


Led fica aceso. Aterrando sua base, ele deixa de conduzir e o outro passa
a conduzir, acendendo o outro LED.

4. Histria da evoluo dos


computadores (cont.)

Armazenamento com ncleos


magnticos

Permitiu grandes unidades de


armazenamento

1962 (?): IBM 7090, 1 grande computador,

transistorizado, 32.000 palavras de 36 bits

Primeira linguagem de alto nvel:


FORTRAN, IBM 1957

4. Histria da evoluo dos


computadores (cont.)
O

primeiro computador no Brasil

1961 (?)
PUC-RJ
Burroughs (650?), com tambor magntico
1962

(?): Primeiros computadores


transistorizados no Brasil, com
ncleos magnticos

IBM 1401 (4.000 ou 8.000 bytes), comercial


IBM 1620, na USP (20.000 dgitos decimais)
1 disco magntico (1964): 2 Mb, pilha de discos grandes, removvel

TPICOS
1. O ser humano uma mquina?
2. O que um computador? O
Computador a Papel: um recurso didtico
3. Qual o computador mais simples? A
Mquina de Turing
4. Histria da evoluo dos
computadores
5. Bibliografia

5. Bibliografia
Setzer, V.W. e Chaves, E. O Uso de Computadores em Escolas Fundamentos e Crticas. S. Paulo: Ed. Scipione, 1988.
Setzer, V.W. Meios Eletrnicos e Educao: uma viso alternativa.
S.Paulo: Ed. Escrituras, 3a. ed. 2005.
Setzer, V.W. e Hirata Jr., R. O Dia da Computao (uma introduo rpida
ao computador e computao). Caderno da Revista do Professor de
Matemtica Vol. 4, No. 1, 1993.
Setzer, V.W. Vrios artigos e o simulador do HIPO em
www.ime.usp.br/~vwsetzer
Hodges, A. Alan Turing - the Enigma. New York: Walker & Co., 2000.
Bernstein, J. The Analytical Engine: Computers Past, Present and Future.
New York: Wm Morrow 1981.

5. Bibliografia (cont.)
Goldstine, H.H. The Computer from Pascal to von
Neumann. Princeton: Princeton Univ. Press, 1972.
Harmon, M. Stretching Mans Minds: a History of Data
Processing. New York: Mason/Charte, 1975.
Halacy Jr., D.S. Computers - the Machines we Think
with. New York: Harper & Row, 1969.

TPICOS
1. O ser humano uma mquina?
2. O que um computador? O
Computador a Papel: um recurso didtico
3. Qual o computador mais simples? A
Mquina de Turing
4. Histria da evoluo dos
computadores
5. Bibliografia

Você também pode gostar