反轉一個位元組 和 判斷32位整數二進位中1的個數 的演算法 - todototry的專欄 -...

反轉一個位元組 和 判斷32位整數二進位中1的個數 的演算法 收藏 反轉一個位元組 和 判斷32位整數二進位中1的個數 的演算法 unsigned char reverse8( unsigned char c ){ c = ( c & 0x55 ) << 1 | ( c & 0xAA ) >> 1; c = ( c & 0x33 ) << 2 | ( c & 0xCC ) >> 2; c = ( c & 0x0F ) << 4 | ( c & 0xF0 ) >> 4; return c;}

unsigned long func(unsigned long x){ x = (x & 0x55555555UL) + ((x >> 1) & 0x55555555UL); x = (x & 0x33333333UL) + ((x >> 2) & 0x33333333UL); x = (x & 0x0f0f0f0fUL) + ((x >> 4) & 0x0f0f0f0fUL); x = (x & 0x00ff00ffUL) + ((x >> 8) & 0x00ff00ffUL); x = (x & 0x0000ffffUL) + ((x >> 16) & 0x0000ffffUL); return x;}

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/todototry/archive/2007/04/23/1575900.aspx

你的讚賞是我堅持原創的動力

讚賞共 0 人讚賞
推薦閱讀:

歸秀法:判斷命運層次的高低一定要結合大運看
怎樣判斷雞蛋的新鮮度?五種雞蛋最好不要吃
判斷一個女人愛不愛你(男人必看)
如何判斷你心愛的女人是不是值得你付出?
網路相親中,如何判斷跟你曖昧的人是否靠譜、防止被騙?

TAG:演算法 | 判斷 | 二進位 | 進位 | 算法 | 整數 | 專欄 |