カテゴリ: 基本情報技術者試験 更新日: 2025/12/10

プログラムカウンタとは?CPU内部で命令の順番を管理する重要レジスタを初心者向けに解説

プログラムカウンタ
プログラムカウンタ

先生と生徒の会話形式で理解しよう

生徒

「プログラムカウンタという言葉を聞いたんですが、CPUのどこで使われるものなんですか?」

先生

「プログラムカウンタは、読み方はプログラムカウンタといって、CPU(シーピーユー)が命令を実行するときに『次にどの命令を読めばいいか』を記録する、とても大事なレジスタなんだよ。」

生徒

「命令の順番を記録しているんですね。もしプログラムカウンタがなかったらどうなるんでしょう?」

先生

「プログラムの流れが分からなくなってしまって、CPUはどの命令を実行すればいいか判断できなくなるよ。それでは仕組みを詳しく見ていこう。」

1. プログラムカウンタとは?読み方と基本の意味

1. プログラムカウンタとは?読み方と基本の意味
1. プログラムカウンタとは?読み方と基本の意味

プログラムカウンタとは、CPU内にあるレジスタの一つで、次に実行する命令のアドレスを保持する役割を持ちます。読み方はプログラムカウンタで、英字ではPC(ピーシー)と表されます。

コンピュータは主記憶装置(シュキオクソウチ)に保存された命令を順番に読み取りながら処理しますが、その「順番」を管理しているのがプログラムカウンタです。まさにCPUの道しるべのような存在です。

2. プログラムカウンタがCPUで果たす役割

2. プログラムカウンタがCPUで果たす役割
2. プログラムカウンタがCPUで果たす役割

CPUは命令を1つ実行するたびに、次に実行すべき命令の位置をプログラムカウンタから確認します。命令が実行されると、プログラムカウンタの値は自動的に更新され、次の命令のアドレスに進みます。

この仕組みがあるからこそ、プログラムは順番通りに実行され、途中で迷うことなく処理が進んでいきます。プログラムカウンタはCPU内部の制御装置(セイギョソウチ)と連携しながら動作しています。

3. 命令の流れを管理する仕組み:順次処理の基本

3. 命令の流れを管理する仕組み:順次処理の基本
3. 命令の流れを管理する仕組み:順次処理の基本

プログラムは基本的に「上から順に」処理される構造を持っています。プログラムカウンタが保持しているアドレスは、必ず次に実行される命令の場所を示しています。

例えば、プログラムが10行あるとすると、1行目の命令を終えたらプログラムカウンタは次の2行目のアドレスへ進みます。この動きが繰り返されることで、順次処理が実現されます。

4. 分岐命令とプログラムカウンタの動き

4. 分岐命令とプログラムカウンタの動き
4. 分岐命令とプログラムカウンタの動き

プログラムには「もし〜なら別の処理へ進む」という分岐があります。このような分岐処理を実現するためにも、プログラムカウンタは重要な働きをします。

分岐命令では、プログラムカウンタの値が通常とは違うアドレスに書き換えられることで、プログラムの処理の流れが変わります。これにより、条件分岐や繰り返し処理など複雑なプログラムを実現できます。

5. プログラムカウンタを身近な例で理解しよう

5. プログラムカウンタを身近な例で理解しよう
5. プログラムカウンタを身近な例で理解しよう

プログラムカウンタの役割を身近な例で説明すると、「本を読むときに使うしおり」に似ています。どこまで読んだかを示すしおりがあると、次に読む場所がすぐ分かります。

コンピュータでも同じように、プログラムカウンタというしおりのおかげで、CPUは迷わず正しい命令を読み進めることができます。

6. プログラムカウンタとレジスタの関係を理解する

6. プログラムカウンタとレジスタの関係を理解する
6. プログラムカウンタとレジスタの関係を理解する

プログラムカウンタはレジスタの一種であり、CPUが命令を読み込む際の最重要ポイントを担っています。他のレジスタと同様に高速にアクセスできるため、CPUの処理を妨げることなくスムーズに動作できます。

また、算術論理演算装置(サンジュツロンリエンサンソウチ/ALU)での計算や制御装置との連携も行われ、CPU全体の動きを調整する重要な存在となっています。

カテゴリの一覧へ
新着記事
New1
基本情報技術者試験
クライアントサーバシステムとは?初心者でもわかるネットワークの基本構成をやさしく解説
New2
基本情報技術者試験
分散処理とは?初心者でもわかるコンピュータの処理方式をやさしく解説
New3
情報セキュリティマネジメント試験
ブラックリストとは何かをやさしく解説!初心者でもわかる仕組みと活用例
New4
基本情報技術者試験
集中処理とは?初心者でもわかるコンピュータ処理方式の基本用語をやさしく解説
人気記事
No.1
Java&Spring記事人気No1
基本情報技術者試験
FTP
220
FTPとは?初心者でもわかるファイル転送プロトコルの基本と仕組みを徹底解説!
No.2
Java&Spring記事人気No2
基本情報技術者試験
NIC
212
NICとは何か?初心者にもわかるネットワークインターフェースカードの基本
No.3
Java&Spring記事人気No3
基本情報技術者試験
16進数とは?初心者にもわかる意味・読み方・変換方法をやさしく解説!
No.4
Java&Spring記事人気No4
基本情報技術者試験
URL
187
URLとは?初心者でもわかるWebリンクの仕組みと役割をやさしく解説!
No.5
Java&Spring記事人気No5
基本情報技術者試験
イーサネット(Ethernet)とは?初心者にもわかるLANの基本技術をやさしく解説
No.6
Java&Spring記事人気No6
基本情報技術者試験
セグメントとは?ネットワークの基本単位を初心者向けにやさしく解説
No.7
Java&Spring記事人気No7
基本情報技術者試験
スキーマ(Schema)とは?データベースの基本構造を初心者向けに解説
No.8
Java&Spring記事人気No8
基本情報技術者試験
ハブとは?初心者でもわかるネットワーク接続装置の基本と仕組み