【发布时间】:2011-11-08 22:52:37
【问题描述】:
可能重复:
Best Algorithm for Bit Reversal ( from MSB->LSB to LSB->MSB) in C
我有一个 64 位的字,我想对它做以下操作。
首先我想做一个位交换(交换位 63 和位 0 将第 62 位与第 1 位交换,依此类推)
一旦完成上述操作,我想在字节 0 和字节 7 之间进行字节交换交换 字节 1 和字节 6 以此类推。
现在我们在 gcc linux 中有一个内置函数来执行第二部分 bswap_64()。在 gcc linux C 中是否有任何函数可以执行第一部分
【问题讨论】:
-
没有。但是我们确实有这些称为“操作员”的东西来执行这些操作......
-
为什么你想交换位?无论是 FFT 还是家庭作业,恕我直言。
-
@wildplasser。它既不是 FFT 也不是作业。我已经捕获了一些空闲的 10GE 帧,我正在尝试将它们转换为 XGMII 编码帧。 :)
-
“Dupe”是一个很好的答案,但实际上并不是他的问题的重复。
-
@therefromhere: this answer 完美地解决了这个问题。
标签: c linux bit-manipulation