At the time of the first computers, the hardware itself was called hardware. Shortly after, the computer industry created the term “software”, or software in French, to designate the programs executed by the hardware. The physical composition of the digital computer, whether portable small personal computers or not, or large multiprocessor computers or macro computers, includes processors, peripheral devices and memory units.
To describe the operation of a computer, a distinction must be made between the processors, which provide the control and processing functions; peripheral units that provide input, output and communication functions; and memory units that allow storage of programs and data. The information (programs and data) read into the memory by means of the input unit, whether expressed in numbers or in text, is encoded in blocks of binary digits or “bits”. Each bit has the value 0 or 1, and the current coding techniques use an 8-bit block (a “byte”) to represent the letters from A to Z, digits from 0 to 9, punctuation and symbols on duty.
The 0 or 1 value of each bit is physically represented by a low voltage electric current in the processor and in the RAM, or by the magnetization state of very small areas on surfaces covered with a magnetic material. This last process is used to store data in secondary memory, either on hard disks, on floppy disks or on magnetic ribbons.
Numerical calculations or word processing to be performed from the data in the RAM are determined by a machine program. Application programs for computers are usually written in advanced programming languages, such as FORTRAN, Pascal or C, and are then converted to a corresponding machine program by an OS-controlled compilation program.
The machine program must be placed in the RAM during its execution and consists of a sequence of simple steps called “instructions”. Here is an example of typical instructions: “Add two numbers and store the sum in a specific place in the RAM; jump to another section of the program if the value just calculated is negative; send the contents of a specific place of memory to an output device to print it “. An instruction can usually be encoded into memory “words” of 4 to 8 bytes in length.
The electrical networks that seek each instruction from the RAM to execute it in the processor are composed of thousands of transistors ( SEMICONDUCTORS AND TRANSISTORS ) connected in integrated circuits. The time required to retrieve and execute an instruction is usually a fraction of a millionth of a second.
Processors are designed to perform successive instructions in a sort of cascading execution called pipeline processing. Each instruction consists of approximately 4 to 6 sequential basic steps. Each step is executed in one clock cycle. When an instruction set has been determined, a new instruction may be executed at each clock cycle. In this mode of operation, we obtain start / end instruction rates of the order of 100 million per second and even more in the current processors.