什么是位图?
位图是从一个系统(例如整数)到位的映射。它也称为位图索引或位数组。
内存被划分为位图的单元。这些单元的范围可以从几个字节到几个千字节。每个内存单元都与位图中的一个位相关联。如果单元被占用,则位为 1;如果单元为空,则位为 0。
位图提供了一种相对简单的方法来跟踪内存,因为位图的大小仅取决于内存的大小和单元的大小。
以下图像阐明了位图的使用:
图像中给出的位图将 1 写入已占用的内存单元,将 0 写入未占用的内存单元。前 5 个单元被 A 占用,位图中的相应条目为 11111。接下来的三个单元为空,因此它们在位图中的条目为 000。之后,6 个单元占用 B。因此,它们在位图中的条目为 111111。以此类推,图像中显示了在位图中为 A、B、C、D 和 E 获得的结果。
位图的关键特性
位图的一些重要特性包括:
- 位图中的单元大小非常重要,应谨慎选择。
- 如果单元大小较小,则位图将更大,因为它将为每个单元保存值 0 或 1。类似地,如果单元大小较大,则位图将更小。
- 单元大小不必太大,因为即使单元大小小到 3 个字节,位图的一个位也可以表示 24 位。
位图的优点
位图非常有用,因为它提供了一种使用少量内存来保存位图表的方式来跟踪内存。位图的大小完全取决于内存的大小以及内存单元的大小。
位图的缺点
如果进程需要占用大小为 'n' 的内存块,则位图中会出现一个主要问题。然后需要在位图中找到一个大小为 'n' 的空位,其中所有值都为零。
广告