admin 管理员组

文章数量: 1184232

static  int fls(int x)  
{  
    int r = 32;  
  
    if (!x)  
        return 0;  
    if (!(x & 0xffff0000u)) {  
        x <<= 16;  
        r -= 16;  
    }  
    if (!(x & 0xff000000u)) {  
        x <<= 8;  
        r -= 8;  
    }  
    if (!(x & 0xf0000000u)) {  
        x <<= 4;  
        r -= 4;  
    }  
    if (!(x & 0xc0000000u)) {  
        x <<= 2;  
        r -= 2;  
    }  
    if (!(x & 0x80000000u)) {  
        x <<= 1;  
        r -= 1;  
    }  
    return r;  
}  

本文标签: find fls significant set bit