如何将十进制转换为可变字节代码和伽玛代码

Ada*_*nch 4 binary numbers gamma decimal

如何将十进制数777转换为等效的VB和伽玛代码?

我一直在伽马码.我看到他们从小数点获取一元代码的位置,而不是长度和偏移量来自的位置.我也理解伽马码只是与偏移量连接的(一元码的)长度.

小智 7

二进制代码中的777是1100001001

伽玛代码

  • 计算偏移:删除前1是100001001
  • 计算长度:一元代码中的偏移量(9位)1111111110(九个1和一个0)
  • 把它们放在一起1111111110100001001

VB代码

  • 从二进制代码1100001001获取最后7位是0001001,将1添加为"head"位(0001001 - > 10001001),因为原始二进制代码中仍有3位.
  • 获取剩余的3位,这次使用0作为"head"位(110 - > 00000110),因为原始二进制代码中没有剩余
  • 将这两个字节放在一起0000011010001001是VB代码.

  • '计算长度:一元代码1111111110(九个1和一个0)中多少位偏移(9位)' - >你能解释一下这个吗?我此时迷路了 (2认同)

小智 1

777 二进制代码:1100001001

  • VB代码:(00000110 10001001如果没有完成1第8位,则开始填充7个字节,否则0
  • 伽玛代码:1111111110100001001
  • 抵消:100001001
  • 长度:1111111110

  • 你能解释一下你是怎么做到的吗? (2认同)