math Alt ←

Статический метод :convert

Конвертирование из одной системы счисления в другую. [3.4.1]

^math:convert[число](исходная_система_счисления;целевая_система_счисления)
^math:convert[число|файл](исходная_система_счисления;целевая_система_счисления)[опции]
^math:convert[число|файл][алфавит](целевая_система_счисления)[опции]
^math:convert[число|файл](исходная_система_счисления)[алфавит][опции]
^math:convert[число|файл][алфавит][алфавит][опции]

Метод преобразует строчное представление числа (в том числе в виде двоичного файла) из одной системы счисления в другую. Система счисления может быть задана алфавитом из как минимум двух символов, числом от 2 (эквивалентно алфавиту 01) до 16 (эквивалентно алфавиту 0123456789ABCDEF), числом 256 (эквивалентно алфавиту из всех ASCII-символов).

Можно задать хеш опций [3.4.6]:

$.format[string|file] — формат результата, по умолчанию — строка.

Поддерживаются числа в диапазоне:

  • 32 бита, до 0xFFFFFFFF;
  • 64 бита, до 0xFFFFFFFFFFFFFFFF; [3.4.4]
  • произвольной разрядности. [3.4.6]

Примеры

^math:convert[255](10;16)

Получаем: FF

^math:convert[A](256;10) / ^math:convert[A](256;16)

Получаем ASCII-код символа A в десятеричном и шестнадцатеричном представлении (65 / 41).

^math:convert[hello](256)[0123456789abcdefghijklmnopqrstuvwxyz]

Получаем представление строки hello в Base36 (5pzcszu7).

^math:convert[5pzcszu7][0123456789abcdefghijklmnopqrstuvwxyz](256)

Декодируем строку hello из ее Base36-представления.