The program counter (PC) on the 8051 is a 16-bit register that points to the first (lowest address) byte of the instruction, which can be from 1 to 3 bytes length.
During the process of instruction fetch, before the instruction begins executing, the PC is incremented by the length of the instruction, and therefore points to the next instruction in program memory. Jump and call instructions will modify or replace the PC value, causing the next instruction to be fetched from a different address.
what is a program counter in the 8051 is