我正在寻找一种有效的C语言中按位转置8字节数据的算法。我的意思与此的是,如果我有8个字节这样的:8位字节的按位转置
00011100
00111000
00000001
00000000
11000000
00000000
11111111
01010101
我希望得到以下8个字节:
00001010
00001011
01000010
11000011
11000010
10000011
00000010
00100011
而且因为我想用这个嵌入式平台上,它应该尽可能快:-)
所有想法都非常感谢!
这是什么意思?我没有看到输入与所需输出之间的关系。你想使用一个简单的(256字节)查找表吗? – 2010-02-11 11:19:25
@Richard:这是一个矩阵转置;行成为列,反之亦然。如果您读取结果的最左边一列,则它等于输入的第一行。由于有64个独立的输入位,查询表变得很大。 – unwind 2010-02-11 11:22:36
列正在变为行,反之亦然。 – tur1ng 2010-02-11 11:23:00