
English: 
Charles Babbage was an
English polymath, mathematician,
philosopher, inventor
and mechanical engineer,
who was born in 1791.
In that time, printed
mathematical tables, for
example for navigation,
were still calculated
by human computers;
in other words, by hand.
Repeating mistakes were known to occur
in transcription as well as calculation
and it also just was just a
lot of exhausting manual work.

German: 
Charles Babbage war ein
englischer Universalgelehrter, Mathematiker,
Philosoph, Erfinder und
Maschinenbauingenieur,
der 1791 geboren wurde.
In dieser Zeit wurden
gedruckte mathematische Tabellen, zum
Beispiel für die Navigation
noch berechnet
von menschlichen Computern;
mit anderen Worten von Hand.
Es war bekannt, dass sowohl beim Abschreiben als
auch bei der Berechnung wiederholt Fehler auftraten
und es war auch einfach nur eine
Menge anstrengender Handarbeit.

English: 
Babbage once said: I wish to God, these
calculations had been executed by steam!
To solve the problem,
he first designed the
"Difference Engine",
that was able to compute
values for polynomial functions.
But he never finished the complete machine,
prabably also because in the meanwhile, his
attention had moved on to developing a far
more sophisticated thing,
namely, the Analytical Engine.
It was in 1833 and he
was 42, when he started
this work and interestingly
in the same year,
he met "Augusta Ada Byron King",
"Countess of Lovelace",
or a little bit simpler
just "Ada Lovelace".
She was 17 years old, already a mathematician
and very interested in Babbage's ideas.

German: 
Babbage hat einmal gesagt: Ich wünschte bei Gott,
diese Berechnungen wären mit Dampf ausgeführt worden!
Um das Problem zu lösen,
entwarf er zunächst die
"Difference Engine",
die Werte für
Polynomfunktionen berechnen konnte.
Aber er hat nie die komplette Maschine fertiggestellt,
wahrscheinlich auch, weil in der Zwischenzeit seine
Aufmerksamkeit darauf ausrichtete, eine
weitaus raffiniertere Sache zu entwickeln.
nämlich die Analytical Engine.
Es war 1833 und er
war 42, als er mit
diese Arbeit anfing und
interessanterweise im selben Jahr,
traf er "Augusta Ada Byron King",
"Gräfin von Lovelace",
oder ein bisschen
einfacher nur "Ada Lovelace".
Sie war 17 Jahre alt, bereits Mathematikerin
und sehr interessiert an Babbages Ideen.

English: 
Charles Babbage, on
the other side, praised
her analytical skills
and later called her
lovingly "Lady Fairy".
In the following years,
with some interruptions,
Babbage worked on the
design of the Analytical Engine
and developed in total
28 different plans for it.
Ada saw the potential
of his invention and wrote
several programs for
the theroretical machine.
That's why many people see
her as the very first programmer!
Babbage created this
trial model of the Analytical Engine
and documented his
ideas in about
1000 Notations and 7000 Manuskripts.
His son Henry also finished
another part of the machine in 1910.

German: 
Charles Babbage auf
der anderen Seite, lobte
ihre analytischen Fähigkeiten
und nannte sie später
liebevoll "Lady Fairy".
In den folgenden Jahren,
mit einigen Unterbrechungen,
arbeitete Babbage am
Design der Analytical Engine
und entwickelte insgesamt
28 verschiedene Pläne dafür.
Ada erkannte das Potenzial
seiner Erfindung und schrieb
mehrere Programme für
die theoretische Maschine.
Deshalb sehen sie viele Menschen auch
als die allererste Programmiererin an!
Babbage hat dieses Testmodell
der Analytical Engine erstellt
und dokumentierte
seine Ideen in etwa
1000 Notationen und 7000 Manuskripten.
Sein Sohn Henry stelle später in 1910 noch
einen weiteren Teil der Maschine fertig.

English: 
But in the end, the complete
machine was never built.
Despite all this, the concepts were really
brilliant and Charles Babbage was probably
100 years ahead of his time.
So let's have a closer look on how
this machine *should* have worked!
The comic writer “Sydney Padua”
imagines the
Analytical Engine as follows:
Isn’t it beautiful?
In front of the machine Mr. Babbage
smiles and seems quite confident.
On the right hand side,
Lady Ada Lovelace, a
little bit dreamy, reads a long
row of punch cards.
The machine is really
huge and therefore a strong
steam engine is required to drive it.
The first part of the
program is located on the
“Operation Cards” which
are processed by a reader

German: 
Aber am Ende wurde die
komplette Maschine nie gebaut.
Trotz alledem waren die Konzepte wirklich
brillant und Charles Babbage wahrscheinlich
100 Jahre seiner Zeit voraus.
Schauen wir uns also genauer an, wie diese
Maschine *hätte* funktionieren sollen!
Die Comicautorin „Sydney Padua“
stellt sich die
Analytical Engine folgendermaßen vor:
Ist sie nicht schön?
Vor der Maschine lächelt Mr. Babbage und
scheint ziemlich zuversichtlich zu sein.
Auf der rechten Seite,
liest Lady Ada Lovelace
etwas verträumt eine lange
Reihe Lochkarten.
Die Maschine ist wirklich riesig
und deswegen ist eine starke
ist eine Dampfmaschine
erforderlich, um sie zu betreiben.
Der erste Teil des
Programms befindet sich auf den
"Operationskarten", die von
einem Lesegerät verarbeitet werden

German: 
und die definieren, welche
arithmetischen Anweisungen
von der Maschine
nacheinander durchgeführt werden sollen.
Die Anweisungen auf den
Karten sind in Löchern kodiert.
die dann vom Leser entschlüsselt und anschließend
an die "Fässer" weitergegeben werden,
die eine Folge von kleineren
Operationen definieren, die dann von
der "Mühle" ausgeführt werden.
Die Fässer implementieren zusammen mit
der Mühle die 4 Grundrechenarten,
nämlich Addition, Subtraktion, Multiplikation
und Division.
Die Programmdaten befinden sich im
Lager, wo insgesamt
1.000 Dezimalzahlen, mit
jeweils 50 Stellen
gespeichert werden können.
Jede Nummer wird durch einen
Stapel von 50 Zahnrädern implementiert
und hat eine eindeutige Spaltennummer,
die zur Adressierung verwendet wird.
Die Nummern werden durch Übertragungsbefehle
in die Mühle geladen, welche auf den
Variablenkarten kodiert sind.

English: 
device and define which
arithmetic instructions
should be done by the
machine one after another.
The instructions on the
cards are encoded in holes,
which are decoded then by the
reader and afterwards passed to
the Barrels that define
a sequence of smaller
operations which then
are executed by the the Mill.
The Barrels together with the mill
implement the 4 basic arithmetic
operations, namely, addition,
subtraction, multiplication and division.
The program data is located in the
Store, where in total
1.000 decimal numbers, with
50 digits each, can be saved.
Each number is implemented
by a stack of 50 gears
and has a unique column number
which is used for addressing.
The numbers are loaded into the Mill by
transfer commands that are encoded on the
Variable Cards.

German: 
Dies ist der zweite Teil
des Programms und enthält
die Anweisungen zum Laden /
Speichern zum Übertragen von Zahlen
mit Hilfe von Zahnstangen
zwischen dem Lager und der Mühle.
Die irgendwie merkwürdige
Trennung von Variablen- und
Operationskarten hatten
wahrscheinlich technische Gründe.
Die Eingabedaten werden
in das Lager mit
Zahlenkarten geladen und die Ergebnisse
können auf Papier gebracht werden
unter Verwendung eines
Druckers.
So, das wars.
Klingt irgendwie vertraut, nicht wahr?
Und in der Tat hat Herr
Babbage bereits in den
1840er Jahre einen fast
modernen Computer entworfen.
Wir würden die Komponenten in unseren
Tagen nur ein bisschen anders benennen. Die
Mühle heißt heute die
CPU oder Rechenwerk. Die
Fässer speichern das

English: 
This is the second part of
the program and contains
the Load / Store instructions
to transfer numbers
using racks between the Store and the Mill.
The somehow odd
separation of Variable and
Operation Cards probably
had technical reasons.
The input data is loaded
into the Store with the
Number Cards and the
results can be put on paper
using a
Printer device.
So that’s it.
Sounds somehow familiar, doesn‘t it?
And indeed, Mr. Babbage
has designed already in the
1840s an almost modern computer.
We just would name the components
a bit different in our days. The
Mill is called today the
CPU or Processing Unit. The
Barrels store the

English: 
Microprogram that contains smaller steps
for implementing the arithmetic operations.
Then of course the
Store is today called the
read-write memory. The
Operation Cards together with the
Variable Cards define the read-only
program, which is
located on the punch cards.
One can argue that also the
Number Cards are
part 3 of the program,
namely the constants, but
they can also be seen as
input data, similar to
data entered by today’s
keyboards, where
a user types in the numbers
for the program.
Then of course the
printer is today called still the
printer, but since it is the main
output device for the
Analytical Engine, it had to also
fulfill the functions of
today's monitors, for example.
And last but not least the
Steam Engine: Well, of course this is a bit
oldschool
and modern machines use

German: 
Mikroprogramm, das kleinere Schritte zum
Implementieren der arithmetischen Operationen enthält.
Dann natürlich das
Lager heißt heute der
Lese- / Schreibspeicher. Die
Operationskarten zusammen mit dem
Variablenkarten definieren das read-only
Programm, das sich auf
den Lochkarten befindet.
Man kann argumentieren, dass auch die
Zahlenkarten
Teil 3 des Programms sind,
nämlich die Konstanten, aber
sie können auch angesehen werden
als Eingabedaten, ähnlich den
Daten, die heute eingegeben werden
über Tastaturen, bei denen ein
Benutzer die Zahlen eingibt
für das Programm.
Dann natürlich der
Drucker wird heute immer noch Drucker
genannt, aber da dieser das Haupt-
Ausgabegerät für die
Analytical Engine war, musste er auch
die Funktionen heutiger
Monitore erfüllen, zum Beispiel.
Und zu guter Letzt die
Dampfmaschine: Nun, das ist
natürlich ein bisschen altmodisch
und moderne Maschinen verwenden

German: 
Strom statt Dampf.
Im Prinzip ist also alles da,
was moderne Computer haben.
Da das Programm vom
Speicher getrennt ist, ist die
Analytical Machine kein
von Neumann-Computer,
sondern folgt der
Harvard-Architektur.
Übrigens, einer der ersten
Computer mit diesem Design,
die Mark I, wurde in den 1940er
Jahren gebaut, fast genau 100
Jahre nach der Erfindung
der Analytical Engine durch
Charles Babbage.
Lassen Sie uns jetzt die Maschine
öffnen und etwas genauer
in die Details schauen.
Wir sehen wieder das
Lager mit 1000 Zahnradstapeln,
einer für jede Zahl.
Mit den
Zahlenkarten kann man Daten
in das Lager einspeisen. Die

English: 
Electricity instead of Steam.
So in principle everything is
there what modern computers have.
Since the program is
separated from the memory, the
Analytical Machine is not
a von Neumann computer,
but instead it follows
the Harvard architecture.
By the way, one the first
computers with that design,
the Mark I, was built in the
1940s, almost exactly 100
years after the Analytical
Engine was invented by
Charles Babbage.
So now let’s open the
engine and look a little bit more
into the details.
We see again the
Store with 1000 stacks of
gears, one for each number.
With the
Number Cards, we can
feed data into the Store. The

English: 
Mill consists of a
very complicated set of
mechanical parts for
doing the microinstructions,
orchestrated by the
Barrels.
As input for the arithmetic
operations, a so called
Ingress Axis is used, which can
store a 50 digit decimal number.
At least logically, there are
even two Ingress Axes, so
for simplicity we added a second one:
The two Ingress Axes
are basically what we today
would call input registers
and they are used as
operands for the arithmetic instructions.
The result of a
calculation is stored in the
Egress Axis, which also can
hold numbers with 50 digits.
There are
Racks that connect the
Ingress- and Egress Axes
with the Store.

German: 
Mühle besteht aus einem
sehr komplizierten Satz von
mechanischen Teilen für
die Mikroanweisungen,
orchestriert von den
Fässern.
Als Eingabe für die arithmetischen
Operationen wird eine sogenannte
Eingangsachse verwendet, in der eine
50-stellige Dezimalzahl gespeichert werden kann.
Zumindest logisch gibt es
also sogar zwei Eingangsachsen
der Einfachheit halber haben
wir eine zweite hinzugefügt:
Die beiden Eingangsachsen sind
im Grunde das, was wir heute
Eingangsregister nennen würden
und sie werden verwendet als
Operanden für die
arithmetischen Anweisungen.
Das Ergebnis einer Berechnung
wird abgespeichert in der
Ausgangsachse, die auch Zahlen
mit 50 Ziffern speichern kann.
Es gibt
Zahnstangen, welche die
Eingangs- und Ausgangsachse mit
mit dem Lager verbinden.

German: 
Heute würden wir sagen, dass
dies der Speicherbus ist. Die
Variablenkarten weisen die
Zahnstangen an, Spalteninhalte zu kopieren,
aus dem Lager in die Eingangsachen
und die Ergebnisdaten von der
Ausgangsachse zurück in das Lager. Die
Operationskarten definieren, welche arithmetischen
Funktionen ausgeführt werden sollen.
Und außerdem können sie auch eine
Glocke anzweisen zu läuten oder sie können
die ganze Maschine anhalten.
Nun, da wir alle
wichtigen Teile kennen, von der
Analytical Engine, ist es Zeit,
ein Programm darauf auszuführen.
Glücklicherweise war Ada so freundlich,
ein gutes Beispiel zu entwickeln und
hat die erforderlichen
Lochkarten für uns erstellt.
Aus irgendeinem seltsamen
Grund will Mr. Babbage
sie daran hindern, den Code auszuführen.
Die Frage ist warum, weil das
Programm wirklich einfach ist.
Ada will einfach nur berechnen
als Beispiel: 24 plus 18.

English: 
Today we would say that
this is the memory bus. The
Variable Cards instruct
the Racks to copy column
contents from the Store
into the Ingress Axes
and copy back the result
data from the Egress Axis. The
Operation Cards define which
arithmetic functions should be done.
And besides that, they also can instruct a
bell to ring or they can
halt the whole machine.
Now that we know all
the important pieces of the
Analytical Engine, it is
time to run a program on it.
Fortunately, Ada was so kind
to develop a good example and
created the required punch cards for us.
For some strange reason
Mr. Babbage wants to
prevent her from running the code.
The question is why, since
the program is really simple.
Ada just wants to calculate as an
Example: 24 plus 18.

German: 
Bevor wir anfangen, sollten
wir noch erwähnen, dass die drei
Ströme für Zahlen-, Varliablen- und Operationskarten
irgendwie synchronisiert werden müssen.
Es scheint ein bisschen unklar,
ob Babbage jemals explizit
definiert hat, wie das funktionieren soll.
Nehmen wir wieder der Einfachheit
halber an, dass die Auswahl
des richtigen Kartenstapels
durch Magie erfolgt.
Starten wir also das Programm.
In der ersten Spalte sehen
Sie die Schrittnummer in der
in der zweiten sind Assembler-ähnliche
Anweisungen und in
der letzten Spalte gibt es eine
kurze Beschreibung dessen, was
gerade passiert.
Zuerst werden die ersten beiden
Zahlenkarten gelesen, um Zahl
24 in Spalte 5 und dann Zahl
18 bis Spalte 6 zu laden.
Dann wird die erste
Operationskarte gelesen, welche eine
Addition ist.
Dies konfiguriert die

English: 
Before we start, we should
mention that the three
streams for Number-, Value- and Operation-Cards
somehow have to be synchronized.
It seems a bit unclear, if
Babbage ever explicitly
defined, how that should work.
So for simplicity again, let‘s
assume that the selection
of the correct card stack is done by magic.
So let’s start the program.
In the first column you
see the step number, in the
second there are
assembler-like instructions and in
the last column there is
a short description of what
is going on.
First two Number Cards
are read, to load number
24 into column 5 and then number
18 to column 6.
Then the first
Operation Card is read, which is an
addition.
This configures the

English: 
Barrels for adding two
numbers which are read in
the following steps.
Next, we read two
Variable Cards which first load the number
24 from Store column 5
into the Ingress Axis I and
then the number
18 from column 6 into Ingress Axis II.
To achieve that, the
data is transferred by the
Racks.
Now the Ingress Axes are read by the
Mill, which is then doing the
addition under the control of the
Barrels.
The gears are performing their magical
work, when they are doing
the arithmetic operation.
After the calculation is finished,
the result is written to the
Egress Exis, which we would
call today an output register.
Then the next
Variable Card is read,
which instructs the Racks to
save the contents of the

German: 
Fässer zum Addieren
von zwei Zahlen, welche in
den folgenden Schritten gelesen werden.
Als nächstes lesen wir zwei
Variablenkarten, die zuerst die Zahl
24 aus Spalte 5 in die
Eingangsachse I liest und
dann die Zahl
18 von Spalte 6 in die Eingangsachse II.
Um dies zu erreichen, werden
die Daten übertragen von den
Zahnstangen.
Jetzt werden die Eingangsachsen ausgelesen
von der Mühle, die dann die
Addition unter der Kontrolle der
Fässer durchführt .
Die Zahnräder führen ihre magische
Arbeit aus, wenn sie die
arithmetischen Operation durchführen.
Nach Abschluss der Berechnung
wird das Ergebnis in die
Ausgangsachse geschrieben, welche wir heute
als Ausgangsregister bezeichnen würden.
Dann wird die nächste
Variablenkarte
gelesen, welche die Zahnstangen anweist,
den Inhalt der

English: 
Egress Axis back to column 7.
Finally, we
print the last result,
ring the bell and
halt the program.
So the answer is
42, which is obviously
right and by coincidence
exactly the age of Mr. Babbage,
when he first met his
Lady Fairy.
So that was a brief
summary of what can be
found in the Internet
for the Analytical Engine.
But there are still some
more details worth mentioning:
The Machine has a
“run-up lever” that indicates
exceptions, like
overflows or sign changes.
The indication can then
be used for conditional
branches that are able
to wind the punch cards
forwards and backwards.
And this feature together
with the Store makes
the Analytical
Engine probably even
Turing complete.

German: 
Ausgangsachse zurück
auf Spalte 7 zu speichern.
Schließlich
drucken wir das letzte Ergebnis aus,
klingeln und
stoppen das Programm.
Die Antwort lautet also
42, was offensichtlich
richtig ist und zufällig
genau das Alter von Mr. Babbage,
war, als zum ersten Mal seine
Lady Fairy traf.
Das war also eine kurze
Zusammenfassung dessen, was man
im Internet für die
Analytical Engine finden kann.
Es gibt jedoch noch einige
weitere erwähnenswerte Details:
Die Maschine verfügt über
einen Überlaufhebel, der
Ausnahmen wie Überläufe
oder Vorzeichenwechsel anzeigt.
Die Indikation kann dann für
bedingte Sprünge verwendet
werden, die die Lochkarten
vorwärts und rückwärts spulen können.
Und diese Funktion
zusammen mit dem Lager macht
die Analytical Engine
wahrscheinlich sogar
Turing-Vollständig.

English: 
The machine somehow also implements
pipelining, meaning parallel computation.
Nevertheless, the speed of the machine seems
moderate: People are guessing 3 seconds for
an addition and 3
minutes for a multiplication.
Last but not least, there is an emulator
available on the internet, where we can
try Ada’s program.
Indeed, having an emulator is really cool.
But the prove that this machine could also
have worked in reality is still missing.
Therefore in 2010 a project called “Plan 28”
was initiated by John Graham-Cumming,
who in a TED talk
described Babbage's ideas.
The machine should be built and finished in
the 2030s, two hundred years after it was
originally designed.

German: 
Die Maschine implementiert irgendwie auch
Pipelining, was parallele Berechnung bedeutet.
Trotzdem scheint die Geschwindigkeit der Maschine
moderat zu sein: Man schätzt 3 Sekunden für
eine Addition und 3 Minuten
für eine Multiplikation.
Last but not least, gibt es im Internet
einen Emulator, wo wir
Adas Programm ausprobieren können.
Es ist zwar wirklich cool,
einen Emulator zu haben,
aber der Beweis, dass diese Maschine auch in der
Realität hätte funktionieren können, fehlt jedoch noch.
Aus diesem Grund wurde 2010 von John Graham-Cumming
ein Projekt namens „Plan 28“ initiiert,
der in einem TED-Vortrag
Babbages Ideen beschrieb.
Die Maschine sollte gebaut und in den 2030er Jahren
fertiggestellt werden, zweihundert Jahre nachdem
sie ursprünglich entworfen wurde.

German: 
Plan 28, nach dem
das Projekt benannt ist,
ist das vollständigste
Design von Babbage.
Doron Swade, ehemaliger Kurator des Science
Museum London, und involviert in der 17 jährigen
Rekonstruktion der Difference Engine Nr.
2, schätzte im Jahr 2012, dass das Projekt
15-20 Jahre und 20-40
Millionen Dollar erfordern würde.
Die Maschine wäre 10 x
größer als die Difference Engine
würde mehrere Tonnen wiegen und es würde
wahrscheinlich 50.000–80.000
Teile benötigen, um sie zu bauen.
Es sieht also nach einem
wirklich herausfordernden Plan aus!
Viel Glück für unsere britischen Kollegen!
Es wäre so toll, die
Maschine laufen zu sehen!

English: 
Plan 28, from which the
project takes its name,
is the most complete
of Babbage's designs.
Doron Swade, former curator of the Science
Museum London, and involved in the 17 years
reconstruction of the Difference Engine No. 2,
in 2012 estimated that the project would
require 15-20 years and 20-40 million dollars.
The machine would be
10 x bigger than Difference Engine
would weight several tons and it would
probably need
50.000–80.000 parts to build it.
So it looks like a really challenging plan!
Good luck, for our British colleagues!
Would be so great, to see
the machine up and running!
