tobiuo1990の日記

プログラマになるブログ

2の累乗と10進数での桁数

タイトル通り、2の累乗と10進数表記での桁数の対応を確認する。ただそれだけです。

10進数表記の各桁での最小の2の累乗を以下に列挙します。(10進数で20桁まで) 例外として、31,32,63,64乗についても記載しています。32bitや64bitと符号付32bit整数、符号付64bit整数あたりは気になることが多いと思いますので。

2n 10進数での桁数 10進数での値
0 1 1
4 2 16
7 3 128
10 4 1,024
14 5 16,384
17 6 131,072
20 7 1,048,576
24 8 16,777,216
27 9 134,217,728
30 10 1,073,741,824
31 10 2,147,483,648
32 10 4,294,967,296
34 11 17,179,869,184
37 12 137,438,953,472
40 13 1,099,511,627,776
44 14 17,592,186,044,416
47 15 140,737,488,355,328
50 16 1,125,899,906,842,624
54 17 18,014,398,509,481,984
57 18 144,115,188,075,855,872
60 19 1,152,921,504,606,846,976
63 19 9,223,372,036,854,775,808
64 20 18,446,744,073,709,551,616

こうしてみると、10進数で桁が上がるときの2の指数の1の位は0,4,7の繰り返しなんだな、という謎の気づきがありました。2の3乗が8なので8掛けたら大体一桁上がるけど足りないこともある、ということを考えるとそれはそうだなという感じですが。