三十六進法

三十六進法（さんじゅうろくしんほう）とは、36を底（てい）とし、底およびその冪を基準にして数を表す方法である。底である 36 は Microsoft Excel の BASE 関数や、Python の拡張モジュール・NumPy の base_repr 関数の基数パラメータに指定できる最大値である。

記数法 
三十六進記数法とは、36 を底とする位取り記数法である。慣用に従い、通常のアラビア数字は十進数とし、三十六進記数法の表記は括弧および下付の 36 で表す。三十六進記数法で表された数を三十六進数と呼ぶ。

一般には、0, 1, …, 8, 9（アラビア数字、10種類）および、A - Z（ISO基本ラテンアルファベット、26種類）の合計36種類の文字で数値を表わす。
A - Z は、それぞれ十進法での 10 - 35 を表す。下表の値は Microsoft Excel の BASE 関数の実行結果に準拠する。

右端あるいは小数点で、一の桁を表す。数字の意味する数は、左に一桁ずれると三十六倍になり、右に一桁ずれると三十六分の一になる。(24)36 という表記において、左の「2」は 七十二 を表し、右の「4」は 四 を表し、合わせて 七十六 を表す。

同様に、(M0)36 は 22×361 + 0×360 = 七百九十二 を表し、(B7)36 = 11×361 + 7×360 = 四百三 を表す。

アルファベットの I と数字の 1 、およびアルファベットの O と数字の 0 は混同しやすいため、筆記の場合は、斜線付きゼロを使うなど工夫が必要である。また、印字の場合でも、区別が付きにくいフォントの使用を避ける必要がある。

1296で100となる。

六進表記から三十六進表記への変換 
三十六進法は、単に「数字とアルファベットをすべて使った表記法」という以外に、以下の表のとおり、六進法による表記の二桁を一桁で表現できるという特長を有する。

六進表記から三十六進表記に変換する方法を、以下に示す。

整数部分 
 六進表記を右から順に二桁ずつ区切る。最後（最左部分）が二桁未満のときは、空いた部分（左側）には全て0があるとみなす。
 (34152)6 → (3, 41, 52)6 → (03, 41, 52)6
 各部分を三十六進表記に変換する。
 (03)6 = (3)36 , (41)6 = (P)36 , (52)6 = (W)36
 得られた三十六進表記を並べて (3PW)36 が得られる。

この方法は桁数に拘らず通用する。例えば、(502145010321413)6 は (05, 02, 14, 50, 10, 32, 14, 13)6 であるから、(52AU6KA9)36 となる。

小数部分 
小数部分の変換方法は、次のとおり。
 六進表記を小数点を基準にして左から順に二桁ずつ区切る。最後（最右部分）が二桁未満のときは、空いた部分（右側）には全て0があるとみなす。
 (0.1203512)6 → (0., 12, 03, 51, 2)6 → (0., 12, 03, 51, 20)6
 各部分を三十六進表記に変換する。
 (12)6 = (8)36 , (03)6 = (3)36 , (51)6 = (V)36 , (20)6 = (C)36
得られた三十六進表記を並べて (0.83VC)36 が得られる。

したがって、(34152.1203512)6 = (3PW.83VC)36 である。この方法は桁数に関わらず通用する。

関連項目

 二進法
 三進法
 四進法
 六進法
 八進法
 九進法
 十二進法
 十八進法
 二十四進法

脚注

外部リンク 
 Line Segment 36進数←→10進数変換

数の表現
数学に関する記事
位取り記数法