統計unsigned int 二進制1的個數!

unsigned int GetBinaryCount(unsigned int u)   
{   
	u = ((u&0x55555555) + ((u>>1)&0x55555555));   
	u = ((u&0x33333333) + ((u>>2)&0x33333333));   
	u = ((u&0x0f0f0f0f) + ((u>>4)&0x0f0f0f0f));   
	u = ((u&0x00ff00ff) + ((u>>8)&0x00ff00ff));   
	u = ( u&0x0000ffff) + (u>>16);   
	return u;   
}  


 

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