如何把16位数据压缩为8位?

来源:百度知道 编辑:UC知道 时间:2024/05/14 00:15:49

我给你讲一下压缩的基本原理吧:
所谓数据压缩,实际上指的是把相似的数据用另外一种方式表达。举个例子:"aaaaaaaaaa",如果直接储存,要占10个字节,但是通过观察发现,其实这个字符串里全是"a",那么就可以这样储存:"10a",这样就减短了存储的长度,达到了所谓的“压缩”的要求。再举个例子,"aaaaaaaaaab","aaaaaaaaaac","aaaaaaaaaad","aaaaaaaaaae",如果直接储存,那么就要占44个字节,但是通过观察我们发现,其实这四个字符串的前10个字母都是a,那么就可以这样储存"10ab","10ac","10ad","10ae"。
当然,做这种变换是需要额外的空间来解释10a到底是什么的意思的,不然就会混淆。
所以,单纯的把一个16位数压缩成8位的算法是不存在的,一定要根据上下文来发掘规律。
常见的压缩算法有:LZW,LZ77等,他们的思想和我上面说的是类似的。

没听说过16位压缩为八位。
你以为是压缩机啊,想压成多小就多小

是转换吧