Babbage's Engine
The British scientist Charles Babbage (1791-1871) designed mechanical calculating machines many years before the computer age. Babbage lived during the Victorian era, when mathematicians compiled huge books of tables for use in multiplication, division, and finding logarithms, square roots, etc. The tables were expensive and tedious to prepare and inevitably contained mistakes. Babbage wanted to build a machine that would automatically calculate and print the values for such tables.
In 1821, he began work on his first computing machine, Difference Engine No. 1, which was designed to add, subtract, and solve polynomial equations using the method of finite differences. This method is best illustrated with an example. Consider the equation x3. This is a third order polynomial. The values of x3 for x=1 to 5 are as follows:
Taking the first set of differences between x3 values (i.e., 8-1, 27-8, 64-27, and 125-64) provides 7, 19, 37, and 61. Taking the second set of differences (i.e., 19-7, 37-19, and 61-37) provides 12, 18, and 24. Taking the third set of differences (i.e., 18-12 and 24-18) provides 6 and 6. This set of differences is constant and defines the order of the polynomial equation. In other words, the nth set of differences that are constant defines the degree of the equation.
Table values of x3 for very large values of x can be calculated by repeating the method. For example, the 3rd difference for x=3 is also 6, which means that the 2nd difference for x=4 is 6+24=30. Therefore, the 1st difference for x=5 is 30+61=91. Thus, the table value of x3 for x=6 is 125+91=216. This is the concept upon which Babbage's Difference Engines were based.
The design for Difference Engine No. 1 called for approximately 25,000 precision-crafted parts of steel, bronze, and cast iron. Although Babbage employed expert craftsmen, the metal working technology of the time was not up to this mammoth task. After 11 years of work and the expenditure of a great deal of money from financial backers (including the British government), Babbage's team had only completed a small part of the engine, containing approximately 2,000 parts.
The completed portion, which did operate properly, contained three columns of figure wheels or cog wheels stacked one on top of another around an axis. Five of the figure wheels in the first column (the table column) could be set by hand to any digit from 0 to 9. The bottom-most of these figure wheels tracked digits in the ones place. The wheel above tracked digits in the tens place and so forth, up to the ten-thousands place. A number was set by hand on each column and then a handle was pulled. The machine added the number on the middle column (the 1st differences column) to the number on the Table column. Then, the number on the third column (the 2nd differences column) was added to the number on the 1st difference column to provide the 1st difference for the next computation. The final engine was to handle six orders of difference and compute answers containing up to 20 digits.
However, the huge expense and lack of significant progress caused the project to be abandoned. Although Babbage later drafted drawings for a simpler, more efficient Difference Engine No. 2, this machine was never completed during his life time due to lack of funding. Its design called for more than 4,000 parts in a cast-iron frame that stood seven feet tall and 11 feet long. An additional 4,000 parts were required for printing.
Even as work progressed on the Difference Engines, Babbage was designing a much more sophisticated machine called an Analytical Engine that could perform multiplication and division and algebraic functions. The Analytical Engine has many similarities to later computers in terms of its architecture and programmability, for example, it used punched cards for inputting data. This technique was borrowed from the textile industry, which used punched cards to "program" the Jacquard loom to weave intricate designs into cloth. The engine also contained a "mill" area, where arithmetical processing occurred (much like a central processing unit) and a "store" area where calculations in progress were held (much like memory chips).
Babbage wrote several computer programs for the Analytical Engine, but most were never published. In 1843, his friend Augusta Ada King (the daughter of Lord Byron) published a set of programming notes for the Analytical Engine that included a method for computing the Bernoulli Numbers. The engine was also capable of executing loops and conditional branching programming steps such as "if x, then y." Although some parts of the Analytical Engine were built during Babbage's lifetime, the project lacked funding and was far from complete at the time of his death in 1871.
In 1896, Babbage's son sent a small model of Difference Engine No. 1 to Harvard University. Professor Howard Aiken found the brass wheels in the attic of the Science Center in 1937 as he worked on his own proposal for a computing machine. Aiken realized the importance of Babbage's mechanism and collected a set of books from the inventor's grandson. Aiken created the Mark I, one of the first electromechanical computers, and credited Babbage for educating him about computers.
In 1990, the Science Museum in London used Babbage's original drawings to build a working version of Difference Engine No. 2 (without the printing mechanism) for the 1991 celebration of the 200-year anniversary of Babbage's birth. The Engine took a year to put together, cost approximately $500,000, weighed three tons, and was 11 feet long and 7 feet tall. Most importantly, it worked. It was able to calculate successive values of seventh-order polynomial equations (e.g., 17=1, 27=128, etc.) containing up to 31 digits.
This is the complete article, containing 937 words
(approx. 3 pages at 300 words per page).