Concept:
The Program Counter (PC) is a special-purpose register in a microprocessor.
Its main function is:
\[
\text{To store the memory address of the next instruction to be executed}
\]
After fetching an instruction, the program counter automatically increments to point to the next instruction.
Step 1: Understand the role of Program Counter.
The processor executes instructions sequentially.
To know where the next instruction is located, the processor uses:
\[
\text{Program Counter}
\]
Thus:
\[
PC \rightarrow \text{Stores address of next instruction}
\]
Step 2: Analyze option A.
Accumulator stores arithmetic and logic operation results.
Hence:
\[
A \text{ is incorrect}
\]
Step 3: Analyze option B.
Program counter stores next instruction address.
Thus:
\[
B \text{ is correct}
\]
Step 4: Analyze option C.
Stack pointer points to top of stack memory.
Therefore:
\[
C \text{ is incorrect}
\]
Step 5: Analyze option D.
Instruction register stores currently decoded instruction, not its address.
Hence:
\[
D \text{ is incorrect}
\]
Step 6: Write the final answer.
Therefore, the correct option is:
\[
\boxed{(B)\ \text{Program counter}}
\]