程式計數器(英語:Program Counter縮寫PC)是一個中央處理器CPU中的暫存器,其功能是儲存下一條要執行的指令(在機器語言中)的主記憶體地址。在Intel x86Itanium微處理器中,它叫做指令指標(instruction pointerIP),有時又稱為指令地址暫存器(instruction address registerIAR[1]、指令計數器[2]或只是指令序列器的一部分[3]

Thumb
PDP-1電腦(1959年)的控制面板,程式計數器就在面板的左上方。

在大部分的處理器中,指令指標都是在提取程式指令後就被立即增加;也就是說跳躍指令的目的地址,是由跳躍指令的運算元加上跳躍指令之後下一個指令的地址(單位爲位元或位元組,視電腦形態而定)來獲得目的地。

處理器通常從記憶體中順序取得指令,但控制傳輸指令通過在PC中添加一個新值來改變順序。這些包括「分支」(有時稱為「跳轉」),「次常式呼叫」和「返回」。以某些斷言結果為真為條件的傳輸可讓電腦在不同條件下遵循不同的順序。

「分支」規定下一條指令從主記憶體中的其他地方取得。「子程式」不僅呼叫分支,而且還儲存 PC 的先前內容。「返回」檢索 PC 的儲存內容並將其放回去,然後按照子程式呼叫的指令繼續順序執行。

參考文獻

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.