Base36

フリー百科事典ウィキペディアより
ナビゲーションにジャンプ 検索にジャンプ

Base36は、基数-36 表現に変換することによってバイナリ データASCII文字列形式で表すバイナリからテキストへのエンコードスキームです。36 という選択は、アラビア数字0 ~ 9 とラテン文字A ~ Z [1] ( ISO 基本ラテン アルファベット)を使用して数字を表すことができるという点で便利です。

base36 の各数字を表すには、6 ビット未満の情報が必要です。

変換

符号付き32ビットおよび64ビット 整数は、それぞれ最大で 6 または 13 の base - 36 桁しか保持できません (その多くの base-36 桁が 32 ビットおよび 64 ビット整数をオーバーフローする可能性があります)。たとえば、「 9223372036854775807 」の 64 ビット符号付き整数の最大値は base-36 では1Y2P0IJ32E8E7 」です。同様に、「 2147483647 」の 32 ビット符号付き整数の最大値は、base-36 では ZIK0ZJ 」です。

標準実装

Common Lisp標準 (ANSI INCITS 226-1994) では、次のような関数parse-integer2 から 36 の基数をサポートしています。 [2]

Java SEは、文字列と 2 から 36 までの異なる基数への変換をサポートしています。たとえば、[1][2] です。

Javaと同様に、JavaScriptも String から 2 から 36 までの異なる基数への変換をサポートしています。[3]

PHPは、Java と同様に、2 から 36 までの異なる基数への String との間の変換をサポートしています。PHP 4 以降で利用可能なbase_convert関数を使用してください。

Goは、組み込みのstrconv.FormatInt(), およびstrconv.FormatUint()関数[3] [4]strconv.ParseInt()を使用した 2 から 36 までの異なる基数への文字列への変換と、組み込みの ,および関数を使用した 2 から 36 までの異なる基数でエンコードされた文字列からの変換をサポートしていstrconv.ParseUint()ます。[5] [6]

Pythonでは、基数 2 から基数 36 への文字列の変換が可能です。 [7]

も参照

参考文献

  1. ^ ホープ、パコ; Walther, Ben (2008), Web Security Testing Cookbook , Sebastopol, CA: O'Reilly Media, Inc., ISBN 978-0-596-51483-9
  2. ^ "Common Lisp HyperSpec" . LispWorks . 2022年8月3日閲覧
  3. ^ "Strconv パッケージ - strconv - PKG.go.dev" .
  4. ^ "Strconv パッケージ - strconv - PKG.go.dev" .
  5. ^ "Strconv パッケージ - strconv - PKG.go.dev" .
  6. ^ "Strconv パッケージ - strconv - PKG.go.dev" .
  7. ^ "組み込み関数 — Python 3.10.0 ドキュメント" .

外部リンク