A computer is a general-purpose machine that processes data according to a set of instructions temporarily stored internally. The computer and all the equipment attached to it are "hardware." The instructions that tell the computer what to do are "software."
The software that controls the computer is called an "operating system," and the software that inputs, processes and outputs data for the user is called a "program," "application" or "app." See operating system
, how to select a computer
, stored program concept
and computer generations
RAM Vs. Storage
The interplay between temporary memory (the RAM) and permanent storage is how computers work. The instructions (software) are first written into RAM, and the computer executes them to input, process and output the data.
RAM is a temporary workspace, while storage is permanent and comprises any hard drive, solid state drive (SSD), optical disc or USB drive on the same computer or another computer in the network. After processing the data internally, the computer can send a copy of the results from RAM back to storage, to a printer or to another computer in the network. The more RAM, the more programs and data the computer can work with quickly, and entry level computers have at least two gigabytes of RAM. The more storage, the more data can be saved. Entry level computers typically have at least 512GB (gigabytes) of disk storage or 128GB of SSD storage.
Storage can only be read and written in large blocks called "sectors" that hold hundreds or thousands of bytes. However, it is the RAM that allows one or more bytes to be manipulated independently. This "single byte addressability" is the entire reason data are brought into RAM for processing. See RAM
and storage vs. memory
Processing (The 3 C's)
The computer performs all processing by "calculating," "comparing" and "copying" the data in RAM.
Calculate - Compute Amounts and Keep Track
A computer can add, subtract, multiply and divide numbers to compute money amounts as well as geometric measurements of all variety. The computer's calculating capability enables it to keep track of its own internal iterations for myriad tasks.
Compare - Match One Set With Another
The computer can look at two sets of data and determine whether they are equal or which set is higher or lower in value. Comparing is performed for searching, analyzing and evaluating data for countless purposes.
Copy - From One Place to Another
The computer can rearrange data for organizing and reporting by copying data from one area in memory to another. In fact, in France and Spain, a computer is actually called an "organizer."
The 3 C's - Find Things
This example counts all California records in the database by comparing every record in RAM. The bytes that hold the state are compared with "CA," and if equal, a "1" is added to the bytes that are designated a counter. Each record is written into the same RAM bytes (memory buffer) and compared until the last record has been examined.
The 3 C's - Display and Print
The 3 C's - Sort
Data are stored as contiguous fields in a database but are displayed and printed by copying the characters into the desired order. The dashes are not stored with the data. The dashes are copied into the required locations for printing by the program (see picture
The 3 C's - Edit
Resequencing data is accomplished by comparing each item with the others and copying it into the appropriate order. There is also significant calculating going on to keep track of what goes where. Data records are generally indexed, and instead of sorting the actual records, the much smaller indexes are sorted (see index
Part of word processing's magic is copying. In this example, in order to insert the "O", the remaining characters are copied one byte to the right to make room. This illustration is very conceptual, and although the actual process is much more complex, it is nevertheless accomplished by calculating beginning and ending locations and copying text.
It All Begins With Software
The UNIVAC I (Frankfurt Germany, 1956)
Of course, there can be no data processing without first writing the program into RAM. This example is very conceptual, because real instructions are in binary format, are contiguous, and there are thousands of them in a single program. This illustration highlights the "byte addressability" of RAM, which allows a single instruction to be extracted for execution by the arithmetic logic unit (see ALU
). See byte addressable
How About the Tip of a Pencil?
Imagine being here watching this UNIVAC CPU being pushed up the ramp and someone says "you know some day all of that will fit on the head of a pin." See UNIVAC I
In fact, these PICmicro microcontrollers from Microchip (www.microchip.com), are a whole lot faster than the UNIVAC I. See microcontroller