Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.06.2009, 10:50   #1
Molotoff
Пользователь
 
Регистрация: 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?
Molotoff вне форума Ответить с цитированием
Старый 25.06.2009, 12:36   #2
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

На форуме уже про биты поднимались вопросы. Посмотрите на bitset и vector<bool> из библиотеки STL.
pu4koff вне форума Ответить с цитированием
Старый 25.06.2009, 13:11   #3
Molotoff
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 20
По умолчанию

да, я как раз поднимал такой вопрос, только сейчас решил поднять его, так скажем, более общё
Вот на вектор тоже смотрел, но возникает вопрос, можно ли этот самый вектор быстро "сконвертировать" к unsigned int?
Molotoff вне форума Ответить с цитированием
Старый 25.06.2009, 14:14   #4
Impuls1989
Форумчанин
 
Аватар для Impuls1989
 
Регистрация: 16.08.2008
Сообщений: 276
По умолчанию

Почитайте книжку Генри Уоррена "Алгоритмические трюки для программистов". Там вся книжка посвящена быстрой работе с битами
Скачать можно отсюда:
PDF - 27мб
Или отсюда:
DJVU 2.51мб
Искусственный интеллект - фигня по сравнению с естественной глупостью
Impuls1989 вне форума Ответить с цитированием
Старый 25.06.2009, 17:44   #5
Molotoff
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 20
По умолчанию

Цитата:
Сообщение от Impuls1989 Посмотреть сообщение
Почитайте книжку Генри Уоррена "Алгоритмические трюки для программистов". Там вся книжка посвящена быстрой работе с битами
Скачать можно отсюда:
PDF - 27мб
Или отсюда:
DJVU 2.51мб
спасибо за книжку, всю просмотрел, но вот по своему вопросу, к сожалению, ничего не нашел
Molotoff вне форума Ответить с цитированием
Старый 25.06.2009, 17:55   #6
Molotoff
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 20
По умолчанию

Цитата:
Сообщение от pu4koff Посмотреть сообщение
На форуме уже про биты поднимались вопросы. Посмотрите на bitset и vector<bool> из библиотеки STL.
с радостью б заюзал вектор, но как его в unsigned int потом? по элементу добавлять?
Molotoff вне форума Ответить с цитированием
Старый 25.06.2009, 18:10   #7
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

а у bitset'a вроде должен быть метод для перевода набора битов в uint?
pu4koff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
идея, реализация или лень? 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