数値を2進数で表すレジスタがある。 このレジスタに格納されている正の整数x を10倍にする操作はどれか。 ここで、桁あふれは起こらないものとする。
答え ア
【解説】 シフト演算は左に1ビットシフトすると値を2倍することになり、2ビット左にシフトすると値を4倍にすることになる。 したがって、値を10倍にするには、x を2ビット左にシフトして4倍にした値にx を加算し5倍にし、更に1ビット左にシフトして10倍にします。
【キーワード】 ・シフト ・あふれ
戻る 一覧へ 次へ