historia-do-computador.asc 6.21 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
== História dos computadores

.Objetivos do capítulo
____________________
Ao final deste capítulo você deverá ser capaz de:

* Citar os precursores dos computadores
* Discorrer sobre a importância do surgimento dos cartões perfurados 
* Descrever como eram os computadores em cada uma das 5 gerações
* Explicar porque a palavra 'bug' passou a ser empregada para designar defeitos
* Relatar a importância do circuito integrado no processo de fabricação dos 
computadores
____________________


== Precursores dos computadores

São considerados precursores dos computadores todos os instrumentos ou 
máquinas que contribuíram com ideias para a criação dos mesmos. Dentre
eles, o surgimento de uma máquina programável foi um grande marco
na história dos computadores.

Vamos iniciar nossos estudos com um instrumento que talvez você conheça e 
provavelmente já utilizou na escola, o ábaco.

== Ábaco

O ábaco foi um dos primeiros instrumentos desenvolvidos para auxiliar os humanos na 
realização de cálculos. Muitos atribuem sua criação à China, mas existem
evidências deles na Babilônia no ano 300 A.C.

.Ilustração de um ábaco
image::images/abaco.png[scaledwidth="50%"]

Percebam que o ábaco pode ser visto como uma representação dos dedos humanos,
onde as bolas de cima representariam as mãos, e as de baixo os dedos.

== Ossos de Napier

[[ossos_de_napier]]
.Ilustração dos Ossos de Napier.
image::images/napier-ossos-tabuleiro.png[scaledwidth="50%"]

.Ilustração da operação de multiplicação utilizando os ossos de Napier: 46785399 x 7.
image::images/napier-multiplicacao-46785399x7.png[scaledwidth="75%"]


== Régua de Cálculo


A criação da Régua de Cálculo, (<<regua_calculo>>) em 1632 na Inglaterra, foi 
diretamente influenciada pelos Ossos de Napier. Esta régua chegou a ser 
utilizada pelos engenheiros da NASA, na década de 1960, nos programas que 
levaram o homem à Lua.

[[regua_calculo]]
.Régua de Cálculo
image::images/regua-de-calculo.jpg[scaledwidth="70%"]



== As rodas dentadas de Pascal (Pascaline)

[[pascaline]]
.Pascaline de 8 dígitos aberta, mostrando as engrenagens (acima), e a apresentação da máquina fechada (abaixo).
image::images/pascaline.jpg[scaledwidth="50%"]
// http://calmeca.free.fr/calculmecanique_php/illustrations_texte/pascaline.jpg

O mecanismo de funcionamento é o mesmo utilizado
até hoje nos odômetros de carros, onde as engrenagens são organizadas de tal forma a simular
o "vai um" para a próxima casa decimal nas operações de adição.


== Leibniz - A primeira calculadora com quatro operações


// http://www.computersciencelab.com/ComputerHistory/HistoryPt2.htm

Em 1672, o Alemão 'Gottfried Wilhelm Leibniz' foi o primeiro a inventar uma 
calculadora que realizava as 4 operações básicas (adição, subtração, 
multiplicação e divisão). A adição utilizava um mecanismo baseado na Pascaline,
mas as operações de multiplicação realizavam a sequência de somas automáticas.

== Máquinas Programáveis

Um marco na história foi a invenção de máquinas programáveis, que 
funcionavam de forma diferente de acordo com uma programação que lhes era fornecida.

== Tear de Jacquard

.Máquina de tear usando programação através de cartões perfurados.
image::images/JacquardLoom.jpg[scaledwidth="35%"]

A invenção de Jacquard revolucionou a industria de tecido, e em 1806, ela foi
declarada propriedade pública e ele foi recompensado com uma pensão e 
'royalties' por cada máquina que fosse construída.

.Esquerda: Jacquard perfurando os cartões. Direita: cartões perfurados.
image::images/JacquardCard.jpg[scaledwidth="35%"]

== A Máquina Diferencial

.Pequena seção da máquina diferencial de 'Charles Babbage'.
image::images/babbage-maquina-diferencial.jpg[scaledwidth="30%"]


== A Máquina Analítica

Após a inacabada máquina diferencial, em 1837, Charles Babbage anunciou
um projeto para construção da 'Máquina Analítica'. Influenciado pelo tear de 
Jacquard, Babbage propôs uma máquina de propósito genérico, utilizando uma
programação através de cartões perfurados.

.Máquina Analítica e os cartões perfurados.
image::images/Babbage-Analytical-Engine-with-cards.png[scaledwidth="60%"]

Ele percebeu que os cartões perfurados poderiam ser utilizados para guardar
números, sendo utilizados como um mecanismo de armazenamento de dados e 
futuramente poderiam ser referenciados. Ele idealizou o que hoje chamamos de
*unidade de armazenamento* e *unidade de processamento de dados*. 

=== Diferencial

A principal funcionalidade que a diferenciava das máquinas de calcular era
a utilização de instruções condicionais. A máquina poderia executar fluxos 
diferentes baseada em condições que eram avaliadas conforme instruções 
perfuradas nos cartões.
 
Nenhum dos dois projetos de Babbage foram concluídos, a máquina analítica se
fosse construída teria o tamanho de uma locomotiva.

== A Primeira programadora

A condessa de Lovelace, Ada Byron, se interessou pela máquina analítica de 
Babbage e se comunicava com ele através de cartas e encontros.
Ela passou a escrever programas que a máquina poderia ser capaz de executar,
caso fosse construída. Ela foi a primeira a reconhecer a necessidade de 'loops'
e sub-rotinas. Por esta contribuição, Ada ficou reconhecida na história como
a primeira programadora.

.Ada Lovelace, primeira programadora.
image::images/ada_lovelace.jpg[scaledwidth="30%"]


== Linha do tempo


.Linha do tempo dos precursores dos computadores
["graphviz", "linha-do-tempo.png"]
---------------------------------------------------------------------
digraph automata_0 {
  rankdir=LR;
  node [shape = box];

  abaco [label="Ábaco\n(300 AC)"];
  napier [label="Ossos de Napier\n(1614)"];
  regua [label="Régua de Cálculo\n(1632)"];
  pascal [label="(Pascaline)\n(1642)"];

  leibniz [label="Calculadora 4 op\n(1672)"];
  jacquard [label="Tear de Jacquard \n(1804)"];

  mdiferencial [label="Máquina Diferencial\n(1822)"];
  manalitica [label="Máquina Analítica\n(1837)"];

  abaco -> napier
  napier -> regua
  regua -> pascal
  pascal -> leibniz
  leibniz -> jacquard
  jacquard -> mdiferencial
  mdiferencial -> manalitica
  
  {rank=same; abaco jacquard}

}
---------------------------------------------------------------------