2013-11-12 5 views
0

У меня есть требование выполнить быстрые вычисления в битовом массиве максимум 140 бит. Необходимые операции: побитовое сравнение, побитовые операции (и, или, xor)Эффективный массив бит переменной длины в C#

Каков наиболее эффективный способ использования памяти в C#?

+0

Не имеет значения. Использовать байт []. Если вы хотите такую ​​оптимизацию производительности, используйте C++. – Olivier

+0

«BitArray», по моему опыту, медленнее, чем вы можете легко сделать сами. Кроме того, если вы хотите быстро И, ИЛИ и XOR и т. Д., Лучше использовать более крупные элементы. Тем не менее это может привести к тому, что дополнительное пространство будет потрачено впустую. Так что это компромисс. – harold

ответ

0

После некоторого рассмотрения я буду использовать массив из 18 байтов = 144 бит, потратив 4 бита, и я буду реализовывать заполнение в массиве байтов, чтобы имитировать побитовые операции в базовых 18 байтах.

+1

Итак, вы будете повторно внедрять класс «BitArray»? http://www.codinghorror.com/blog/2009/02/dont-reinvent-the-wheel-unless-you-plan-on-learning-more-about-wheels.html – Gusdor

Смежные вопросы