反转顺序位短

时间:2012-05-08 12:43:11

标签: xcode cocoa

Apple的库中是否有一个函数可以在短时间内反转位的顺序?

0000 0011 -> 1100 0000

提前致谢。

使用的方法:

unsigned int  NO_OF_BITS = sizeof(num) * 8;
unsigned int reverse_num = 0;
int i;
for (i = 0; i < NO_OF_BITS; i++)
{
    if((num & (1 << i)))
        reverse_num |= 1 << ((NO_OF_BITS - 1) - i);
}

来源:http://www.geeksforgeeks.org/archives/726

1 个答案:

答案 0 :(得分:3)

听起来你正试图反转给定字节的位序列。

有很多方法可以有效地完成这项工作。看看http://graphics.stanford.edu/~seander/bithacks.html#BitReverseObvious

使用位时,此站点包含许多技巧。