Wikiwand AI

三十二進法

From Wikipedia, the free encyclopedia

三十二進法(さんじゅうにしんほう)とは、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ɨ̀
閉じる

関連項目

参考文献

Related Articles

Timelines

Top Qs

Fact Checks