求大於等於某個數的最小的二次冪

 鄭鋼的《自制編程語言》中的一段代碼:

uint32_t ceilToPowerOf2(uint32_t v) {
   v += (v == 0);  
   v--;
   v |= v >> 1;
   v |= v >> 2;
   v |= v >> 4;
   v |= v >> 8;
   v |= v >> 16;
   v++;
   return v;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章