今天看avro ,说zig-zag编码 看了半天终于明白。
value hex
0 00
-1 01
1 02
-2 03
2 04
...
-64 7f
64 80 01
...
文档上例子如上面,所以继续编码
那么 -3 的编码是05 3的编码是06,
算法是(n << 1) ^ (n >> 31) 来自
http://code.google.com/apis/protocolbuffers/docs/encoding.html#types
value hex
0 00
-1 01
1 02
-2 03
2 04
...
-64 7f
64 80 01
...
文档上例子如上面,所以继续编码
那么 -3 的编码是05 3的编码是06,
算法是(n << 1) ^ (n >> 31) 来自
http://code.google.com/apis/protocolbuffers/docs/encoding.html#types