字节对齐的方式

(nsize + 4096) & ~4096 
  • size + 4095:首先将 size 加上 4095,这样就可以确保在原本的 size 基础上,至少增加了4095个字节。

  • & ~4095:然后使用按位与操作符 & 结合取反操作 ~,这样会将 size + 4095 的结果向下舍入到最接近的4096的整数倍。这是因为4095的二进制表示是11111111111,取反后为00000000000,所以与操作会将 size + 4095 中的低12位都置为0,实现了向下舍入到4096的效果。

这种技巧在计算机内存管理中常用于确保数据结构或者内存块按照某个特定的字节对齐方式进行分配,通常是为了提高存取效率或与硬件的要求对齐


posted on 2024-02-01 11:17  对我不好  阅读(19)  评论(0编辑  收藏  举报

导航