5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 96
|
|
1 | |
битовая маска23.09.2008, 15:44. Показов 43411. Ответов 28
Метки нет (Все метки)
как использовать битовую маску? за пример можно взять выделение k-того разряда из n-разрядного числа (в пофиг какой системе исчесления).
0
|
23.09.2008, 15:44 | |
Ответы с готовыми решениями:
28
битовая маска Битовая маска Как обратиться к объекту bitset так, чтобы результатом была битовая маска "Битовая Маска" |
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
|
|
23.09.2008, 15:52 | 2 |
В смысле? Ну, ее можно использовать с булевыми операциями: например & или |. Любое число, по сути - битовая маска. Потом применяешь это число и булеву операцию на еще один операнд.
Ну например, чтобы взять 1-й бит числа, нужно применить к нему & и 10000000. Вообщем, нужно просто знать двоичное представление числа и все. И булеву алгебру.
1
|
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 96
|
|
23.09.2008, 16:21 [ТС] | 3 |
значит, это действительно так просто.
Добавлено через 37 секунд благодарю
0
|
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 96
|
|
23.09.2008, 16:24 [ТС] | 5 |
а придумывается ли что-нибудь подобное на десятеричные числа?
0
|
Супер-модератор
8783 / 2536 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
|
|
23.09.2008, 16:30 | 6 |
а булевой алгебре неважно в какой системе счисления число, правила работают везде аналогично...
0
|
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 96
|
|
23.09.2008, 16:38 [ТС] | 8 |
хым.
120 & 10 = 2? Добавлено через 1 минуту 14 секунд бред, по-моему, а 12 & 3 тогда что выходит?
0
|
Супер-модератор
8783 / 2536 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
|
|
23.09.2008, 16:41 | 9 |
погоди, 120 & 10 = 8 => 1111000 & 1010 = 1000
0
|
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 96
|
|
23.09.2008, 16:47 [ТС] | 11 |
угу, уже ясно. только мною подразумевалось как раз именно выделение разряда числа: можно ли придумать такие манипуляции с маской, чтобы именно разряд десятеричного числа выделить.
мне эта вещь очень часто нужна, а деления с остатками меня утомляют, криво как-то.
0
|
Супер-модератор
8783 / 2536 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
|
|
23.09.2008, 16:47 | 12 |
считаю, что человеку неплохо было бы сначала все же прочесть что-нить про эту пресловутую алгебру, карты функций посмотреть, а то будет сложно что-то объяснить
0
|
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 96
|
|
23.09.2008, 16:50 [ТС] | 14 |
я знаю дискретную математику, булевую алгебру, интегральные схемы и т.д. и т.п.
я сейчас об алгоритмах, вы чет слишком на битах зацикливаетесь.
0
|
Супер-модератор
8783 / 2536 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
|
|
23.09.2008, 16:52 | 15 |
ну так ты озвучь, что именно тебе надо... если биты вырезать, то без побитовых логических операций никуда...
0
|
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 96
|
|
23.09.2008, 17:01 [ТС] | 17 |
меня и волнует единозначно ли будет соответствовать битовый коплекс разряду, что для меня уже ясно. но, кажется, проще выходит делить, чем расписывать маски.
0
|
Супер-модератор
8783 / 2536 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
|
|
23.09.2008, 17:03 | 18 |
я когда с периферийными устройствами работал по ком-порту, там куча флагов была, и приходилось вырезать по средствам побитовых операций, и никаких не удобств не было... и ты точно знаешь, какой бит анализируешь, но раз так надо делить, кто против, можно и делением это делать...
0
|
5 / 5 / 1
Регистрация: 13.05.2008
Сообщений: 96
|
|
23.09.2008, 17:05 [ТС] | 20 |
черт, меня осенила вполне красивая идея без применения каких-либо манипуляций!
Добавлено через 1 минуту 30 секунд дадада, потому у меня и была такая страсть свести все к ним. но теперь все проще: я просто буду считывать посимвольно и сразу обрабатывать результат
0
|
23.09.2008, 17:05 | |
23.09.2008, 17:05 | |
Помогаю со студенческими работами здесь
20
Битовая переменная Битовая сортировка! Битовая инверсия Битовая арифметика Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |