三進法

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索

三進法(さんしんほう)とは、3(てい)とし、底およびそのを基準にして数を表す方法である。

概要[編集]

任意の正の数は次のように表すことが出来る。

a_N3^N + a_{N-1}3^{N-1} + \cdots +
  a_1 3 + a_0 + {a_{-1}\over 3} + {a_{-2}\over 3^2} + \cdots

am は0,1,2のどれか)このとき、

a_Na_{N-1}\ldots a_1a_0.a_{-1}a_{-2}\ldots

と書くのが三進法である。

演算[編集]

十進法と同様の計算を行う。加算及び乗算の結果は次のようになる。

加算
  0 1 2
0 0 1 2
1 1 2 10
2 2 10 11
乗算
  0 1 2
0 0 0 0
1 0 1 2
2 0 2 11

減算除算は十進法と同様であり、加算及び乗算の結果を知っていれば計算できると思われるので省略する。

経済性[編集]

e進法」参照

コンピュータなどの計算機械で、N進記法でひとケタを表現・記憶するコストがNに比例すると仮定する。すると、最大値Mまでを表現・記憶できるようにするためのコストは、ひとケタぶんのコストに必要な桁数を掛けたものとなり、具体的には N × logNM である。この値が極小になるのはNネイピア数eの時であるが、e進法は通常の数の表現には全く適さない。前後の整数では、2進と4進の場合が同じで、3進の場合が若干だが小さな値となる。よって前述の仮定の下では3進法の採用が最も経済的ということになるが、3値素子といったようなものは、特に電子的には2値素子の扱いやすさとは比べるべくもなく、稀である。

平衡三進法[編集]

amの値を-1,0,1とする方法である。負の数も表せるため便利であるが、日常使う十進法と勝手が違うためあまり使用されていない。ここでは-1を\bar{1}と表示することとする。この表記法は天秤で1g,3g,9g,27gの分銅を用いて1~40gのものの重さを量る方法とよく似ている。

演算[編集]

平衡三進法では通常と若干違う演算が必要である。加算、乗算の結果は次のようになる。

加算
  \bar{1} 0 1
\bar{1} \bar{1}1 \bar{1} 0
0 \bar{1} 0 1
1 0 1 1\bar{1}
乗算
  \bar{1} 0 1
\bar{1} 1 0 \bar{1}
0 0 0 0
1 \bar{1} 0 1

上の位に影響を及ぼすのは加算の2つだけである。二進と同様に乗算では上の位に影響を及ぼさない。減算は複雑そうに思えるが、加算の結果を知っていれば難しくない。減算では\bar{1}1を入れ替えたものを加算する方法も有効である。ただし、除算は厄介である。

それぞれの表記[編集]

十進表記 三進表記 平衡三進法
正の数 負の数
0 0 0
1 1 1 \bar{1}
2 2 1\bar{1} \bar{1}1
3 10 10 \bar{1}0
4 11 11 \bar{1}\bar{1}
5 12 1\bar{1}\bar{1} \bar{1}11
6 20 1\bar{1}0 \bar{1}10
7 21 1\bar{1}1 \bar{1}1 \bar{1}
8 22 10\bar{1} \bar{1}01
9 100 100 \bar{1}00

関連項目[編集]

参考文献[編集]

ヘンリー・S・ウォーレン、ジュニア『ハッカーのたのしみ』 ISBN 4434046683