ms是这样的?
int _n = 0;
_n = ((N & 0xAAAAAAAA) >> 1) + (N & 0x55555555);
_n = ((_n & 0xCCCCCCCC) >> 2)) + (_n & 0x33333333);
_n = ((_n & 0xF0F0F0F0) >> 4) + (_n & 0x0F0F0F0F);
_n = ((_n & 0xFF00FF00) >> 8) + (_n & 0x00FF00FF);
_n = ((_n & 0xFFFF0000) >> 16) + (_n & 0000FFFF);
return _n;