A+ Certification / Beginners

Address bus

Figure below shows how system memory is organized like a spreadsheet, in rows and columns. These rows and columns make up blocks that can be written to and read from. If you want to store information in one of the blocks, you have to reference the location by address. For example, you may store data in cell B2.

How system memory is organized

To store information into system memory, your processor has to give an address that points to a particular storage location, only the address doesn't look like "B2." It looks something like "10," or maybe "11," which are two completely different memory locations and, as a result, the data would get stored in two different blocks.

Your processor accesses memory locations through the address bus. If, for example, the address bus is two-bit, the processor has two address lines from the processor to system memory. The address lines carry signals that specify locations in memory, each with an on/off state. A "1" represents an on state, and "0" represents an off state. The combination of the on/off states of both address lines at any given time is how a reference to an area in memory is made. The left side of Figure below illustrates a processor making a reference, or call, to Address 10, while the right side shows a reference to Address 11. These two address calls reference completely different locations in memory.

If you add another address line to the address bus, the processor can access even more possible addresses because the processor has more variations with three bits than with two. A two-bit address bus can make a reference to four possible memory addresses (2 x 2), while a three-bit address bus can make a reference to eight possible memory addresses (2 x 2 x 2).

Therefore, the address bus dictates how much physical memory the processor can access. For example, an old 80286 processor has a 24-bit address bus, which means that it can access 16,777,216 (224) memory addresses, or 16MB of system memory. Newer processors have 36-bit address buses, which allows them to access 68,719,476,736 memory addresses, or 64GB of memory.

Accessing two different memory addresses with the address bus.


Registers are storage areas within the processor used to store data temporarily for manipulation later. They are used to store and process data and perhaps write back the result of the processed data. The benefit of storing this information in the registers instead of in memory is that the processor contains the information and does not have to retrieve it from memory - which takes time. It is as if information to be processed were in your pocket, rather than across a room, where you would have to walk all the way over and pick it up. Having information in your pocket means it can be accessed much more quickly, saving time and increasing performance. Registers give a processor quicker access to data, and the more registers a processor has, the more data it can store.

Registers are measured in bits. A processor with 16-bit registers has 16 containers into which a programmer can choose to store information, while a processor with 32-bit registers has twice as many containers that it can use to store information.

[Previous] [Contents] [Next]