What is Memory Address? (Explained)

What is Memory Address?

A memory address refers to the precise location on the memory unit to store data. In simple terms, it is the specific space on the memory that stores each byte of data.

Technically, a memory address signifies a unique ID for tracking data stored in the memory by the Central Processing Unit (CPU) or a device.

It is a binary address and is specifically demarcated by a finite and ordered sequence.


  • Binary numbers or bytes are assigned to memory that act as addresses to hold data up to 8 bits, in general.
  • Every memory address has a physical address or a code that the CPU uses to access it.
  • The memory addresses are accessed by the CPU and other hardware devices through data buses to read the data stored there.
  • The assigned memory address is used to copy stored software and data from the input device or secondary storage to the RAM.
  • Memory addresses help in organizing the memory of the computer to allow the user to store or retrieve data from it more efficiently.

Understanding Memory Address

What is Memory Address

The memory address is a specific location where all data and programs are stored before they are sent to the CPU for further processing.

Typically, in a single memory chip of a computer there can be 2 million or more memory addresses.

All these addresses are typically accessed at random, which is why a memory used in a computer is typically called a Random Access memory (RAM).

Read Also:  6 Differences Between VRAM and Shared Memory

The data stored in the memory addresses is accessed by the CPU and other devices through the data buses.

These buses determine the number of memory addresses to be assigned, depending on the requirements of the CPU.

In general, the memory addresses are assigned during the bootup process. This typically instigates the startup BIOS on the ROM BIOS chip.

This, in turn, becomes the allocated address.

When it comes to video, the Video RAM and ROM are assigned the first memory address to allow faster video capability.

This address is followed by the allocated memory addresses of other devices as follows:

  • The RAM and ROM chips of the expansion card
  • Dual Inline Memory Modules or motherboard
  • Single Inline Memory Modules or Rambus Inline Memory Modules


As for the contents of the memory address, each one of them holds a decimal or a binary number of some kind. Typically, in today’s multitasking environment, a memory address can hold the following:

  • Machine code
  • Code or text segment
  • Shared libraries
  • Initialized data segment
  • Allocated but uninitialized variables
  • Heap
  • Run-time stack
  • Memory-mapped files
  • Shared memory

Some of the portions of the address space may not be mapped at all and some systems may have a split architecture.

These specific memory units usually store data, machine code, and constants in separate locations of different sizes.

What is the Use of a Memory Address?

The memory address is typically used as a register to hold and manage the addresses relocated to the memory unit with the help of a bus approach or a direct input declaration for the particular memory.

It also stores the addresses from where the data is to be fetched or sent to.

Read Also:  Desktop and Laptop RAM: 6 Differences

On the other hand, the memory addresses are used by the programs for different purposes, such as:

  • To perform a machine code
  • To store data
  • To recover data

The CPU needs to access the memory address for processing the physical memory in each segment. Apart from the CPU, the memory addresses are also required by the following for their respective operations:

How Many Bits are Stored in a Memory Address?

In almost all modern computers, one single memory address can store 8 bits, or 1 byte, of data. Ideally, the data longer than a byte is sequentially divided into several bytes and are stored in a series of addresses.

However, it all depends on the type of memory because there are a few specific memory modules that can hold more than 8 bits of data in one location.

The specific types of memory modules that can store 16 bits (2 bytes) or 32 bits (4 bytes) of data are called Wide Memory modules.

They allow reading and writing more data on a single memory address, which, in turn, enhances the speed of memory operations.

The functionality and use of these specific memory units, just like the others, depends on the features of the processor, pointers and registers, just like a collection recognized by several programming languages.

Is Memory Address a Pointer?

Simply put, a pointer is a variable that holds the memory address and is not the memory address itself. It simply points to the memory address, though it has its own individual address.

You can alternatively say that a pointer is a type of handle, an ID or a combination of different IDs but not necessarily the actual memory address.

Read Also:  What is DDR4 RAM? Works, Uses, Benefits & Drawbacks

It plays a significant role in dynamic memory allocation. This ID can be anything, including a text string of fixed size.

A pointer is typically used to store other memory items and locations of other variables, and can be dereferenced to get access to the memory location.

What is the Lowest Memory Address?

The space needed to store the smallest group of data of 8 bits is the smallest memory address on most current computers.

To be more precise, in the big endian, the smallest address is 0x1000, or 0x01000 in the little endian, where 01 is stored.

Can a Memory Address Be 0?

Yes, a memory address can be 0, and when it is so, it is called a null pointer.

However, this is a pointer for nothing because a program at no time is allowed to look at it for any address or store anything in the memory address 0.


So, now you know what a memory address is after reading this article.

This is a reference ID of fixed length, used by both hardware and software at different levels.

The semantics and use of these addresses depend on the incremental address registers, instruction pointers and features of the CPU.

About Dominic Cooper

Dominic CooperDominic Cooper, a TTU graduate is a computer hardware expert. His only passion is to find out the nitty gritty of all computers since childhood. He has over 12 years of experience in writing, computer testing, and research. He is not very fond of social media. Follow Him at Linkedin