程式計數器

程序计数器（英语：Program Counter，PC）是一个中央处理器中的寄存器，用于指示计算机在其程序序列中的位置。在Intel x86和Itanium微处理器中，它叫做指令指针（instruction pointer，IP），有时又称为指令地址寄存器（instruction address register，IAR）、指令计数器或只是指令序列器的一部分。
在大部分的处理器，指令指针都是在提取程序指令后就被立即增加；也就是说跳跃指令的目的地址，是由跳跃指令的操作数加上跳跃指令之后下一个指令的地址（比特或字节，视计算机形态而定）来获得目的地。
处理器通常从存储器中顺序获取指令，但控制传输指令通过在PC中添加一个新值来改变顺序。这些包括“分支”（有时称为“跳转”），“子例程调用”和“返回”。以某些断言的真实为条件的传输可让计算机在不同条件下遵循不同的顺序。
“分支”规定下一条指令从内存中的其他地方获取。“子程序”不仅调用分支，而且还保存PC 的先前内容。“返回”检索 PC 的保存内容并将其放回去，然后按照子程序调用的指令继续顺序执行。