Кодувальник Varint для Protocol Buffer

Введіть беззнакове ціле число, щоб закодувати його як protobuf varint.

Як користуватися

  1. Введіть свої значення в поля вище.
  2. Натисніть «Обчислити», щоб одразу побачити результат.
  3. Скористайтеся кнопкою «Поділитися», щоб скопіювати посилання на результат.

Про цей калькулятор

Protocol Buffers, двійковий формат серіалізації від Google, кодує цілі числа за допомогою varint за основою 128, щоб заощаджувати місце на малих числах: кожен байт несе 7 біт значення плюс біт «продовження» (старший біт), який встановлюється в 1, якщо далі йдуть байти, і в 0 на останньому байті. Це означає, що малі цілі числа — переважна більшість у реальних повідомленнях protobuf, як-от довжини полів, значення перелічень та ідентифікатори — кодуються лише одним байтом замість чотирьох чи восьми, яких завжди коштувало б ціле число фіксованої ширини, і саме це є причиною, чому повідомлення protobuf лишаються такими компактними в мережі.

Цей калькулятор бере беззнакове ціле число й кодує його в послідовність байтів varint, показуючи кожен байт у шістнадцятковому й двійковому вигляді, щоб ви бачили біти продовження в дії. Бекенд-інженери, що налагоджують проблему формату передавання protobuf, розробники, які пишуть власний парсер чи серіалізатор protobuf без згенерованої бібліотеки, та студенти, що вивчають схеми двійкового кодування, користуються ним, щоб вручну перевірити, чи байтове кодування значення збігається з тим, що видає чи очікує їхній код.

Чи була ця сторінка корисною?

Можна вибрати до 3 реакцій.

Коментарі

  • Залиште перший коментар.

Популярні калькулятори

Усі калькулятори