Main memory also known as primary storage provides storage location for data and instructions accessed by the control unit. Computer memory can be classified into read only memory (ROM) and random access memory (RAM).
Read only memory (ROM)
Read only memory is used to store programmed instructions and data permanently or semi-permanently. Data and instructions stored in ROM are those required to remain unchanged for long periods of time e.g.booting instructions,special purpose computers and computerized fuel pumps instructions etc.
Depending on permanence of the instructions or data written on it,there are four types of read only memory namely;
Mask read only memory: Once the content is written on it by the manufacturer,it cannot be changed.
Programmable read only memory(PROM): This allows the user to alter it only once after the content is written on it.
Erasable programmable read only memory (EPROM): This has a transparent quartz window through which its contents,can be erased by exposing it to ultra violet (UV)light,and then reprogrammed for another use.
Electrically erasable programmable read only memory(EEPROM):This type of ROM can be erased and reprogrammed using electricity.An example of EEPROM is the memory that stores the basic input/output system (BIOS).
Characteristics of read only memory(ROM)are;
1.One can only read its content but you cannot write on it unless it is a special type of ROM.
2. It is non-volatile i.e. its content is not lost when the computer is switched off
3. Stores permanent or semi-permanent instructions from the manufacturer called firmware. It can store semi-permanent instructions because some variations of ROM chips can be programmed according to the users
specification.
Random access memory(RAM)
This is the most common type of main memory. It is called random access memory(RAM) because ;its content can be read directly regardless of the sequence in which it was stored. As opposed to ROM, the content in RAM is held temporarily and its content is lost once the computer is turned off.
Therefore,before switching off the computer,it is important that one stores (saves)his/her work in a device that offers relatively permanent storage facility.
Characteristics of random access memory(RAM)are:
1.Data can be read(retrieved)and written(stored) in it.
2 .RAM is a temporary(volatile)storage because its content disappears when the computer is switched off.
3.Its content is user defined i.e. the user dictates what is to be contained in the RAM.
Types of RAM
There are two types of-RAM namely,static RAM (SRAM) and dynamic (DRAM).Static RAM is very fast compared to dynamic RAM and holds its content as long as there is power. Dynamic RAM on the other hand can only hold its content for a short while even when power is all .To maintain the content of dynamic RAM,the memory chip is designed in away that its content is refreshed (automatically rewritten) severally per second. Static RAM is more expensive. It is mostly used to make special types of memories.
Special purpose memories
Apart from ROM and RAM there are several types of special purpose memories found inside the CPU or in the input and output devices. These memories are vital because they increase the overall performance of data and instructions moving in and out of the CPU. These memories include buffers, registers and cache memory.
Buffers
This is a temporary holding place that may be part of the CPU or built in an input or output device. Because the CPU is very fast compared to the input or output devices, buffers provide temporary storage so that the CPU is set free to carry out other activities instead of waiting for all data to be entered or information to be output. For example since a printer cannot work at the speed of a CPU,the printer buffers temporarily holds the output to be printed hence freeing the CPU to perform other functions. Buffers can hold more than one piece of data at a time.
Registers
As opposed to buffers,registers hold one piece of data at a time and are inside the CPU.Examples of registers are:
An accumulator:This temporarily holds the results of the last processing step of the ALU.
Instruction register:This temporarily holds an instruction just before it is interpreted into a form that CPU can understand it.
An address register:This temporarily holds next piece of data waiting to be processed.
Storage register:This temporarily holds a piece of data that is on its way to and from the CPU and the main memory.
Cache Memory
Most modem processors incorporate small high-speed type of SRAM called cache memory.The purpose of cache memory is to allow the processor to access data and instructions even faster than it would have taken to fetch it from the relatively slow DRAM.