Русское сообщество по скриптингу

битовые операции, проверка на флаги  [Решено]

Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.

Модераторы: Subb98, liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.

битовые операции, проверка на флаги

Сообщение EbGiK » 10 сен 2017, 18:22

Код: Выделить всё
new var_1 = 10010010 00000000 00000000 00000000
new var_2 
= 11010111 00000000 00000000 00000000


Как закодировать и показать, что в var_2 содержатся все единичные биты var_1?
Аватара пользователя
EbGiK
 
Сообщения: 192
Зарегистрирован: 05 фев 2016, 16:40
Благодарил (а): 43 раз.
Поблагодарили: 3 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: битовые операции, проверка на флаги

Сообщение NEoMASTERR » 10 сен 2017, 18:41

Закодировать?

var_2 = var_1
Не?
И при чём тут проверка на флаги?
Аватара пользователя
NEoMASTERR
 
Сообщения: 832
Зарегистрирован: 05 янв 2015, 16:38
Благодарил (а): 43 раз.
Поблагодарили: 188 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: битовые операции, проверка на флаги

Сообщение EbGiK » 10 сен 2017, 18:46

И при чём тут проверка на флаги?

у var_1 одни флаги, у var_2 - другие, надо показать, что все флаги, которые есть в var_1 есть в var_2
Аватара пользователя
EbGiK
 
Сообщения: 192
Зарегистрирован: 05 фев 2016, 16:40
Благодарил (а): 43 раз.
Поблагодарили: 3 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: битовые операции, проверка на флаги

Сообщение NEoMASTERR » 10 сен 2017, 18:53

Код: Выделить всё
new var_2 var_1


& - побитовый И
| - побитовый ИЛИ
Аватара пользователя
NEoMASTERR
 
Сообщения: 832
Зарегистрирован: 05 янв 2015, 16:38
Благодарил (а): 43 раз.
Поблагодарили: 188 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: битовые операции, проверка на флаги

Сообщение EbGiK » 10 сен 2017, 19:05

new x = var_2 & var_1

Именно для тех var_1 и var_2 пойдет, это я от балды взял, нужен общий случай, что если сверху 1, а снизу 0
Код: Выделить всё
10010010 00001000 00000000 00000000
11010111 00000000 00000000 00000000
Аватара пользователя
EbGiK
 
Сообщения: 192
Зарегистрирован: 05 фев 2016, 16:40
Благодарил (а): 43 раз.
Поблагодарили: 3 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: битовые операции, проверка на флаги  [Решено]

Сообщение артист666 » 10 сен 2017, 20:07

Код: Выделить всё
if((var_2 var_1) == var_1
Если вы хотите чему-то научиться, пробуйте, задавайте вопросы.
Иначе компенсируйте потраченное время на ваши "проблемы".
Аватара пользователя
артист666
 
Сообщения: 2706
Зарегистрирован: 09 апр 2013, 17:46
Благодарил (а): 284 раз.
Поблагодарили: 639 раз.
Опыт программирования: Больше трех лет
Языки программирования: С, C++
Delphi
HTML, CSS, Java Script
Pawn


Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 12