Which of the following CPU registers contains the address of the next instruction to be fetched from the main memory when the previous instruction has been successfully completed?

Which of the following CPU registers contains the address of the next instruction to be fetched from the main memory when the previous instruction has been successfully completed? Correct Answer Program Counter (PC)

Program counter:

  • A program counter is used to keep track of the execution of the program. It contains the memory address of the next instruction to be fetched.
  • The program counter contains the address of the next instruction to be fetched from the main memory when the previous instruction has been successfully completed.
  • The program counter also functions to count the member instruction.
  • As each instruction gets fetched, the program counter increases its stored value by 1.


Accumulator:

  • “Accumulator” is the most frequently used register to store data from memory. It is an indifferent number in the different microprocessors.
  • An Accumulator is a register for the short term, intermediate storage of arithmetic and logic data in a computerized CPU.
  • Intermediate results of an operation are progressively written to the accumulator, overwriting the previous value.

 

Memory Address Register:

  • The ‘MAR’ (Memory Address Register) is the CPU register that either stores the memory address from which data will be fetched to the CPU or the address to which data will be sent and stored.
  • MAR holds the address of the location to be accessed from memory.


Memory Data Register:

  • MDR (Memory Data Register) also known as MBR (Memory Buffer Register) is the register in a computer processor, or control processing unit, CPU, that stored the data being transferred to and from the immediate access storage.
  • When reading from the memory, data addressed by MAR is fed into the MDR and then used by the CPU. When writing to memory, the CPU writes data from MDR to memory location whose address is stored in MAR.

 

Confusion Things:

  • “Instruction Register” is the register that holds the instruction which is currently being executed.
  • The difference between stack pointer and the program counter is that the stack pointer is a register that stores the address of the last program largest in a stack while the program counter is a register that stores the address of the next instruction to be executed from the memory.

Related Questions