平成21年春期試験 問64

2進数10110を3倍したものはどれか。

  • 111010
  • 111110
  • 1000010
  • 10110000
正解 問題へ
分野:テクノロジ系
中分類:基礎理論
小分類:離散数学
解法としてはいくつかあるのですが、一度10進数に直して3倍した数値を2進数に戻す方法と、101102を左へ1ビット分シフトさせて101102を足すという方法を説明します。

【一度10進数に直してから2進数に戻す方法】
まず101102を10進数に直します。各桁の重みをつけて足し合わせるので、以下のように求めます。

 24+22+21=16+4+2=22

次にこの10進数22に3を乗じます。

 22×3=66

最後に66を2で素因数分解して2進数に戻します。

【101102を左へ1ビット分シフトさせて101102を足す方法】
2進数にはビット列全体を1ビット左シフトするごとにその値が2倍になる性質がありますので、101102を左シフトさせて1011002とし、これに101102を足すことで3倍になります。
64_2.gif

Pagetop