Computer hardware actually has a long and storied history. Early computers included devices like the Antikythera mechanism , a clockwork device for calculating the positions of the planets built in first or second-century BC in Greece and mechanical calculators incorporating the Leibniz wheel . These early devices can be classified as fixed-program computers, as they can only carry out specific kinds of activities as determined by their structure.
Charles Babbage invented two computing devices, the Difference Engine and the Analytical Engine , both mechanical computers that carried out calculations, that were notable for their size and complexity. The Analytical Engine also marked the first programmable computer design - one that could be easily reconfigured to carry out different kinds of operations. In describing the function of this computer, Ada Lovelace proposed using the computer to compose original music, marking the first time computers were considered for broader use than computations.
Babbage’s Difference Engine No. 2 was designed in 1840, but never built until the modern era. This video discusses that effort spearheaded by the Science Museum of London.
The Z3 and ENIAC were some of the earliest electronic computer devices. They used transistors (switches that could be on or off) to represent data. With only two states, these computers were designed to operate with binary math - 0’s and 1’s. This was a major departure from earlier approaches which operated in the more familiar base 10 (Babbage’s engines represented digits by wheels with 10 faces). Both were programmable: the Z3 read its program from a punched tape, while the ENIAC could be programmed through the use of a plugboard similar to those used by phone operators. The Z3 was considered non-vital by the German military, and was later destroyed in bombing. In contrast, the ENIAC was used to carry out calculations to support American World War II efforts (including carrying out calculations for the atom bomb), and during this time was exclusively programmed by women mathematicians, including Kay McNulty , Betty Jennings , Betty Snyder , Marylyn Wescoff , Fran Bilas , and Ruth Licherman . Their story is discussed in the documentary Top Secret Rosies: The Female “Computers” of WWWII .
The next major step forward was stored program computers - computers that had a limited number of instructions they could carry out that were stored in the computer’s memory along with the data on which those programs would operate. These were originally proposed by Alan Turing with his Turing Machine . The physical design on which modern computers are all based was popularized by John von Neumann and is known as the Von Neumann Architecture .
Thus, modern computers share certain characteristics:
- They represent all information in a binary form
- They can carry out a handful of operations on this binary information
- These instructions can be triggered by programs, sequences of these operations
- Both the programs and the data they operate on are stored in the memory of the computer
But hardware is only part of the picture. The programs that run on them are just as important. We’ll turn to these next.