ITパスポート 令和3年度 問90:コンピュータ構成要素に関する問題
CPUのクロックに関する説明のうち,適切なものはどれか。
- aUSB接続された周辺機器とCPUの間のデータ転送速度は,クロックの周波数によって決まる。
- bクロックの間隔が短いほど命令実行に時間が掛かる。
- cクロックは,次に実行すべき命令の格納位置を記録する。
- dクロックは,命令実行のタイミングを調整する。正答
AI解説(初心者・標準・上級)
理解度に合わせて3レベルの解説を無料で読めます。
答えは d「クロックは、命令実行のタイミングを調整する」 です。
クロックは、CPU(コンピュータの頭脳)の中で『1・2・3…』とリズムを刻むメトロノームのようなものです。このリズムに合わせて命令を1つずつ実行します。リズムが速いほどたくさん仕事ができます。
👉 覚え方:「クロック=CPUのメトロノーム(リズム係)」。
ほかの選択肢:a USB機器の速さはクロックだけで決まらない/b リズムの間隔が短い(=速い)ほど命令は速く進む(『時間が掛かる』は逆)/c 次の命令の場所を覚えるのは別の部品(プログラムカウンタ)の役目。正しいのは『タイミングを調整する』d。
なぜこれが正解か
正解は d。クロックはCPU内部で動作の基準となる周期的な信号で、各回路が命令実行のタイミングを合わせる(同期する)ために使う。クロック周波数(Hz)が高いほど単位時間あたりの処理回数が増え、一般に処理が速くなる。
各選択肢の解説
- a 誤り:USB周辺機器とのデータ転送速度はUSB規格(2.0/3.0等)やインタフェースの仕様で決まり、CPUのクロック周波数で直接決まるわけではない。
- b 誤り:クロックの間隔が短い=周波数が高い=速いので、命令実行は速くなる。記述が逆。
- c 誤り:次に実行すべき命令の格納位置(アドレス)を記録するのはプログラムカウンタ(命令アドレスレジスタ)の役割。
覚え方・ひっかけ注意
クロック=『タイミングの基準信号』。bの『間隔が短い=遅い』は典型的なひっかけ。間隔が短い=周波数が高い=速い、と必ず変換する。cのプログラムカウンタとの役割混同にも注意。
理論的背景
CPU のクロック(Clock)は、内部の順序回路を同期させる周期的な基準信号だ。水晶振動子(クリスタルオシレータ)が発生させる正確な周波数の信号がCPU全体に配布され、全ての回路がこのクロックの「立ち上がり(または立ち下がり)のタイミング」で動作を刻む。
クロックの基本特性:
- クロック周波数(Hz): 1秒間に繰り返す回数。3GHz = 毎秒30億サイクル
- クロックサイクル時間: 1サイクルの長さ = 1/周波数。3GHzなら約0.33ナノ秒
- クロック間隔が短い = 周波数が高い = 処理が速い(本問選択肢 b が「時間が掛かる」という逆記述のひっかけ)
命令実行は「フェッチ → デコード → 実行 → 書き戻し」という複数ステージで構成され、各ステージは1〜数クロックサイクルを消費する。CPI(Clock cycles Per Instruction: 命令あたりの平均クロック数)が全体の処理速度を左右し、実行時間=命令数 × CPI × クロックサイクル時間、という式で表される。
パイプライン処理: 複数の命令のフェッチ・デコード・実行ステージを並行して処理することで、スループットを向上させる。クロックを有効活用する設計技術の代表例。
実務での位置づけと発展動向
クロック周波数だけで性能を語れない時代への変化:
| 性能向上手法 | 説明 |
|---|---|
| クロック周波数向上 | 単純に速く動かす。発熱・消費電力の壁(Power Wall)で限界 |
| マルチコア | 複数の CPU コアを1チップに搭載し、並列処理で実効性能を向上 |
| スーパースカラ | 1クロックで複数の命令を同時実行(複数の実行ユニット)|
| アウトオブオーダー実行 | 依存関係のない命令を順序を変えて並列実行する最適化 |
| 専用アクセラレータ | AI 推論は NPU・行列演算は GPU・信号処理は DSP と専用化 |
クロック周波数の限界(4〜5GHz 程度)を超えてコア数増加(現在は16〜64コア以上)へシフトした結果、「マルチスレッドプログラミング」の重要性が上がっており、シングルスレッドのクロック速度より並列処理効率が性能の鍵となる。
試験での位置づけ
ITパスポートのコンピュータ構成要素分野でクロックは定番出題語。「タイミングの基準信号」という定義と「クロック間隔が短い = 速い(逆は遅い)」という論理的反転の問題が最頻出。本問の選択肢 b「クロックの間隔が短いほど命令実行に時間が掛かる」は典型的な「逆」の記述として問われる。選択肢 c「次に実行すべき命令の格納位置を記録する」はプログラムカウンタ(PC)の役割で、クロックとの混同を狙う引っかけ。本バッチの CPU・レジスタ問(113837ab)と合わせて「CPU 内部の各部品の役割」として体系化すると混同が防げる。
選択肢の発展補足
選択肢 a「USB 接続された周辺機器との転送速度はクロック周波数で決まる」 は誤り。USB の転送速度は USB 規格(USB 2.0: 480Mbps、USB 3.2: 10〜20Gbps、USB 4: 40Gbps)と USB コントローラの仕様・バスの帯域幅によって決まる。CPU のクロック周波数は内部処理速度だが、外部インタフェース(USB・PCIe・SATA・Wi-Fi 等)の転送速度はそれぞれ独立した規格で定義される。「CPU が速くなっても USB が速くなるとは限らない」という例示として使われる典型的な混同だ。
選択肢 b「クロックの間隔が短いほど命令実行に時間が掛かる」 は完全に逆。クロック間隔 = クロックサイクル時間 = 1/周波数。間隔が短い = 周波数が高い = 1サイクルあたりの時間が短い = 単位時間あたりの命令実行回数が増える = 速くなる。「間隔が短い = 遅い」と読んでしまう最も多い誤答パターン。物理的なイメージ(「間隔が詰まっている = 忙しい = 速い」)で論理を確認するとよい。
選択肢 c「クロックは次に実行すべき命令の格納位置を記録する」 はプログラムカウンタ(PC: Program Counter / IP: Instruction Pointer)の定義。プログラムカウンタは命令のメモリアドレスを保持し、命令フェッチ後にインクリメント(+命令長)される。クロックは「タイミングを刻む信号」であり、何かを「記録する」機能は持たない。レジスタの種別(プログラムカウンタ・命令レジスタ・汎用レジスタ・スタックポインタ)の役割を整理しておくと、類似問題で混同しない。
出典:IPA(情報処理推進機構)公式 ITパスポート試験 令和3年度 問90/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。