三十二進法
三十二進法(さんじゅうにしんほう)とは、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 と呼ぶ[1]。
Base32
[編集]Base32 は 40 ビットを 8 文字に変換するエンコード方式である[1]。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 を底とする命数法である。
自然言語では、コンゴ民主共和国のンギティ語[2]が三十二進法の数詞を持つ[3]。内部に四進法を含み、減算も用いる複雑な体系である。
以下にンギティ語の数詞の一部を示す。
数 | 数詞 |
---|---|
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ɨ̀ |
関連項目
[編集]参考文献
[編集]- ^ a b Josefsson, S. (2006), RFC [https://datatracker.ietf.org/doc/html/rfc4648 4648], The Internet Society
- ^ Gordon, Raymond G., Jr., ed. (2005), “Ngiti”, Ethnologue: Languages of the World (15 ed.) 2008年6月24日閲覧。
- ^ Hammarström, Harald (2006), “Rarities in Numeral Systems”, Proceedings of Rara & Rarissima Conference