小数の基数表現 

■小数の基数表現

基数での表現は整数のみではなく,小数でもできる.

整数と同じく重みという言葉を用い定義する.→基数

n 進数の基数は n であり,小数点第 k 桁の重みは n k となる.

例えば,小数第3位までの n 進小数は

0.ijk =i× n 1 +j× n 2 +k× n 3

( i,j,k は, n 進数で使われる 0n1 までの数)

を意味する.

10進小数0.123では

0.123=1× 10 1 +2× 10 2 +3× 10 3

=1×0.1+2×0.01+3×0.01

である.

■2進小数 

上記の定義より2進小数0.1101は

( 0.1101 ) 2 =1× 2 1 +1× 2 2 +0× 2 3 +1× 2 4

=0.5+0.25+0.0625

なお,10進数との対応を下の表に示す.

10進数 0.50.250.1250.06250.03125
2進数 0.10.010.0010.00010.00001


■2進小数→10進小数 

変換する2進小数の各桁に重みを掛け求める.

【例】

( 0.1011 ) 2 =1× 2 1 +0× 2 2 +1× 2 3 +1× 2 4

=0.5+0.125+0.0625

= ( 0.6875 ) 10

■10進小数→2進小数 

ある10進小数 0. a 1 a 2 a 3 a n を考える. a 1 , a 2 , a 3 ,, a n は1〜9の自然数である.

この10進小数を2進少数に変換すると

0. a 1 a 2 a 3 a n 10 = 0. b 1 b 2 b 3 b n 2  ・・・・・・(1)

となったとする. b 1 , b 2 , b 3 ,, b n は0か1である.

(i)

(1)の両辺を基数表現に直すと

a 1 × 10 1 + a 2 × 10 2 + a 3 × 10 3 ++ a n × 10 n

= b 1 × 2 1 + b 2 × 2 2 + b 3 × 2 3 ++ b n × 2 n  ・・・・・・(2)

(2)の両辺を2倍する.

a 1 × 10 1 +2 a 2 × 10 2 +2 a 3 × 10 3 ++2 a n × 10 n

= b 1 + b 2 × 2 1 + b 3 × 2 2 ++ b n × 2 2  ・・・・・・(3)

(3)の左辺は

0<2 a 1 × 10 1 +2 a 2 × 10 2 +2 a 3 × 10 3 ++2 a n × 10 n <2

となる.よって,(3)の左辺の10進数の整数部は1か0である.ここで,左辺の値が1より大きいなら(ii),1より小さいなら(iii)の操作を行う.

なお(ii)と(iii)の操作後,右辺の小数点以下が0(言い換えると1)となれば(iv)へ.

(ii)

(3)の右辺は b 1 . b 2 b 3 b n 2 となる.

b 1 . b 2 b 3 b n 2 >1

より

b 1 =1

が得られる.

(3)の両辺から1を引いた後、左辺を10進小数に,右辺を2進小数に戻して改めて(1)とし,(i)に戻る.この時,2進小数は 0. b 2 b 3 b n 2 である.

(iii)

(3)の右辺は b 1 . b 2 b 3 b n 2 となる.

0< b 1 . b 2 b 3 b n 2 <1

より

b 1 =0

が得られる.

(3)の左辺を10進小数に,右辺を2進小数に戻して改めて(1)とし,(i)に戻る.この時,2進小数は 0. b 2 b 3 b n 2 である.

(iv)

b 1 b n を小数点以下順番に並べると10進小数を2進小数で表せる.

以下に,計算例を示す.


ホーム>>カテゴリー別分類>>その他>>基数の定義

最終更新日:2023年10月6日