Цитата(ps1x @ Aug 27 2006, 23:09)

Как красивее всего сделать перестановку 7 и 8 битов в байте?
Дело в том, что развел и распаял плату и понял что ошибся, а все это заново делать честно говоря лень.
Объясните пожалуйста, как это можно реализовать программно.
В книге "Алгоритмические трюки для программистов" есть разные красивые алгоритмы перестановки, помню взял оттуда бит-реверсию для байта. Выглядело так:
Код
static inline unsigned char BitReverse(unsigned char cByte)
{
int nU = (cByte*0x00020202),
nM = 0x01044010,
nS = nU & nM,
nT = (nU << 2) & (nM << 1);
return ((nS+nT)*0x01001001) >> 24;
}
Насчет 7 и 8-го посмотреть надо.
О том, где можно найти книгу,
здесь.