Analytical engine
Adapted from Wikipedia · Discoverer experience
The analytical engine was a proposed digital mechanical general-purpose computer designed by the English mathematician and computer pioneer Charles Babbage. First described in 1837, it was meant to be the successor to Babbage's difference engine, a simpler mechanical calculator.
The analytical engine included important parts such as an arithmetic logic unit, control flow with conditional branching and loops, and memory. These features made it the first design for a general-purpose computer that could be called Turing-complete, meaning its structure was similar to computers today.
Although Babbage's ideas were ahead of their time, he could never finish building the analytical engine. This was because of problems with his main engineer and not enough money. It wasn't until 1941 that the first real general-purpose computer, the Z3, was built by Konrad Zuse, more than 100 years after Babbage first proposed his amazing machine in 1837.
Design
Charles Babbage began designing the analytical engine after working on a simpler machine called the difference engine, which was never finished. The analytical engine was planned to be a very advanced machine for its time.
The analytical engine would read programs and data using punched cards, similar to how looms were controlled back then. It would have memory to store numbers, a part to do calculations, and ways to output results like printing or making graphs. It could even perform loops and conditional branching, making it very powerful for calculations.
Construction
Late in his life, Charles Babbage tried to build a simpler version of his analytical engine and made a small part of it before he passed away in 1871.
Afterwards, in 1910, Babbage's son Henry built a small part of the machine that could do simple calculations. In 1991, the London Science Museum built a working model of another Babbage design called the Difference Engine No. 2 using materials that would have been available in Babbage's time.
Instruction set
Charles Babbage did not write down a clear set of instructions for his analytical engine like modern computers have. Instead, he showed how programs would run step by step.
Researchers believe the engine could handle loops by moving cards forward or backward, allowing it to repeat steps as needed. For example, a program might jump backward by 11 cards to repeat a part of the calculation. This shows the engine had the potential to perform many different tasks.
Influence
Babbage believed that having an automatic computer would greatly interest scientists, especially in finding the fastest ways to solve problems using the machine.
Later, many inventors and scientists were inspired by Babbage's ideas. They created new designs for machines that could perform calculations automatically. Even though Babbage's analytical engine was never built, his ideas helped shape the future of computing, even if the creators of early computers were not aware of his work.
Comparison to other early computers
If the analytical engine had been built, it would have been digital, programmable, and could solve any computing problem — a concept we now call "Turing-complete". However, it would have worked very slowly. Charles Babbage thought it could multiply two twenty-digit numbers in about three minutes. For comparison, the Harvard Mark I, an early computer, could do the same task in only six seconds, and modern computers can finish it in less than a billionth of a second.
Further information: History of computing hardware § Early digital computer characteristics
| Name | First operational | Numeral system | Computing mechanism | Programming | Turing complete | Memory |
|---|---|---|---|---|---|---|
| Difference engine | Not built until the 1990s (design 1820s) | Decimal | Mechanical | Not programmable; initial numerical constants of polynomial differences set physically | No | Physical state of wheels in axes |
| Analytical engine | Not built (design 1830s) | Decimal | Mechanical | Program-controlled by punched cards | Yes (design; not built, yet) | Physical state of wheels in axes |
| Ludgate's analytical engine | Not built (design 1909) | Decimal | Mechanical | Program-controlled by punched cards | Yes (not built) | Physical state of rods |
| Torres' analytical machine | 1920 | Decimal | Electro-mechanical | Not programmable; input and output settings specified by patch cables | No | Mechanical relays |
| Zuse Z1 (Germany) | 1939 | Binary floating point | Mechanical | Program-controlled by punched 35 mm film stock (no conditional branch) | In theory (Microcode is Turing complete) | Physical state of rods |
| Bombe (Poland, UK, US) | 1939 (Polish), March 1940 (British), May 1943 (US) | Character computations | Electro-mechanical | Not programmable; cipher input settings specified by patch cables | No | Physical state of rotors |
| Zuse Z2 (Germany) | 1940 | Binary fixed point | Electro-mechanical (mechanical memory) | Program-controlled by punched 35 mm film stock (no conditional branch) | No | Physical state of rods |
| Zuse Z3 (Germany) | May 1941 | Binary floating point | Electro-mechanical | Program-controlled by punched 35 mm film stock (but no conditional branch) | In theory (1998) | Mechanical relays |
| Atanasoff–Berry computer (US) | 1942 | Binary | Electronic | Not programmable; linear system coefficients input using punched cards | No | Regenerative capacitor memory |
| Colossus Mark 1 (UK) | December 1943 | Binary | Electronic | Program-controlled by patch cables and switches | No | Thermionic valves (vacuum tubes) and thyratrons |
| Harvard Mark I – IBM ASCC (US) | May 1944 | Decimal | Electro-mechanical | Program-controlled by 24-channel punched paper tape (but no conditional branch) | Debatable | Mechanical relays |
| Colossus Mark 2 (UK) | 1 June 1944 | Binary | Electronic | Program-controlled by patch cables and switches | Conjectured | |
| Zuse Z4 (Germany) | March 1945 (or 1948) | Binary floating point | Electro-mechanical | Program-controlled by punched 35 mm film stock | In 1950 | Mechanical relays |
| ENIAC (US) | December 1945 | Decimal | Electronic | Program-controlled by patch cables and switches | Yes | Vacuum tube triode flip-flops |
| Manchester Baby (UK) | June 1948 | Binary | Electronic | Binary program entered into memory by keyboard (first electronic stored-program digital computer) | Yes | Williams cathode ray tube |
| EDSAC (UK) | May 1949 | Binary | Electronic | Five-bit opcode and variable-length operand (first stored-program computer offering computing services to a wide community). | Yes | Mercury delay lines |
In popular culture
The analytical engine has captured the imagination of many writers and creators. In the novel The Difference Engine by William Gibson and Bruce Sterling, Babbage's engines are available in Victorian times, changing society. Another story, Moriarty by Modem, imagines the analytical engine as a secret tool of the British government, with characters like Sherlock Holmes as early computer programs.
The webcomic The Thrilling Adventures of Lovelace and Babbage shows Ada Lovelace and Charles Babbage using the analytical engine to solve crimes for Queen Victoria. The engine also appears in an episode of Doctor Who titled "Spyfall Part 2". Additionally, the Orion's Arm project imagines giant, sentient computers inspired by Babbage’s designs.
Images
Related articles
This article is a child-friendly adaptation of the Wikipedia article on Analytical engine, available under CC BY-SA 4.0.
Images from Wikimedia Commons. Tap any image to view credits and license.
Safekipedia.webp?width=330)