最終更新日:2026年7月13日
fe technology computer-architecture addressing
まず結論
アドレス指定方式とは、命令に書かれた情報から、実際に使う値や主記憶上の番地をどう求めるかを決める方式です。
FE試験では、まず「その値をそのまま使うのか」「足すのか」「一度たどるのか」を確認します。
値そのものを使う → 即値
アドレス部をそのまま使う → 直接
アドレス部が示す場所を一度たどる → 間接
アドレス部 + 指標レジスタ → 指標付き
アドレス部 + プログラムカウンタ → 相対
レジスタの値を番地として使う → レジスタ間接
直感的な説明
資料を棚から取り出す場面で考えると分かりやすいです。
- 「この数字をそのまま使う」
- 「100番の棚を見る」
- 「100番の棚に書かれた番号の棚を見る」
- 「100番の棚から、レジスタの値だけずらして見る」
この違いが、アドレス指定方式の違いです。
定義・仕組み
即値アドレス指定
命令の中に書かれた値そのものを使います。
使うデータ = 命令中の値
直接アドレス指定
命令のアドレス部を、そのまま主記憶番地として使います。
有効アドレス = アドレス部
間接アドレス指定
アドレス部が示す主記憶を一度見て、そこに格納された値を有効アドレスとして使います。
有効アドレス = 主記憶[アドレス部]
指標付きアドレス指定
アドレス部に指標レジスタの値を足します。
有効アドレス = アドレス部 + 指標レジスタ
例えば、アドレス部が100、指標レジスタが50なら、有効アドレスは150です。
相対アドレス指定
アドレス部にプログラムカウンタの値を足します。
有効アドレス = アドレス部 + プログラムカウンタ
レジスタ間接アドレス指定
レジスタに入っている値を、そのまま主記憶番地として使います。
有効アドレス = レジスタの値
どんな場面で使う?
指標付きアドレス指定は、配列や表のような連続データへのアクセスに向いています。
相対アドレス指定は、現在位置からの距離で命令やデータを指定するときに使われます。
間接指定は、ポインタのように「データの場所を示す情報」をたどる場面で使われます。
よくある誤解・混同
直接と間接
直接:その番地を見る
間接:その番地に書かれた番地を見る
指標付きとレジスタ間接
指標付き:アドレス部 + レジスタの値
レジスタ間接:レジスタの値そのもの
指標付きと相対
どちらも足し算ですが、足すレジスタが違います。
指標付き:指標レジスタ
相対:プログラムカウンタ
まとめ(試験直前用)
- 即値は値そのもの
- 直接はアドレス部をそのまま使う
- 間接は一度主記憶をたどる
- 指標付きはアドレス部に指標レジスタを足す
- 相対はアドレス部にプログラムカウンタを足す
- レジスタ間接はレジスタの値を番地として使う