ブログの説明

学校に通わないで学んだことを記しています。間違っているところが何かありましたらご指摘下さると幸いです。コメントに対する返信が遅れる可能性があります。その場合は申し訳ありません。

このブログではサイドバーに広告を表示しています。このブログ内の投稿記事を検索するには右上の拡大鏡のアイコンを、アーカイブやラベル付けから投稿記事を閲覧するには左上の三重線のアイコンをクリックして下さい。

数式の表示にはMathJaxを利用させていただいています。数式の表示のためにJavaScriptが有効である必要があります。そうでない場合、訳の分からないLatexのコードが表示されます。幾何学図形やチャートの表示にはHTML5 CanvasやGoogle Chartを使用しています。その表示のためにもJavaScriptが有効である必要があります。

2進数の桁数(ビット数)で表すことができる数の個数

1桁の2進数で表すことができる数の個数は0と1、つまり合計2個。ちなみに10進数の1桁で表すことができる数の個数は、0から9まで数えて合計10個。

2進数2桁で表すことができる数の個数は、0, 1, 10, 11なので合計4個。2進数3桁で表すことができる数の個数は、0, 1, 10, 11, 100, 101, 110, 111なので合計8個。

一般に、桁数で表すことができる数の個数は、その進法の基数の桁数乗。基数というのは2進法ならば2のこと、10進法ならば10のこと、16進法ならば16のこと。

\[ 表現できる数の個数 = 基数^{桁数} \]

例えば、2桁の10進数で表すことができる数の個数は、 \[ \begin{align} 10^2 &= 10 \times 10 \\ &= 100 \end{align} \] と計算されて100個となり、4桁の2進数で表すことができる数の個数は、 \[ \begin{align} 2^4 &= 2 \times 2 \times 2 \times 2 \\ &= 16 \end{align} \]と計算されて16個となる。

2進数の桁数とそれが表すことができる値の個数を表にしてみた。2進法では桁数はビット数に等しいのでビット数と言い換えてみた。累乗の単位元が1であるので、2の1乗が2になることに要注意。

ビット数と値域の対応表
ビット数 値の個数
1ビット \(2^1=2\)個
2ビット \(2^2=4\)個
3ビット \(2^3=8\)個
4ビット \(2^4=16\)個
5ビット \(2^5=32\)個
6ビット \(2^6=64\)個
7ビット \(2^7=128\)個
8ビット \(2^8=256\)個
9ビット \(2^9=512\)個
10ビット \(2^{10}=1024\)個
16ビット \(2^{16}=65536\)個
20ビット \(2^{20}=1048576\)個
24ビット \(2^{24}=16777216\)個
32ビット \(2^{32}=4294967296\)個
64ビット \(2^{64}=1.844674 \times 10^{19}\)個

8ビットは1バイトとも呼ばれ、コンピュータのメモリは通常、8ビット = 1バイトを1つの単位にしている。

コメント

このブログの人気の投稿

LATEXで数式:指数と順列などで使う添数・添字

10の補数と9の補数と2の補数と1の補数

Visual Studio 2019にはC++のためのフォームデザイナーがない件