数値を2進数で格納するレジスタがある。このレジスタに正の整数xを設定した後,“レジスタの値を2ビット左にシフトして,xを加える”操作を行うと,レジスタの値はxの何倍になるか。ここで,あふれ(オーバフロー)は,発生しないものとする。

nビット左シフトは2のn乗倍。4x+x=5x

基本情報技術者試験2016年度 春期 午前1/基礎理論 / 数値表現

選択肢

正解と解説

正解: 5

2進数を1ビット左へシフトすると値は2倍になるので、2ビット左シフトは2の2乗すなわち4倍を意味する。シフト後のレジスタには4xが入っており、そこに元の値xを加えるので4x+x=5xとなる。左シフトによる乗算と加算を組み合わせると、任意の定数倍をシフトと加算だけで実現できるという考え方の基本例である。

選択肢ごとの解説

出典:平成28年度 春期 基本情報技術者試験 午前 問1(IPA)

同じ分野の他の問題

最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。