Since the program counter is just another set of memory cells, it can be changed by calculations done in the ALU.