二進法と十進法の変換方法と計算例

二進法と十進法について。二進数と十進数を互いに変換する方法と計算例,小数を含む場合についても解説します。

二進法,十進法とは

十進法

  • 0,1,2,3,4,5,6,7,8,9,10,0,1,2,3,4,5,6,7,8,9,10,\cdots と数えていくお馴染みの方式。
  • an10n+an110n1++a1101+a0100a_n10^n+a_{n-1}10^{n-1}+\cdots +a_110^1+a_010^0 という数を anan1a1a0a_na_{n-1}\cdots a_1a_0 と表す。

二進法

  • 0,1,10,11,100,101,110,111,1000,0,1,10,11,100,101,110,111,1000,\cdots と数えていく方式。
  • an2n+an12n1++a121+a020a_n2^n+a_{n-1}2^{n-1}+\cdots +a_12^1+a_02^0 という数を anan1a1a0a_na_{n-1}\cdots a_1a_0 と表す。

100=20=110^0=2^0=1 に注意

※小数を考える場合には a121+a222+a_{-1}2^{-1}+a_{-2}2^{-2}+\cdots という項が続く。

二進法から十進法への変換

二進法から十進法への変換は非常に簡単です。 11 が立っているところに2のベキ乗をかけて足し合わせるだけです。

例題1

二進法で 110101110101 と表される数を十進法で表示せよ。

解答

二進法の定義より,

110101=125+124+023+122+021+120110101=1\cdot 2^5+1\cdot 2^4+0\cdot 2^3+1\cdot 2^2+0\cdot 2^1+1\cdot 2^0

これをいつもの十進法の世界で計算すると,32+16+4+1=5332+16+4+1=53

小数が入っても同じです。

例題2

二進法で 101.011101.011 と表される数を十進法で表示せよ。

解答

二進法の定義より,

101.011=22+20+22+23101.011=2^2+2^0+2^{-2}+2^{-3}

これを十進法の世界で計算すると,4+1+14+18=4384+1+\dfrac{1}{4}+\dfrac{1}{8}=\dfrac{43}{8}

十進法から二進法への変換

十進法から二進法は 与えられた数をひたすら2で割っていき,余りを下から書いていくことで変換できます。(理由は後述)

例題3

十進法で 5353 と表される数を二進法で表示せよ。

解答

二進法への変換

5353 から出発して 22 で割った商を下に,余りを右下に書く。出てきた商に対して同じ操作を繰り返す。商が0になるまでやる。二列目の数字を 下から読むと求める二進法となる。

よって,5353 は二進法では 110101110101

上記の方法でうまくいく理由

例題3で解説した方法でなぜ二進数表示が得られるのか解説します。

解説

例題3の変換操作で6つの式が得られた。一番上の式は,

53=26×2+153=26\times 2+1

この 2626 に上から二つめの式を代入すると,

53=(13×2+0)×2+1=13×22+153=(13\times 2+0)\times 2+1\\ =13\times 2^2+1

この式の 1313 に上から三つ目の式を代入すると,

53=(6×2+1)×22+1=6×23+22+2053=(6\times 2+1)\times 2^2+1\\ =6\times 2^3+2^2+2^0

以下同様な操作を繰り返すことで,結局

53=25+24+22+2053=2^5+2^4+2^2+2^0 という二進数表示を得る。

そして,求めたい係数(00 or 11 )は各操作の余りを(下から)並べたものである。

小数を含む場合

二進法における有限小数は簡単に十進数に変換できました(例題2)。一方, 十進法における有限小数は二進数表示したときに有限小数になるとは限りません。

(例えば十進法の 0.10.1 を二進法で書くと 0.0001100110011000.000110011001100\cdots

ただし,十進法で n2N\dfrac{n}{2^N} と表される数の場合は桁をずらすことで有限小数の二進数で表示できます。

例題4

m=438m=\dfrac{43}{8} を二進数表示せよ。

解答

23m=432^3m=43 は整数なのでさきほどの方法で二進数表示できる。

小数を含む場合

図より 4343 は二進法で 101011101011 なので

23m=25+23+21+202^3m=2^5+2^3+2^1+2^0

よって,m=22+20+22+23m=2^2+2^0+2^{-2}+2^{-3}

となり,mm の二進数表示は 101.011101.011

コメント:

十進数の世界で 10N10^N で割る→小数点を左に NN 桁ずらす

二進数の世界で 2N2^N で割る→小数点を左に NN 桁ずらす

小数と書きたいのに少数と書いてしまうミスに注意。

Tag:数学Aの教科書に載っている公式の解説一覧