プログラムカウンタとは?ぷろぐらむかうんた
プログラムカウンタとは、CPU の中にあるレジスタ(CPU の中の一時置き場)の一つで、次に実行する命令が主記憶のどの番地にあるかを持っている。命令を取り出すたびに次の番地へ進み、分岐や割込み(実行中の処理を一時止めて別の処理を先にさせる仕組み)が起きると飛び先の番地に書き換わる。
最終更新:2026-10-10
この語が出る過去問を解く →背景
CPU は「命令を取り出す → 解読する → 実行する」をくり返す。取り出す場所を覚えておく役がいないと、次にどこを読めばよいか分からない。それを担うのがプログラムカウンタ。
具体例
主記憶の 100 番地から命令が並んでいて、1 命令が 1 番地ずつ占めるとする。100 番地の命令を取り出すと、プログラムカウンタは 101 に進む。101 番地が「条件が成り立てば 120 番地へ分岐」の命令で、条件が成り立つと値が 120 に書き換わり、次は 120 番地の命令を取り出す。擬似言語の 1 行は機械語の命令いくつかに訳されるので、行番号と番地は一致しない。
試験での引っ掛け
取り出した命令そのものを入れるのは命令レジスタで、プログラムカウンタが持つのは「次の命令の番地」。割込みのときは、再開位置としてプログラムカウンタを退避(保存)し、復帰時に戻す。このとき汎用レジスタなど実行中の状態も合わせて退避するので、「プログラムカウンタだけを退避する」わけではない。
関連用語
出た過去問
出典:平成30年度 秋期 基本情報技術者試験 午前 問10(IPA)
割込み処理の終了後に,割込みによって中断された処理を割り込まれた場所から再開するために,割込み発生時にプロセッサが保存するものはどれか。
正解:プログラムカウンタ
要点:割込みでは再開位置を示すプログラムカウンタを退避する
中断した場所から再開するには、次に実行すべき命令の番地を覚えておく必要がある。その番地を保持しているのがプログラムカウンタで、割込み発生時に退避され、復帰時に元へ戻される。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。