Skip to content

Режим Сжатия 03 — Decimal Integer Packing с v1.0.0

Этот режим сжатия работает с неотрицательными целыми числами в десятичной системе счисления.

Он конвертирует каждую цифру в полубайт (4 бита) и также конвертирует шестнадцатеричные цифры в десятичном виде (кроме 15/F) в полубайты. Это значит, что 10 (A), 11 (B), 12 (C), 13 (D) и 14 (E) — цифры или же одинарные символы, не двойные. 15 рассматривается как две цифры, так как F используется для отступов для того, чтобы выходные данные были корректными в виде UTF-16, то есть на самом деле данный режим сжатия внутренне работает с пятнадцатеричной системой счисления.

Важное уточнение

Данный режим сжатия работает с числами в десятичной системе счисления, не шестнадцатеричной и не пятнадцатеричной. Входные данные должны содержать только следующие символы: 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9.

Как это работает

Таблица кодировки

ЧислоЗакодированное числоДвоичный код
000000
110001
220010
330011
440100
550101
660110
770111
881000
991001
10A1010
11B1011
12C1100
13D1101
14E1110
(отступ)F1111