Mam zapisane dane zawierające wektor sekwencji bitowych, które chciałbym ponownie zorganizować wydajnie. Jedna wartość w wektorze danych może wyglądać następująco:Efektywne tasowanie bitów wektora liczb binarnych
bit0, bit1, bit2, ... bit7
chciałbym ponownie zorganizować ten bit-sekwencja w tej kolejności:
bit0, bit7, bit1, bit6, bit2, bit5, bit3, bit4
Gdybym miał tylko jedną wartość ta będzie działać ładnie przez:
sum(uint32(bitset(0,1:8,bitget(uint32(X), [1 8 2 7 3 6 4 5]))))
Niestety bitset i bitget nie są w stanie obsługiwać wektorów sekwencji bitowych. Ponieważ mam dość duży zbiór danych, interesują mnie skuteczne rozwiązania.
Każda pomoc będzie doceniona, dzięki!
można podać przykładowe dane wejściowe i wyjściowe w dokładny format (można zrobić to mały wektor słownie tylko 3 próbki) – Dan