LEB128 是一个“变长整数”,这意味着如果我们有一个内部有很多零的数字,我们可以节省空间。像下面的例子:
对于特定数字12:
uint32:00000000 00000000 00000000 00001100
leb128: 00001100
varuint32(带填充的 leb128):10000000 10000000 10000000 00001100(0x80 0x80 0x80 0x0b)
引用自官网:
一个 LEB128 可变长度整数,限制为 N 位(即值 [0, 2^N-1]),最多由可能包含填充 0x80 字节的 ceil(N/7) 个字节表示。
我是不是误会了什么?