Full Form of MAR in Computer

MAR stands for Memory Added Register in a computer. It is a CPU (Central Processing Unit) register that does the work of storing the memory address from which either data is taken from or the memory address to which data is sent through the system bus. 

To put it in more simple words, a Memory Added Register or MAR is used to fetch memory addresses to access data during the phase of instructions execution. This address is used to send or input data.

In computers, the MAR (Memory Added Register) and MDR (Memory Data Register) together form an interface between microprogram and computer/PC storage. Evidently, MAR is just half of this interface. 

A MAR, along with the MDR, is found inside the Central Processing Unit (CPU) of the computer. MAR is linked to the address bus and goes straight to either the cache or the RAM (Random Access Memory). 

What is MAR? Its role in computer 

In computer, MAR is the acronym for Memory Added Register. It has an essential role to play in building the CPU or the Central Processing Unit of the computer. Commonly, the CPU is called the “brain” of the computer. Consequently, this makes the role of MAR extremely important. 

However, MAR is only half a part of the interface within the CPU. The other part is the MDR or Memory Data Register. Both are about 32-bit parallel load registers. 

In a CPU, out of the twp registers i.e; MAR and MDR, Memory Added Register (MAR) are generally located on the left side. Memory Added Register (MAR) has its output linked with the address bus. As a result, the use of MAR is the only way that the CPU can connect with the bus. 

The input to it comes from someplace in the Central Processing Unit. On the other hand, the output of MAR is linked to the address bus by the use of a 32-bit-tristate buffer.

Conversely, the input to Memory Data Register comes either from someplace in the CPU or from the data bus and the output of MDR is linked to the data bus by the use of a 32-bit-tristate buffer.  

To save continuous dumping of output to the address bus by Memory Added Register (MAR), a 32-bit-tristate-buffer is added in between the MAR and the address bus. Subsequently, this allows other Input/Output (I/O) devices to make use of the address bus if needed.

Hidden Register 

As a matter of fact, both MAR and MDR are “hidden” registers. An assembly language programmer does not use these registers directly even when they are both used to implement instructions. 

What are the types of addresses in MAR? 

Generally, there are two types of addresses within Memory Added Register. These include:

  1. Address of Instruction, and 
  2. Address of Data 

From the perspective of the computer, CPU, and MAR, both addresses are the same and hold meaning only as a memory. After all, for MAR, an address is just an address. But it is important for a computer learner to know and realize that a Memory Added register incorporates two addresses of instructions and data. 

Consequently, along with the two registers i.e; MAR (Memory Added Register) and MDR (Memory Data Register), an MUX, and two 32-bit-tristate buffers, a system is created by connecting these devices to control signals. 

 

Related Links

Frequently Asked Questions on Full Form of MAR in Computer

memory address buffer inside the CPU. It stands for Memory Address Register. MAR is linked to the address bus through a tristate buffer of 32 bits. It holds the address of all the current instructions that are to be taken from memory.

 

MAR and MDR are hidden registers in the CPU. While a Memory Added Register (MAR) is linked to an addressing bus, a Memory Data Register (MDR) is linked to a data bus. MDR contains all the content found at the memory address obtained from the MAR.  

 

Yes. Memory Added Register is found inside the CPU. It goes directly either to the cache or RAM (Random-Access Memory).

There are two hidden registers in a computer. These are MAR and MDR. They are used as memory addresses and data.

MAR stands for Memory Added Register and is linked to the address bus within a Central Processing Unit (CPU). The purpose of a MAR is to fetch current instructions from a memory or the memory address to which data is to be sent.

Similar to MAR, Memory Data Register or MDR is located inside the CPU but it is connected to the data bus. MDR contains data that is to be transferred or moved to primary memory.