基礎理論

基本情報技術者試験 科目A免除 修了試験 20191208 実施分 問3

2桁の2進数 x1x2 が表す整数を x とする。2進数 x2x1 が表す整数を,x の式で表したものはどれか。ここで,int(r) は非負の実数 r の小数点以下を切り捨てた整数を表す。
  • ア 2x+4int(x/2)
  • イ 2x+5int(x/2)
  • ウ 2x−3int(x/2)
  • エ 2x−4int(x/2)

出典:基本情報技術者試験 科目A免除 修了試験 20191208 実施分 問3

答えと解説を見る

正解:ウ

覚える知識

2進2桁の上下ビット入替え式

2桁2進数x1x2は2x1+x2を表し、int(x/2)で上位ビットx1が取り出せる。

この問題で必要なこと

x=2x1+x2、int(x/2)=x1なので入替え後はx2×2+x1=2(x−2x1)+x1=2x−3int(x/2)となる。

ひっかけ

係数を2x1ではなく4倍・5倍などと取り違えさせる。

この知識の出題:本試験系 0 回・免除試験 3 回(公開問題での観測値)

この知識をアプリで解いて覚える レッスン「シフト演算で掛け算・割り算をする」で学ぶ

同じ知識の過去問