Перейти к содержимому

Цифровой режим QR (Numeric mode)

Цифровой режим — самый плотный способ кодирования QR: тройки цифр 0–9 упаковываются в 10 бит, что даёт максимум ёмкости для номеров, счётчиков и кодов без единой буквы.

Как упаковываются цифры

Цифровой режим — один из четырёх режимов кодирования QR, рассчитанный строго на символы 0–9. Кодировщик берёт данные тройками и переводит каждую в 10-битное число: «000» становится 0000000000, «999» — 1111100111. Если цифр в остатке две, на них уходит 7 бит, если одна — 4 бита. Экономия против байтового режима, где на символ уходит целых 8 бит, получается кратной: три цифры вместо привычных 24 бит занимают всего 10.

Предел ёмкости

Плотность упаковки напрямую двигает верхнюю границу вместимости символа. В версии 40 — крупнейшем QR размером 177×177 модулей — при самом низком уровне коррекции L цифровой режим вмещает до 7089 цифр. Для сравнения, тот же символ в байтовом режиме потянет заметно меньше символов: ISO-8859-1 отъедает по 8 бит на каждый знак. Реальная ёмкость всегда зависит и от версии символа, и от выбранного уровня коррекции ошибок — чем он выше, тем меньше остаётся места под сами данные.

Когда применять

Режим включается автоматически, если кодировщик видит в строке только цифры: номер заказа, штрих-код, серийник, ИНН, телефон без плюса и скобок, показания счётчика. Как только в строке появляется буква, пробел или спецсимвол — например, дефис в телефонном номере или «₽» в сумме — кодировщик переключается на буквенно-цифровой или байтовый режим, и выигрыш в плотности исчезает. Для действительно длинных чисто цифровых последовательностей это ощутимо: код получается компактнее, с меньшим числом модулей, а значит проще для печати на маленькой этикетке. Собрать и проверить такой код можно в генераторе QR-кодов.

Частые вопросы

Сколько цифр помещается в QR-код?

Максимум — 7089 цифр, но только в версии 40 (177×177 модулей) при самом низком уровне коррекции ошибок L. На практике реальные лимиты ниже: чем выше уровень коррекции и чем меньше версия, тем меньше остаётся места под данные.

Почему цифровой режим экономнее байтового?

Байтовый режим тратит 8 бит на каждый символ. Цифровой берёт цифры тройками и упаковывает каждую тройку в 10 бит — то есть три знака вместо 24 бит занимают 10. На длинных числовых строках это даёт кратную экономию места в символе.

Переключится ли QR в цифровой режим сам, если добавить дефис в номер?

Нет. Дефис, пробел, знак «+» или буква — не входят в алфавит цифрового режима. Как только в строке встречается любой символ помимо 0–9, кодировщик переходит на буквенно-цифровой или байтовый режим, и плотность упаковки падает.

Для каких данных стоит использовать цифровой режим?

Для чисто числовых значений: номеров заказов, серийных номеров, показаний счётчиков, штрих-кодов, ИНН, телефонов без форматирования. Это даёт минимальный размер символа при заданном объёме данных — удобно для мелкой печати на этикетках и бирках.