Program counter holds the address of also the first byte of the next instruction to be fetched for implementation or the address of the next byte of a multi byte instruction, which has not been entirely fetched. In both the cases it gets increased automatically one by one as the instruction bytes get fetched. Also Program register remains the address of the next instruction.