Computer
Image: Charles Babbage, CC BY-SA 2.0, Wikimedia Commons
In short: A programmable electronic device that processes data according to a program’s instructions — the umbrella term for PCs, servers, laptops and many embedded devices.
In more detail: Core components are the processor (CPU), main memory (RAM), mass storage and input/output devices. The basic architecture (von Neumann architecture: shared memory for program and data) has been the basis of almost all of today’s computers for decades.
In Depth
The von Neumann architecture
The von Neumann architecture, named after the mathematician John von Neumann (who described the concept in 1945), describes the basic design principle of almost all of today’s computers: the program (instructions) and data reside in the same memory and are transported to the CPU over the same bus. This makes computers extremely flexible — the same device can take on completely different tasks, from word processing to video games, simply by swapping the software — but it also creates a structural bottleneck, the so-called “von Neumann bottleneck”: program and data accesses compete for the same memory connection, since both go over the same bus. Modern CPUs mitigate this with multi-level caches, which keep frequently needed data and instructions closer to the processor, as well as separate cache areas for program code and data.
Alternative: the Harvard architecture
As a counter-model, the Harvard architecture exists, where program and data reside in physically separate memories with their own buses — this avoids the von Neumann bottleneck, but is less flexible and today is mainly found in specialised embedded systems (microcontrollers) rather than general-purpose computers, where the flexibility of the von Neumann architecture usually wins out.
The broad spectrum of form factors
The term “computer” covers an enormous spectrum of form factors with an identical underlying principle: from the desktop PC through laptops, servers and smartphones to invisible embedded systems in cars, washing machines, routers or robots. What distinguishes a computer from pure hard-wired electronics is exactly this programmability: a calculator with hard-wired arithmetic operations is, strictly speaking, not a computer in the full sense, whereas a tiny microcontroller with replaceable firmware is, even if it costs only a few cents and has no visible user interface.
Core components working together
A complete computer needs, besides the processor (CPU) and main memory (RAM), also permanent mass storage (SSD/HDD, which, unlike RAM, retains its content even without power) as well as input/output paths to interact with the outside world at all — from keyboard/mouse to network connections. It’s only the interplay of all these components that makes up a usable overall system.
Turing completeness
A central theoretical concept behind this is “Turing completeness” — a system is considered Turing-complete if, given enough time and memory, it can execute any computable function that a theoretical Turing machine could also compute. Almost all modern programming languages, and thereby also the computers they run on, are equally powerful in this sense — a simple microcontroller can theoretically perform the same calculations as a supercomputer, just (potentially extremely) much slower and with less memory available. The practical difference between different computers therefore isn’t WHAT they can compute, but HOW FAST and with what resources.
From vacuum-tube computers to microchips
Historically, computers went through several technological generations: from room-filling vacuum-tube computers (1940s, extremely prone to failure, high power consumption), through transistor-based systems (from the late 1950s, considerably smaller and more reliable), integrated circuits (1960s, several transistors on one chip), to today’s microprocessors with billions of transistors on a few square millimetres. Each generation enabled drastically smaller, cheaper and more power-efficient devices while computing power kept rising — a trend long described as “Moore’s Law” (roughly doubling transistor density every two years), which has, for technical reasons, noticeably slowed down in recent years.
See also: CPU, RAM, Server, Desktop PCs