小数の基数表現 

■小数の基数表現

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

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

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

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

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

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

を意味する.

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日