メインコンテンツへスキップ
基本情報技術者2017年度 春期午前5

2017年度 春期 基本情報技術者 午前5

難度標準

次の流れ図は、シフト演算と加算の繰返しによって2進整数の乗算を行う手順を表したものである。この流れ図中の a, b の組合せとして、適切なものはどれか。ここで、乗数と被乗数は符号なしの16ビットで表される。X, Y, Zは32ビットのレジスタであり、桁送りには論理シフトを用いる。最下位ビットを第0ビットと記す。

選択肢

Yの第0ビット, Xを1ビット左シフト,Yを1ビット右シフト
Yの第0ビット, Xを1ビット右シフト,Yを1ビット左シフト
Yの第15ビット, Xを1ビット左シフト,Yを1ビット右シフト
Yの第15ビット, Xを1ビット右シフト, Yを1ビット左シフト

解説

結論 → 詳細 → 補足 の 3 層構成

展開
結論Layer 1

アが正解です。2進整数の乗算アルゴリズムでは、被乗数(ここではXに相当)を乗数(Yに相当)の各ビットで条件分岐しながら、被乗数のシフトと累加を行うのが一般的です。具体的には、乗数(Y)の最下位ビット(第0ビット)が1であれば、被乗数(X)を結果レジスタ(Zに相当)に加算し、その後、被乗数(X)を1ビット左シフト、乗数(Y)を1ビット右シフトします。これにより、乗数(Y)の下一桁から順に処理し、乗算結果を構築していきます。

詳細Layer 2

イは、Xのシフト方向が逆であり、乗算の仕組みに合いません。ウは、Yの参照ビットが第15ビットでは不十分であり、乗数の全ビットを順に処理できません。エは、Xのシフト方向が誤っており、乗数(Y)の参照ビットも適切ではありません。

この解説は?
この解説は AI 生成です(詳細)

解説テキストは Google Gemini に IPA 公式の問題文・公式解答を入力して生成しました。 人間によるレビューを行ったものと、未レビューのものが混在します。

AI は事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があります。 重要な判断は必ず IPA 公式 PDF または最新の参考書でご確認ください。

解説の検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。

※ AI 生成の解説は誤りを含む可能性があります。重要な判断は IPA 公式資料でご確認ください。

最終更新:

分野「アルゴリズムとプログラミング」の学習ポイント

この問題の理解を「分野全体の力」に広げるための足がかり

何が問われるか
計算量(O 記法)・基本データ構造・典型アルゴリズム(探索・整列)・再帰の挙動を読む力。
学習の進め方
擬似コードを実際にトレースして変数の遷移を表に書き出す習慣を付ける。スタック/キュー/木の図示が定着の鍵。
関連キーワード
計算量二分探索クイックソート再帰スタックキュー木構造
この分野の問題をもっと解く
AI コパイロット

この問題を AI と深掘りする

用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。

クイズモードで開く

共有

X でシェアLINE

ショート動画

関連する問題

アルゴリズムとプログラミング の他の問題