我使用shannon fano算法生成了文件中不同符号的代码。 现在我的问题是我将如何将这些代码存储到文件中(因为文件是以字节为单位),以便在阅读时,读者可以确保在某些时候,它是特定符号的代码结束。因此不会读取额外的代码。
答案 0 :(得分:3)
首先,您可以使用按位运算从字节数组中读取可变数量的位(不是8的倍数)。
其次,如果代码是有效的Prefix code,则满足
there is no valid code word in the system that is a prefix (start) of any other valid code word in the set
然后您可以通过将前缀与表格进行比较来确定代码的结束位置。
通常,这是通过以下方式完成的: