Для формата сериализации / протокола я должен кодировать числа без знака до 64-разрядного целого числа без знака в компактном виде, который должен быть прост в реализации (то есть я не ищу специальный алгоритм сжатия).Я думал о следующем:
if n<128
take bits 0..6 for representing n, set overflow bit 7 to 0
store one byte
if n>=128 and n<16384
take bits 0..6 of byte 1 as bits 0..6 of n, set overflow bit 7 of byte 1 to 1
take bits 0..6 of byte 2 as bits 7..13 of n, set overflow bit 7 of byte 2 to 0
store byte 1 followed by byte 2
if n>=16384 and n<2^21
...set overflow bit 7 of byte 2 to 1... (and so on)
У меня есть два вопроса по этому поводу:
Как называется этот формат?Где я могу найти реализации?
Это для двоичного протокола, который будет отправляться через сокеты, где небольшие числа <128 будут отправляться очень часто.Как вы думаете, дополнительная обработка того стоит? </p>