2のn乗の計算
普通に計算する場合math.Pow(2,n)を用いたり実際に掛け算を行うなどをするが、ビット演算を用いる方法が存在する。今回用いるビット演算はビット列をずらすものである。
<< ビット左シフト
2乗の計算においては<<を用いる。これを用いてビット列を左に動かすことによって、2 のn 乗の計算を行うことが出来る。例を挙げると4は二進数の場合100 であるこれを左に一つずらして後ろにゼロが入ることで1000 になるこれは10 進数では8になる。よって一つビットをずらすことで2 が掛け算が行われたことになる。これを用いて2 のn乗を計算する。
1 << n
//math.Pow(2,n)と同じ結果になる。
// nビット左にシフトが行われる。