1.压缩文件的用途与技术
- 你是否有过文件太大,导致无法以正常的E-mail方式发送?
- 又或学校、厂商要求使用CD或DVD来做数据归档之用,但是你的单一文件却都比这些传统的一次性存储媒介还要大,那怎么分成多块来刻录?
- 还有,你是否有过要备份某些重要数据,偏偏这些数据量太大,使用了你很多的磁盘空间?
这个时候,这个好用的文件压缩技术可就派的上用场了。
这些比较大型的文件通过所谓的文件压缩技术之后,可以将它的磁盘使用量降低,从而达到降低文件容量的效果。此外,有的压缩程序还可以进行容量限制,使一个大型文件可以划分成为数个小型文件,以方便携带。
那么什么是文件压缩呢?
我们来稍微谈一谈它的原理,目前我们使用的计算机系统中都是使用所谓的字节单位来计量。不过,事实上,计算机最小的计量单位应该是bit才对,此外,我们也知道1Byte=8bit,但是如果今天我们只是记忆一个数字,即1这个数字?它会如何记录?
假设一个字节可以看成八个空格,由于1B=8bit,所以每个字节当中会有8个空格,而每个空格可以是0、1,由于我们记录数字是1,考虑计算机所谓的二进制,如此一来,1会在最右边占据1个位,而其他的7个位将会自动地被填上0。
你看看,其实在这样的例子中,那7个位应该是空的才对。不过,为了要满足目前我们的操作系统数据的读写,所以就会将该数据转为字节的形式来记录。
而一些聪明的计算机工程师就利用一些复杂的计算方式,将这些没有使用到的空间【丢】出来,以让文件占用的空间变小,这就是压缩的技术。
另外一种压缩技术也很有趣,它是将重复的数据进行统计记录。举例来说,如果你的数据为【111……】共有100个1时,那么压缩技术会记录为【100个1】而不是真的有100个1的位存在。这样也能够精简文件记录的容量,非常有趣吧!
简单地说,你可以将它想成,其实文件里面有相当多的空间存在,并不是完全填满的,而压缩的技术就是将这些空间填满,以让整个文件占用的容量下降。
不过,这些压缩过的文件并无法直接被我们的操作系统所使用,因此,若要使用这些被压缩过的文件数据,则必须将它还原回来未压缩前的模样,那就是所谓的解压缩。
而至于压缩后与压缩的文件所占用的磁盘空间大小,就可以被称为是压缩比,
这个压缩与解压缩的操作有什么好处呢?
最大的好处就是压缩过的文件容量变小了,所以你的硬盘容量无形之中就可以容纳更多的数据。
此外,在一些网络数据的传输中,也会由于数据量的降低,好让网络带宽可以用来做更多的工作,而不是老卡在一些大型的文件传输上面,目前很多的WWW网站也是利用文件压缩的技术来进行数据的传送,好让网站带宽的利用率上升。
上述的WWW网站压缩技术蛮有趣的,它让你网站上面看得到的数据在经过网络传输时,使用的是压缩过的数据,等到这些压缩过的数据到达你的计算机主机时,再进行解压缩,由于目前的计算机命令周期相当快速,因此其实在网页浏览的时候,时间都是花在数据的传输上面,而不是CPU的运算,如此一来,由于压缩过的数据量降低了,自然传输的速度就会变快不少。
若你是一位软件工程师,那么相信你也会喜欢将你自己的软件压缩之后提供大家下载来使用,毕竟没有人喜欢自己的网站天天都是带宽满载的吧?