Computers work by using physical processes to carry out logical operations. For example, a transistor configured as a NOT gate blocks current when it receives high voltage and allows current when it receives low voltage (the physical process) in order to perform logical negation (the logical operation). High voltage represents 1, low voltage represents 0 and the negation flips 1 to 0 and 0 to 1.
Digital computers use physical signals to represent discrete values, typically binary values (0 or 1). By converting a continuous signal (e.g., a voltage) into a discrete one, digital computers have a high tolerance for noise. Discrete values also enable the symbolic encoding of instructions for the computer, which in turn makes instructions easier to write and modify.
In contrast, analog computers use physical processes that model (i.e., are analogous to) the problem being solved. For example, a weight scale is an analog computer. The scale takes the force of the object placed on it as input. This force compresses a spring. The linear movement of the spring is converted into the rotational movement of dial, which displays the weight of the object as output. An analog computer typically operates on continuous values rather than discrete ones. It typically has a lower tolerance for noise and lacks the capacity to symbolically encode instructions. On the other hand, an analog computer can solve certain problems almost instantaneously.