Lably
Skip to content

Computer hardware

Physical components of a computer

  • 16 min read
  • 6 chapters
M7270 PDP-11 CPU board with LSI-11/2 chipset. From the collection of the RCS/RI.
Retro-Computing Society of Rhode Island · CC BY-SA 3.0

Learn it on Lably

By contrast, software is a set of written instructions that can be stored and run by hardware. Hardware derived its name from the fact that it is hard or rigid with respect to changes, whereas software is soft because it is easy to change.

Hardware is typically directed by the software to execute any command or instruction. A combination of hardware and software forms a usable computing system, although other systems exist with only hardware.

History

Some of the earliest computing devices date back to the seventeenth century. For example, in 1642, French mathematician Blaise Pascal designed a gear-based device called the Pascaline that could add and subtract. Then, in 1676, the stepped reckoner was invented by Gottfried Leibniz, which could also divide and multiply. Due to the limitations of contemporary fabrication and design flaws, Leibniz's reckoner was not very functional, but similar devices (Leibniz wheel) remained in use into the 1970s. In the 19th century, Englishman Charles Babbage invented the difference engine, a mechanical device to calculate polynomials for astronomical purposes. Babbage also designed a general-purpose computer that was never built. Much of the design was incorporated into the earliest computers: punch cards for input and output, memory, an arithmetic unit analogous to central processing units, and even a primitive programming language similar to assembly language.

In 1936, Alan Turing developed the concept of the universal Turing machine to model any type of computer, demonstrating that no machine could solve the decision problem. The universal Turing machine was a type of stored-program computer capable of mimicking the operations of any Turing machine (computer model) based on the software instructions passed to it. The storage of computer programs is key to the operation of modern computers and is the connection between computer hardware and software. Even prior to this, in the mid-19th century mathematician George Boole invented Boolean algebra—a system of logic where each proposition is either true or false. Boolean algebra is now the basis of the circuits that model the transistors and other components of integrated circuits that make up modern computer hardware. In 1945, Turing finished the design for a computer (the Automatic Computing Engine) that was never built.

Around this time, technological advancement in relays and vacuum tubes enabled the construction of the first computers. Building on Babbage's design, relay computers were built by George Stibitz at Bell Laboratories and Harvard University's Howard Aiken, who engineered the MARK I. Also in 1945, mathematician John von Neumann—working on the ENIAC project at the University of Pennsylvania—devised the underlying von Neumann architecture that has served as the template for most modern computers. Von Neumann's design featured a centralized memory that stored both data and programs, a central processing unit (CPU) with priority of access to the memory, and input and output (I/O) units. Von Neumann used a single bus to transfer data, meaning that his solution to the storage problem by locating programs and data adjacent to each other created the Von Neumann bottleneck when the system tries to fetch both at the same time—often throttling the system's performance.

Sign in to keep reading

5 more chapters are free with a Lably account.

More in Computing and information technology