跳转到内容

程式計數器

本页使用了标题或全文手工转换
维基百科,自由的百科全书

这是本页的一个历史版本,由InternetArchiveBot留言 | 贡献2020年9月16日 (三) 01:36 (补救1个来源,并将0个来源标记为失效。) #IABot (v2.0.7)编辑。这可能和当前版本存在着巨大的差异。

PDP-1计算机(1959年)的控制面板,程序计数器就在面板的左上方。

程序计数器(英語:Program CounterPC)是一个中央处理器中的寄存器,用于指示计算机在其程序序列中的位置。在Intel x86Itanium微处理器中,它叫做指令指標(instruction pointerIP),有时又称为指令地址寄存器(instruction address registerIAR[1]、指令计数器[2]或只是指令序列器的一部分[3]

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

处理器通常从存储器中顺序获取指令,但控制传输指令通过在PC中添加一个新值来改变顺序。这些包括“分支”(有时称为“跳转”),“子例程调用”和“返回”。以某些断言结果为真为条件的传输可让计算机在不同条件下遵循不同的顺序。

“分支”规定下一条指令从内存中的其他地方获取。“子程序”不仅调用分支,而且还保存 PC 的先前内容。“返回”检索 PC 的保存内容并将其放回去,然后按照子程序调用的指令继续顺序执行。

参考文献

  1. ^ Mead, Carver; Conway, Lynn. Introduction to VLSI Systems. Reading, USA: Addison-Wesley. 1980. ISBN 0201043580. 
  2. ^ Principles of Operation, Type 701 and Associated Equipment (PDF). IBM. 1953 [2018-03-29]. (原始内容存档 (PDF)于2018-09-29). 
  3. ^ Harry Katzan (1971), Computer Organization and the System/370, Van Nostrand Reinhold Company, New York, USA, LCCCN 72-153191