我记得听说有时计算机会以有趣的方式保存图像。例如,一个图像,其中一些相邻的像素具有相同的确切颜色,然后它们被存储为接下来的 30 个或一些像素都是“红色”的信息,而不是说每个像素都具有我们所知的值红色。
有时您会下载千兆字节大小的大型程序,但以 900 kb 文件开头。我想这些只是将您连接到 ftp 的工具,它通常会为您提供一些数据。
那么,如果我们不需要立即访问信息,比如长期存储,为什么我们不能将千兆字节的信息存储为千字节呢?
举这个例子,程序被要求压缩一个大小为 1024 KB 的文件。用于压缩此信息的程序检测到内存中的字节仅形成 {1,0,0,1,0,0,...} 的模式。该程序创建一个算法,如果被要求解压缩信息并存储该模式应占用的内存长度,它可以在以后识别该算法。原来信息占用的数据现在少了很多。
如果所需的算法太复杂而无法压缩整个文件,也许计算机可以将数据分成不同的算法,以便在要求解压缩时输出更小长度的数据。
这是压缩数据的现实方法吗?我认为这可能已经被使用,因为有时我会看到一个程序,例如 Windows 7,“扩展”数据。这是程序真正在做什么吗?