5

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

我一直在阅读伽玛代码。我看到他们从十进制中获得一元代码,但看不到长度和偏移量的来源。我也明白伽玛代码只是与偏移量连接的(一元代码的)长度。

4

2 回答 2

8

777的二进制码是1100001001

伽马码

  • 计算偏移量:去掉第一个1是100001001
  • 计算长度:一元码1111111110中有多少位偏移(9 位)(九个 1 和一个 0)
  • 把它们放在一起1111111110100001001

VB代码

  • 从二进制代码1100001001中获取最后七位是0001001,添加 1 作为“头”位(0001001 -> 10001001),因为原始二进制代码中还剩下 3 位。
  • 获取剩余的 3 位,这次使用 0 作为“头”位(110 -> 00000110),因为原始二进制代码中没有余数
  • 把这两个字节放在一起0000011010001001就是VB代码。

本质上,VB代码将间隙(二进制)分成7位分区,并将最后/最右7位部分的延续位/第1位设置为1,将所有其他部分的延续位设置为0。


于 2015-01-02T04:43:15.887 回答
1

777的二进制代码:1100001001

  • VB代码:(00000110 10001001如果你没有完成1第8位,则开始填充7个字节0
  • 伽玛代码:1111111110100001001
  • 抵消:100001001
  • 长度:1111111110
于 2012-11-30T15:39:51.710 回答