基本情報技術者試験 過去問解説
論理シフトとは?基本情報技術者試験 平成25年度 春期 午前 問1を解説
基本情報技術者試験 平成25年度 春期 午前 問1は、論理シフトに関する理解を問う問題です。検索から入っても、問題文、選択肢、正解、解説、各選択肢がなぜ違うかをこのページだけで確認できます。
問題文
16ビットの2進数nを16進数の各桁に分けて,下位の桁から順にスタックに格納するために,次の手順を4回繰り返す。a,bに入る適切な語句の組合せはどれか。ここで,は16進数XXXXを表す。 〔手順〕 (1) [a] をxに代入する。 (2) xをスタックにプッシュする。 (3) nを [b] 論理シフトする。
この問題の出題ポイント
- 論理シフトの定義だけでなく、問題文中の条件がどの選択肢に当てはまるかを確認する。
- データ構造分野では、用語の目的・主体・責任範囲の違いが選択肢で問われやすい。
- 関連タグ: 数値表現。
選択肢
- アa:n AND 、b:左に4ビット
- イa:n AND 、b:右に4ビット正解
- ウa:n AND 、b:左に4ビット
- エa:n AND 、b:右に4ビット
正解
イ: a:n AND 、b:右に4ビット
解説
16ビットの数を16進数の4桁(ニブル)に分けて下位から順にスタックに積む処理です。下位4ビットを取り出すには n AND でマスクし、次の桁を取り出すために n を右に4ビット論理シフトします。よって a=n AND 、b=右に4ビット の組合せ(イ)が正解です。
なぜ他の選択肢が違うのか
ア
下位4ビット抽出はマスクで正しいが、左シフトは上位桁が消えていくため次桁を取り出せず誤りです。
イ(正解)
マスクで下位4ビット抽出、右4ビットシフトで次の桁が下位に来る、というニブル単位の取り出しを表しており正解です。
ウ
マスクは下位4ビットを消去してしまい上位12ビットが残るため、下位桁の抽出になりません。
エ
マスクが下位ニブルを潰してしまい、抽出対象を失うため不正解です。
解き方の整理
論理シフトの問題では、選択肢のキーワードだけで判断せず、問題文が示す条件と正解選択肢の説明が一致しているかを見ます。誤答選択肢は、似た用語を混ぜる、主体を入れ替える、目的や範囲を広げすぎる、という形で作られることが多いため、選択肢別解説まで確認しておくと復習効率が上がります。
関連問題
前後の問題
平成25年度 春期 午前 の関連する問題
復習を続ける
間違えた問題、苦手タグ、模試履歴を保存して復習する導線を用意しています。広告なしPro、弱点分析、復習リマインダーは段階的に提供予定です。