我正在阅读这份文件: http: //www.fadden.com/techmisc/hdc/lesson11.htm
他在其中说:
问题是,我们不知道这些时间有多长。因此,我们使用我们首先查看的一元编码对长度进行编码(为清楚起见添加了冒号):
value binary coding 1 1: 2 01:0 3 01:1 4 001:00 5 001:01 16 00001:0000 64 0000001:000000 256 000000001:00000000
这种方法实际上是 floor(log i) 个零,后跟一个 1,然后是没有前导 1 的二进制代码。由于第一部分是一元计数,因此第二部分的每个位都有一个“0”。这意味着我们可以用零散布数据位,如下所示:
value binary coding 1 1 2 001 3 011 4 00001 5 00011 16 000000001 64 0000000000001 256 00000000000000001
这具有相同的长度,但可以使用简单的移位例程来实现(汇编:左移,如果进位设置则退出,否则将下一位移入我们正在形成的整数)。
这个装配偏移到底是什么,它是可逆的,这意味着 00000000000000001 可以在没有额外数据的情况下回到 00000000100000000 吗?
装配班次的动画会很棒。谢谢