バイナリ
2進数の基数は2なので左シフトの操作で桁が繰り上がるということは値が2倍になる。
2倍すれば次に繰り上がる値がわかる。
2進数での値を得たい場合はdecimalを2の累乗の和の形に変換してやる。
$ 4 = 2^2 = 100
$ 16 = 2^4 = 10000
$ 50 = 32 + 16 + 2 = 2^5 + 2^4 + 2 = 110010
$ 2^n-1の値は全てのビットがたった状態である
$ 2^2-1 = 3 = 11
$ 2^{10}-1 = 1023 = 1111111111
コンピュータサイエンスにおいては2の補数の概念が表現に用いられる。 これは最上位ビットが1の場合に負数, 0の場合に正数をそれぞれ表すというもの。
一桁増えるごとに二倍となる為、表現できる範囲は正負共にほぼ等しい。