基礎理論

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

非負の2進数b1b2…bnを3倍にしたものはどれか。
  • ア b1b2…bn0 + b1b2…bn
  • イ b1b2…bn00 − 1
  • ウ b1b2…bn000
  • エ b1b2…bn1

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

答えと解説を見る

正解:ア

覚える知識

左シフトによる2のべき乗倍と加算

2進数をkビット左シフトすると2^k倍になり、3倍は2倍と1倍の和で表せる。

この問題で必要なこと

2進数の1ビット左シフトは2倍になる。3倍は「2倍+1倍」なので、b1…bn0 と b1…bn を足せばよい。

ひっかけ

末尾に1を付ける(2倍+1)や000を付ける(8倍)など、シフトの倍率を取り違えさせる。

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

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

同じ知識の過去問