プログラムカウンター

提供: MonoBook
2021年7月28日 (水) 01:43時点におけるAdministrator (トーク | 投稿記録)による版 (ページの作成:「'''プログラムカウンター'''(英語:Program Counter、通称:PC)とは、 CPUが次に実行すべき命令があるメモリ上のアドレ…」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

プログラムカウンター英語:Program Counter、通称:PC)とは、 CPUが次に実行すべき命令があるメモリ上のアドレスを格納したレジスターである。

なお、プログラムカウンターの呼称はCPUメーカーごとに方言がいっぱいある。

  • Instruction Pointer (IP) = Intel
  • Instruction Address Register (IAR)
  • Instruction Counter (IC) = IBM
  • Instruction Sequencer (IS)

概要[編集 | ソースを編集]

通常、CPUは命令をフェッチするとPCはインクリメントされ次に実行する命令のメモリアドレスを保持する。 この繰り返しにより順次命令が実行される。

条件分岐命令はこのPCにジャンプ先となる新しい値を入れることで実行順序を変更する。

サブルーチンコールは、前述の条件分岐命令の直前にPCの値をどこかに保存しておくことで、リターンできるようにしたものである。

備考[編集 | ソースを編集]

AVRコントローラーなどのRISCチップの一部製品は、 PCがバイナリカウンターになっており、 命令のフェッチではなく1クロックごとに強制的にインクリメントされるものもある。