Binary digital data, in the form of high and low levels (logic ones and zeros), can be stored in memory ICs. These devices can take various physical forms.
A random access memory (RAM) chip stores binary data in arrays. The data can be addressed (selected) from anywhere in the matrix. Data is easily changed and stored back in RAM, in whole or in part. A RAM chip is sometimes called a read/write memory.
An example of the use of RAM is a word-processing computer file that you are actively working on. This paragraph, these topics, and in fact the whole text of this book was written in semiconductor RAM in small sections before being incrementally stored on the computer hard drive, and ultimately on external media.
There are two major categories of RAM: dynamic RAM (DRAM) and static RAM (SRAM). A DRAM chip contains transistors and capacitors, and data is stored as charges on the capacitors. The charge must be replenished frequently, or it will be lost through discharge. Replenishing is done automatically several hundred times per second. An SRAM chip uses a flip-flop to store the data. This gets rid of the need for constant replenishing of charge, but the tradeoff is that SRAM ICs require more elements than DRAM chips to store a given amount of data.
With any RAM chip, the data in it will vanish when power is removed, unless some provision is made for memory backup. The most common means of memory backup is the use of a small cell or battery with a long shelf life. Modern IC memories need so little current to store their data that a backup battery lasts as long in the circuit as it would on the shelf. Memory that disappears when power is removed is called volatile memory. If memory is retained when power is removed, it is nonvolatile.
By contrast to RAM chips, the data in a read-only memory (ROM) chip can be easily accessed, in whole or in part, but not easily written over. A standard ROM chip is programmed at the factory. This permanent programming is known as firmware. But there are also ROM chips that you can program and reprogram yourself. The data contents of ROM chips are generally nonvolatile. That means a power failure is no cause for concern.
An erasable programmable ROM (EPROM) chip is an IC whose memory is of the read-only type, but that can be reprogrammed by a certain procedure. It is more difficult to rewrite data in an EPROM than in a RAM; the usual process for erasure involves exposure to ultraviolet (UV). An EPROM IC can be recognized by the presence of a transparent window with a removable cover, through which the UV is focused to erase the data. The IC must be taken from the circuit in which it is used, exposed to UV for several minutes, and then reprogrammed.
The data in some EPROM chips can be erased by electrical means. Such an IC is called an electrically erasable programmable read-only memory (EEPROM) chip. These do not have to be removed from the circuit for reprogramming.