三十二進法

三十二進法（さんじゅうにしんほう）とは、32 を底（てい）とし、底およびその冪を基準にして数を表す方法である。

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

一般には、0, 1, …, 8, 9, A, B, …, U, V の 32 個の数字を用いる。A から V は、以下の表のとおり、それぞれ十進での 10 から 31 を表す。
 0 0 8 8 16 G 24 O 1 1 9 9 17 H 25 P 2 2 10 A 18 I 26 Q 3 3 11 B 19 J 27 R 4 4 12 C 20 K 28 S 5 5 13 D 21 L 29 T 6 6 14 E 22 M 30 U 7 7 15 F 23 N 31 V
右端あるいは小数点で 1 の桁を表す。数字の意味する数は、左に 1 桁ずれると 32 倍になり、右に 1 桁ずれると 1/32 になる。(21)32 という表記において、左の「2」は六十四を表し、右の「1」は一を表し、合わせて六十五を表す。

同様に、 (50)32 は 5×321 + 0×320 = 160 を表し、 (B4)32 = 11×321 + 4×320 = 356 を意味する。

アルファベットの I と数字の 1 、およびアルファベットの O と数字の 0 が混同し易いために、アルファベットの I と O を用いないことがあり、この場合は以下の表のとおりとなる。
 0 0 8 8 16 G 24 Q 1 1 9 9 17 H 25 R 2 2 10 A 18 J 26 S 3 3 11 B 19 K 27 T 4 4 12 C 20 L 28 U 5 5 13 D 21 M 29 V 6 6 14 E 22 N 30 W 7 7 15 F 23 P 31 X

 コンピュータ 
コンピュータでは二進法が使われるので、底が2の冪である記数法との変換は容易である。このため、一部で三十二進法が使われる。

上記の 0, …, 9, A, …, V を用いるエンコード方式を base32hex と呼ぶ。

 Base32 
Base32 は 40 ビットを 8 文字に変換するエンコード方式である。Base64 と異なり、大文字、小文字の違いが無視される環境においても正しく処理できる。以下に Base32 で用いる文字を示す。O, I と紛らわしい 0, 1 はない。
 0 A 8 I 16 Q 24 Y 1 B 9 J 17 R 25 Z 2 C 10 K 18 S 26 2 3 D 11 L 19 T 27 3 4 E 12 M 20 U 28 4 5 F 13 N 21 V 29 5 6 G 14 O 22 W 30 6 7 H 15 P 23 X 31 7   埋め =
変換後のデータが 8 文字に満たない場合は、 Base64 と同様に「=」で埋める。

 命数法 
三十二進命数法とは、32 を底とする命数法である。

自然言語では、コンゴ民主共和国のが三十二進法の数詞を持つ。内部に四進法を含み、減算も用いる複雑な体系である。

以下にンギティ語の数詞の一部を示す。
 数  数詞 1 atdí 2 ɔyɔ 3 ɨ̀bhʉ 4 ɨ̀fɔ 8 àrʉ̀ 12 otsi 16 ɔpɨ 20 àbà 24 àròtsí 28 àdzòro 32 wǎdhɨ̀ 64 ɔyɔ wǎdhɨ̀ 96 ɨ̀bhʉ wǎdhɨ̀ 128 ɨ̀fɔ wǎdhɨ̀

 関連項目 

 二進法
 四進法
 八進法
 十六進法
 六十四進法

 参考文献 

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