Introduction
I Remember Now…
Memory. We all need it, we all want it, and there are so many different types of it. Memory is a very crucial component of any computer. Main (or system) memory isn't the only memory in your computer, and it's not the only type of it either. Virtually every device inside your computer has some type of memory of its own, the video card, the processor, the hard disk, and even the modem has memory. System memory, however, is what you tend to think of first when you think about memory. There are several different styles and types of memory that have been used since the inception of computers. Even today we have different types of memory competing for market share.
More or less, memory will fall into one of two categories: static and dynamic. Each type has its own purpose. Let's jump right in and take a look at the two basic forms of memory cells, and the information they store.
It's all about the bits
Computers operate in discrete digits that represent numbers, letters, or symbols. These digits are represented numerically as 1s and 0s. This is called the "binary" numbering system, which is based on powers of 2. Only one of two possible values can exist for each number slot in binary, and those are 1 and 0. Electronic circuitry uses different levels of voltage to represent those 1's and 0's. For example, a 5V signal could be translated by the computer as a "1", while a 0V signal would be translated as a "0". These are the only two states a digital circuit can reside in (this is a lie, but I'll get to that in a bit - no pun intended). You can also think of it as "High and Low" if you wish, but for the sake of this discussion, lets stick with the good old "1 and 0".
Bit is short for "binary digit", and it refers to a single binary 1 or 0. Using 5V and 0V as examples, A 5V, or "high" level signal is read by the CPU as being a 1. A 0V, or "low" signal is read as being a 0. Realistically, circuitry cannot make every signal an exact 5V or 0V due to the inherent nature of electronics. Some signals might be a little weak, or a little too strong. Based on that, a small amount of tolerance is built into circuits so that it can accurately decode the signal it's being fed even if the signal itself is not perfect.
Because of the natural fluctuation in voltage levels, there are actually three states that a bit can exist in: High, low, or the ubiquitous "I don't know". Once again we will use 5V logic to describe the scenario. Threshold, any voltage level from 3.5V and up would be considered "High", and any voltage level from 0V-2.5 would be considered "Low". This allows a 2V threshold between high and low values. Anything in between 2.5 to 3.5V is called a "floating" signal, and is translated as an "I don't know" value. This equates to a memory error since the system cannot determine what the value of the data is supposed to be. Since it's somewhere in between a high and low state, the system has no way of knowing which it's supposed to be.