hi pracuję nad czymś, co wymaga ode mnie dostępu do określonego/zakresu bitów. zdecydowałem się użyć bitset, ponieważ łatwo jest uzyskać dostęp do konkretnych bitów, ale czy mogę wydobyć cały zakres bitów?w zestawie bitów, czy mogę użyć "to_ulong" dla określonego zakresu bitów?
11
A
Odpowiedz
9
Metoda A:
return (the_bitset >> start_bit).to_ulong();
Metoda B (szybciej niż metoda A przez 100 razy na moim komputerze):
unsigned long mask = 1;
unsigned long result = 0;
for (size_t i = start_bit; i < end_bit; ++ i) {
if (the_bitset.test(i))
result |= mask;
mask <<= 1;
}
return result;
+0
'operator []' powinien być jeszcze szybszy, ponieważ nie sprawdza granic, jak w 'test()'. –
Powiązane problemy
- 1. Jak skonwertować podzestaw zakresu bitów w zestawie bitów C++ na liczbę?
- 2. manipulacja bitami: usuwanie zakresu bitów
- 3. Przesunięcie bitów w lewo i odrzucenie bitów
- 4. Rozmiar woluminu 8 bitów lub 16 bitów?
- 5. Nadpisywanie zakresu bitów w liczbie całkowitej w sposób ogólny
- 6. Jak przekonwertować 8 bitów na 16 bitów w VHDL?
- 7. Którą implementację zestawu bitów należy użyć dla uzyskania maksymalnej wydajności?
- 8. 7-bitów do 0xEF
- 9. Ustawienie bitów w Ansi C
- 10. algorytm za generowaniem tabeli wyszukiwania bitów wstecznych (8 bitów)
- 11. bitów maskowania Pythona
- 12. Budynek zlib libz.a dla 32 bitów
- 13. Przesuwanie zestawu bitów Java
- 14. Metaprogram do zliczania bitów
- 15. Porównanie bitowe bitów w Javie
- 16. Ile bitów ma postać?
- 17. Wyczyść dolne 16 bitów
- 18. $ rozmiar, $ bitów, verilog
- 19. Projektowanie strumienia bitów w C#
- 20. Bitowe obliczanie i detekcja bitów
- 21. Windows 7 64 bity niepoprawna ścieżka podczas ładowania biblioteki 32 bitów dla 32 bitów exe
- 22. Liczba bitów reprezentujących liczby ujemne
- 23. Przesuwanie bitów w szybkiej ogólnej funkcji
- 24. C++ pola bitów i -Wconversion
- 25. Zmienne każda para bitów w bajcie
- 26. Przykładowy zestaw bitów Java Przykład
- 27. Jak utworzyć tablicę bitów w Pythonie?
- 28. Uzyskaj długość bitów użytych w int
- 29. Czy można obciąć skrót SHA256 na 128 bitów?
- 30. Precyzyjna kontrola bitów tekstur w GLSL
Możesz chcieć zaakceptować daną odpowiedź. –