![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 01.04.2009
Сообщений: 20
|
![]()
Друзья, нужна идея по одной программульке.
Задача состоит в следующем: Работаю с булевыми функциями 5-ти, 6-ти, 7-ми и т.д. переменных, т.е. представляет собой двоичный набор длины 32, 64, 128 и т.д. соответственно. Например, функция 5-ти переменных может быть представлена набором из 32 бит (0101 1110 0001 0110 0100 0000 1000 1111) Над этими наборами выполняются различные функции и проще всего их хранить как бинарный массив. Все было бы хорошо, если б не нужно было вычислять так называемую сложность этих самых функций. По сути сводится к вычислению сложности функции 5-ти переменных, т.е. 32 бита, но для вычисления этой сложности нужно обращаться к специальной библиотеке (читай - массиву) и передавать функции уже не двоичный этот вектор, а значение формата unsigned int. Теперь кратко и по пунктам: 1) необходимо хранить булевые (двоичные) наборы длины 32, 64, 128 и т.д. бит, мне проще всего работать с каждым как с массивом 2) набор длины 32 нужно каким-то образом быстро переводить в unsigned int В связи с вышесказанным вопрос - как лучше хранить эти двоичные вектора и перегонять их в unsigned int? |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,087
|
![]()
На форуме уже про биты поднимались вопросы. Посмотрите на bitset и vector<bool> из библиотеки STL.
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 01.04.2009
Сообщений: 20
|
![]()
да, я как раз поднимал такой вопрос, только сейчас решил поднять его, так скажем, более общё
![]() Вот на вектор тоже смотрел, но возникает вопрос, можно ли этот самый вектор быстро "сконвертировать" к unsigned int? |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 16.08.2008
Сообщений: 276
|
![]()
Почитайте книжку Генри Уоррена "Алгоритмические трюки для программистов". Там вся книжка посвящена быстрой работе с битами
Скачать можно отсюда: PDF - 27мб Или отсюда: DJVU 2.51мб
Искусственный интеллект - фигня по сравнению с естественной глупостью
|
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 01.04.2009
Сообщений: 20
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 01.04.2009
Сообщений: 20
|
![]() |
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,087
|
![]()
а у bitset'a вроде должен быть метод для перевода набора битов в uint?
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
идея, реализация или лень? | Juffin | Свободное общение | 16 | 24.04.2009 21:38 |
Нужна идея | viter.alex | Microsoft Office Word | 13 | 06.02.2009 00:07 |
Нужна резервна копия или автосохранение | Behemoth | Microsoft Office Word | 2 | 29.11.2008 23:42 |
нужна программа или скрипт | Андрей Попов | Фриланс | 1 | 02.09.2007 11:13 |