Hi
Guys!, You all are aware of Charles Babbage (1791-1871), computer pioneer,
designed the first automatic computing engines. He invented computers but
failed to build them. The first complete Babbage Engine was completed in London
in 2002, 153 years after it was designed. Difference Engine No. 2, built
faithfully to the original drawings, consists of 8,000 parts, weighs five tons,
and measures 11 feet long.
The Engines
Charles
Babbage (1791-1871), computer pioneer, designed two classes of engine,
Difference Engines, and Analytical Engines. Difference engines are so called
because of the mathematical principle on which they are based, namely, the
method of finite differences. The beauty of the method is that it uses only
arithmetical addition and removes the need for multiplication and division
which are more difficult to implement mechanically.
Difference
engines are strictly calculators. They crunch numbers the only way they know
how - by repeated addition according to the method of finite differences. They
cannot be used for general arithmetical calculation. The Analytical Engine is
much more than a calculator and marks the progression from the mechanized
arithmetic of calculation to fully-fledged general-purpose computation. There
were at least three designs at different stages of the evolution of his ideas.
So it is strictly correct to refer to the Analytical Engines in the plural.
Binary,
Decimal and Error Detection
Babbage's calculating engines
are decimal digital machines. They are decimal in that they use the familiar
ten numbers '0' to '9' and they are digital in the sense that only whole
numbers are recognized as valid. Number values are represented by gear wheels
and each digit of a number has its own wheel. If a wheel comes to rest in a
position intermediate between whole number values, the value is regarded as
indeterminate and the engine is designed to jam to indicate that the integrity
of the calculation has been compromised. Jamming is a form of error-detection.
Babbage
considered using number systems other than decimal including binary as well as
number bases 3, 4, 5, 12, 16 and 100. He settled for decimal out of engineering
efficiency - to reduce the number of moving parts - as well as for their
everyday familiarity.
Difference Engine No. 1 |
Difference Engine No. 1
Babbage
began in 1821 with Difference Engine No. 1, designed to calculate and tabulate
polynomial functions. The design describes a machine to calculate a series of
values and print results automatically in a table. Integral to the concept of
the design is a printing apparatus mechanically coupled to the calculating
section and integral to it. Difference Engine No. 1 is the first complete
design for an automatic calculating engine.
From
time to time Babbage changed the capacity of the Engine. The 1830 design shows
a machine calculating with sixteen digits and six orders of difference. The
Engine called for some 25,000 parts shared equally between the calculating
section and the printer. Had it been built it would have weighed an estimated
fifteen tons and stood about eight feet high. Work was halted on the
construction of the Engine in 1832 following a dispute with the engineer,
Joseph Clement. Government funding was finally axed in 1842.
Analytical Engine |
The Analytical Engine
With
the construction project stalled, and freed from the nuts and bolts of detailed
construction, Babbage conceived, in 1834, a more ambitious machine, later
called Analytical Engine, a general-purpose programmable computing engine.
The
Analytical Engine has many essential features found in the modern digital
computer. It was programmable using punched cards, an idea borrowed from the
Jacquard loom used for weaving complex patterns in textiles. The Engine had a
'Store' where numbers and intermediate results could be held, and a separate
'Mill' where the arithmetic processing was performed. It had an internal
repertoire of the four arithmetical functions and could perform direct
multiplication and division. It was also capable of functions for which we have
modern names: conditional branching, looping (iteration), microprogramming,
parallel processing, iteration, latching, polling, and pulse-shaping, amongst
others, though Babbage nowhere used these terms. It had a variety of outputs
including hardcopy printout, punched cards, graph plotting and the automatic
production of stereotypes - trays of soft material into which results were
impressed that could be used as molds for making printing plates.
The
logical structure of the Analytical Engine was essentially the same as that
which has dominated computer design in the electronic era - the separation of
the memory (the 'Store') from the central processor (the 'Mill'), serial
operation using a 'fetch-execute cycle', and facilities for inputting and
outputting data and instructions. Calling Babbage 'the first computer pioneer'
is not a casual tribute.
Punched Cards for Analytical Engine |
A New Difference Engine
With
the groundbreaking work on the Analytical Engine largely complete by 1840,
Babbage began to consider a new difference engine. Between 1847 and 1849 he
completed the design of Difference Engine No. 2, an improved version of the
original. This Engine calculates with numbers thirty-one digits long and can
tabulate any polynomial up to the seventh order. The design was elegantly
simple and required only approximately a third of the parts called for in
Difference Engine No. 1, while providing similar computing power.
Difference Engine No. 2 and
the Analytical Engine share the same design for the printer - an output
device with remarkable features. It not only produces hardcopy inked printout
on paper as a checking copy, but also automatically stereotypes results, that
is, impresses the results on soft material, Plaster of Paris for example, which
could be used as a mold from which a printing plate could be made. The
apparatus typesets results automatically and allows programmable formatting
i.e. allows the operator to preset the layout of results on the page.
User-alterable features include variable line height, variable numbers of
columns, variable column margins, automatic line wrapping or column wrapping,
and leaving blank lines every several lines for ease of reading.
Physical Legacy
Aside
from a few partially complete mechanical assemblies and test models of small
working sections, none of Babbage's designs was physically realized in its entirety
in his lifetime. The major assembly he did complete was one-seventh of
Difference Engine No. 1, a demonstration piece consisting of about 2,000 parts
assembled in 1832. This works impeccably to this day and is the first
successful automatic calculating device to embody mathematical rule in
mechanism. A small experimental piece of the Analytical Engine was under
construction at the time of Babbage's death in 1871. Many of the small
experimental assemblies survived, as does a comprehensive archive of his
drawings and notebooks.
The
designs for Babbage's vast mechanical computing engines rank as one of the
startling intellectual achievements of the 19thcentury. It is only in recent
decades that his work has been studied in detail and that the extent of what he
accomplished becomes increasingly evident.