レジスタとは?れじすた
レジスタとは、プロセッサ内部に置かれた最も高速な記憶で、演算の対象や次に実行する命令の番地など、実行中に必要な値を一時的に保持する。プログラムカウンタ、命令レジスタ、アキュムレータ、指標レジスタ、スタックポインタ、状態レジスタのように役割ごとに種類があり、本数が限られるためどの値を載せるかはコンパイラの最適化対象になる。
最終更新:2026-10-07
この語が出る過去問を解く →背景
主記憶へ値を取りに行くたびに演算装置が待たされれば、演算そのものがどれだけ速くても性能は出ない。速い記憶ほど高価で容量を増やせないという制約は今も変わらないので、いま使う数語だけを演算装置のすぐ隣に置く、という割り切りで用意されたのがレジスタである。記憶階層の最上位にあたり、各レジスタの役割の対応が問われる。
具体例
条件分岐命令は、直前の演算がゼロになったか桁あふれが起きたかを状態レジスタ(フラグレジスタ)から読んで行き先を決める。関数を呼ぶときはスタックポインタが戻り番地や引数を積む位置を指し、ArmやRISC-Vのような命令セットでは、どのレジスタを何に使うかが呼出し規約として決められている。
試験での引っ掛け
プログラムカウンタが指すのは実行中の命令ではなく、次に取り出す命令の番地とするのが一般的である。アキュムレータは演算結果を置く作業用のレジスタであり、番地を保持する役割とは分けて覚える。指標レジスタはアドレス修飾に使うもので、データベース分野の索引とは無関係である。
関連用語
出た過去問
出典:令和3年度 秋期 高度試験 午前Ⅰ 問4(IPA)
演算レジスタが16ビットのCPUで符号付き16ビット整数x1, x2を16ビット符号付き加算(x1+x2)するときに、全てのx1, x2の組合せにおいて加算結果…
正解:x1とx2の符号が異なる場合
要点:符号が異なる整数どうしの加算はオーバフローしない
符号付き16ビットの表現範囲は-32,768〜+32,767。x1とx2の符号が異なるとき、和の絶対値は必ず絶対値の大きい方の値以下に収まるので、元の値が表現できている限り和も範囲内となり、オーバフローは決して起こらない。オーバフローは同符号どうしを加算したときにだけ発生しうる。
出典・参考
公式シラバスの2 コンピュータシステム > 1. プロセッサ > (5) プロセッサの構造と方式に掲載されている用語です。
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。