更新时间:2023-04-27 23:45
位示图是利用二进制的一位来表示磁盘中的一个盘块的使用情况。当其值为“0”时,表示对应的盘块空闲;为“1”时,表示已经分配。有的系统把0作为盘块已分配的标记,把“1”作为空闲标志。(它们的本质上是相同的,都是用一位的两种状态标志空闲和已分配两种情况。)磁盘上的所有盘块都有一个二进制位与之对应,这样,由所有盘块所对应的位构成一个集合,称为位示图。
位示图通常可用m*n个位数来构成位示图,并使m*n等于磁盘的总块数。
位示图也可描述为一个二维数组map:
Var map:array of bit;
位示图用于存储空间的分配和回收。
位示图(bitmap)又叫位图,它的最小单元是一个bit。每个bit有两种取值1或0。
位示图是一种非常常用的结构,在索引,数据压缩等方面有广泛应用。
本文介绍了位图的实现方法及其应用场景。
在C/C++中没有位示图这种数据类型,下面我们利用int来实现一个位示图类
每个int有sizeof(int)*8个bit