二五進法

は、2と5をとし、底およびその冪を基準にして十進法の一桁を表す方法である。

数列
二・五進法は、桁上がりが通常のN進法とは異なり、桁上がりが五と十の二段階になる。

以下に、二・五進法と、五が絡むN進法である六進法（5＋1 = 10）と十進法（5＋5 = 10）との数列の差異を表記する。

+ 零から二十まで二・五進法 六進法十進法0001112223334441055111061211713128141391:0014101:0115111:0220121:0321131:0422141:1023151:1124161:1225171:1330181:1431192:003220

+ 二十一から四十まで二・五進法 六進法十進法2:0133212:0234222:0335232:0440242:1041252:1142262:1243272:1344282:1445293:0050303:0151313:0252323:0353333:0454343:1055353:11100363:12101373:13102383:14103394:0010440

+ 五十前後と百前後二・五進法 六進法十進法4:10113454:11114464:12115474:13120484:141214910:001225010:011235110:021245210:031255310:041305414:112409614:122419714:132429814:14243991:00:002441001:00:012451011:00:02250102

+ 二百十六前後二・五進法 六進法十進法2:00:145452092:01:005502102:01:015512112:01:025522122:01:035532132:01:045542142:01:105552152:01:1110002162:01:1210012172:01:1310022182:01:1410032192:02:001004220

+ 五百前後二・五進法 六進法十進法4:14:0421424944:14:1021434954:14:1121444964:14:1221454974:14:1321504984:14:14215149910:00:00215250010:00:01215350110:00:02215450210:00:03215550310:00:04220050410:00:102201505

+ 6前後二・五進法 六進法十進法12:12:11:1455545776912:12:12:0055550777012:12:12:0155551777112:12:12:0255552777212:12:12:0355553777312:12:12:0455554777412:12:12:1055555777512:12:12:11100000777612:12:12:12100001777712:12:12:13100002777812:12:12:14100003777912:12:13:001000047780

表記例として、実際のローマ数字（二・五進法）と、ローマ数字を六進法と十進法に当て嵌めた場合の差異を表記する。減算則は適用しない。

 1:12:12(二・五進法) = 453(六進法) = 177(十進法)
 二・五進法：CLXXVII
 六進法：XXXXVVVVVIII　（6 = X、6 = V）
 十進法：CXXXXXXXIIIIIII （A = C、A = X となり、50はXが5個、5もIが5個のまま）
 1:14:03:11(二・五進法) = 12544(六進法) = 1936(十進法)
 二・五進法：MCMXXXVI
 六進法：MCCXXXXXVVVVIIII （6 = M、6 = C）
 十進法：MCCCCCCCCCXXXIIIIII （A = M となり、500はCが5個のまま）

 コンピュータ 

初期のコンピュータにおいて、ディジタル回路で直接十進法で数を扱う方法の一つとして使われた。基本となる考え方としてはそろばんと同じである。

具体的な実装方法は多岐にわたるが、ここでは一例として最上位ビットを5、そして最下位ビットに向って4、2、1という重みを与えた4ビットで0から9までのビット列を、二進数と比較しながら示す。

十進数 二・五進法 二進数00 000000010 001000120 010001030 011001140 100010051 000010161 001011071 010011181 011100091 1001001

2桁以上については、通常の十進表現と同様に、これを複数桁並べ十の冪の重みを与える。

別のやり方として、リレー式計算機 FACOM 128 では次のような7ビットによる表現が実際に用いられた。下位5ビットは十進法の0から4に一対一で対応し、上位2ビットで5の重みを表現する。冗長な符号構成だが、2倍・5倍・10倍が簡単に求められるので3増し符号よりも高速に乗算できた。また、2/7 の定比率符号（常に7ビットのうち2ビットが1、他は0）なので誤り検出ができ、計算機の信頼性向上に繋がったリレーによる演算回路は、リレーの接触不良により誤った解を出力することが多かったので、符号の冗長性を利用した自己検査機能を持たせ、誤った解が出力されることを防いだ。。

十進数 二・五進法 二進数001 000010000101 000100001201 001000010301 010000011401 100000100510 000010101610 000100110710 001000111810 010001000910 100001001

ここで示した方法はあくまで一例であり、特に下位3ビットで0～4を表す方法は他にもいろいろありうる。

 パック十進数との変換 

 4bit長の二進数(ニブル)に対し、5以上であれば3を足す処理は、パック10進数を二五進数に変換する処理に等しい。

 4bit長の二五進数が連続してレイアウトされたレジスタを考える。このレジスタを左シフトして得られるビットパターンは、二五進数による元の値を二倍してパック10進数で表したものと等しい。

0001_0100_0011_1010　(二五進数で1437)

 (左シフト) 

0010_1000_0111_0100　(パック10進数で2874)

 上記の操作の反復により二進数を十進数へと高速に変換するアルゴリズムは、「」と呼ばれており、除算を伴わない高速な基数変換アルゴリズムとして知られている。

 その他 
アバカス、特に日本の近代以降の四つ珠のそろばんは一種の二・五進法である。日本最初の、また独自に開発された手回し式計算機である矢頭良一の自働算盤は、他の同様の計算機は多くが「出入り歯車式」であるが、矢頭のものは独特の横移動式で、その操作の際に5個の歯をまとめて操作できるようにすることで利用の便を図った、ある種の二・五進法的な入力操作方式であった（そろばんを参考にしたものとも思われている。なお、これは入力についてだけで、機械的には全くの十進方式であり、同機の計算機械としての仕組みにはそろばんは全く無関係である）。

貨幣制度では、発行される硬貨・紙幣の額面は、二・五進法が主流である。例えば日本円では、あまり流通していない二千円紙幣を別にすれば、硬貨と紙幣は「1」と「5」のつく単位なので、

1系金種（一円硬貨・十円硬貨・百円硬貨・千円紙幣・一万円紙幣）は、すぐ上の金種の5分の1、すぐ下の金種の2倍の金額
5系金種（五円硬貨・五十円硬貨・五百円硬貨・五千円紙幣）は、すぐ上の金種の半分、すぐ下の金種の5倍の金額

となっている（海外ではアメリカの25セント硬貨など1系・5系でない硬貨・紙幣が広く一般的に流通している例もある）。

 注 

関連項目
 二進法
 五進法
 六進法
 十進法
 十二進法
 十五進法
 二十進法
 三十進法
 六十進法（桁上がりが複数段階）

Category:コンピュータのデータ
Category:コンピュータの算術
Category:数の表現
Category:広義の記数法
Category:数学に関する記事