@Charon 算术编码的C语言实现 你好!算术编码程序要求可以输入信源符号,可以自定义信号流,输出编码并解码。 算术编码原理 假设有一段数据需要编码,统计里面所有的字符和出现的次数。 将区间 [0,1) 连续划分成多个子区间,每个子区间代表一个上述字符, 区间的大小正比于这个字符在文中出现的概率 。概率越大,则区间越大。所有的子区间加起来正好是 [0,1) 。 输入编码所用的信源符号及其概率。其中,信源符号、概率和编码区间如图2.1所示: 编码从一个初始区间 [0,1) 开始,设置如图2.2: 不断读入原始数据的字符,找到这个字符所在的区间,比如,如图2.3更新: 最后将得到的区间