修了試験 2022-07-24実施分 基本情報技術者試験 問3
2桁の2進数x_1x_2が表す整数をxとする。 2進数x_2x_1が表す整数を,xの式で表したものはどれか。 ここで,int(r)は非負の実数rの小数点以下を切り捨てた整数を表す。
正答3
解説
正解は3です。 2桁の2進数x_1x_2では、x_1が上位桁(2の位)、x_2が下位桁(1の位)です。 桁を入れ替えた2進数x_2x_1の値を、xとint(x/2)で表します。 【計算】 xの値は、x=2x_1+x_2です。 xを2で割った商の整数部分は上位桁なので、int(x/2)=x_1です。 よって、x_2=x-2x_1です。 入れ替えた2進数x_2x_1の値は、2x_2+x_1です。 ここにx_2=x-2x_1を代入すると、2(x-2x_1)+x_1=2x-3x_1です。 x_1=int(x/2)なので、答えは2x-3int(x/2)です。 【選択肢別解説】 1:× x=2(2進数10)を代入すると4+4×1=8になります。 正しい値は2進数01の1なので、誤りです。 2:× x=2を代入すると4+5×1=9になり、正しい値1になりません。 3:○ 式を変形した結果と一致します。 x=2なら4-3=1、x=3なら6-3=3となり、正しく入れ替わります。 4:× x=2を代入すると4-4×1=0になり、正しい値1になりません。 【ポイント】 2進数を2で割った商は1桁右シフトした値、余りは最下位桁になります。 選択肢の式に迷ったら、x=0〜3を代入して検算すると確実です。まとめて解く
修了試験 2022-07-24実施分を通しで解く(80問)→