The main components in a typical computer system are the processor, memory, input/output devices, and the communication channels that connect them.
The processor is the workhorse of the system; it is the component that executes a program by performing arithmetic and logical operations on data. It is the only component that creates new information by combining or modifying current information. In a typical system there will be only one processor, known at the central processing unit, or CPU. Modern high performance systems, for example vector processors and parallel processors, often have more than one processor. Systems with only one processor are serial processors, or, especially among computational scientists, scalar processors.
Memory is a passive component that simply stores information
until it is requested by another part of the system. During
normal operations it feeds instructions and data to the
processor, and at other times it is the source or destination of
data transferred by I/O devices. Information in a memory is
accessed by its address. In programming language terms, one
can view memory as a one-dimensional array
M. A processor's
request to the memory might be ``send the instruction at location
M'' or a disk controller's request might be ``store the
following block of data in locations