Half-Life и Adrenaline Gamer форум

Всё об игре в Халф-Лайф и АГ
Текущее время: 28 мар 2024, 19:02

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Побитовые операции
СообщениеДобавлено: 30 сен 2013, 03:30 
Не в сети
Зарегистрирован:
26 сен 2013, 07:26
Последнее посещение:
07 окт 2013, 18:42
Сообщения: 25
Можете объяснить про кое какую из них.

Меня интересует побитовый сдвиг. Это оператор <<

Несколько вопросов:

1. Не совсем понимаю как они работают.

2. Где их можно использовать

Видел в плагинах не раз это но до сих пор не понимаю что они значат.

3. Еще я обратил внимание что их использую совместно с побитовым |
Объясните плиз что это даёт.

Гугл ответа не дал


Последний раз редактировалось Mr_ILYAS 30 сен 2013, 12:04, всего редактировалось 1 раз.

Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: Побитовые операции
СообщениеДобавлено: 30 сен 2013, 03:48 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
26 мар 2024, 21:42
Сообщения: 6864
Да вот, у нас тут даже туториал есть.


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: Побитовые операции
СообщениеДобавлено: 30 сен 2013, 04:04 
Не в сети
Зарегистрирован:
26 сен 2013, 07:26
Последнее посещение:
07 окт 2013, 18:42
Сообщения: 25
Я так и не понял что даёт <<

Можно на конкретном примере?


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: Побитовые операции
СообщениеДобавлено: 30 сен 2013, 04:32 
Не в сети
Site Admin
Зарегистрирован:
01 июн 2010, 01:27
Последнее посещение:
26 мар 2024, 21:42
Сообщения: 6864
http://ru.wikipedia.org/wiki/%D0%91%D0%B8%D1%82%D0%BE%D0%B2%D1%8B%D0%B9_%D1%81%D0%B4%D0%B2%D0%B8%D0%B3
В амхх "Арифметический сдвиг".

Да и вообще, гугл:
https://www.google.ru/search?hl=ru&source=hp&biw=&bih=&q=%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%B8+%D1%81%D0%B4%D0%B2%D0%B8%D0%B3%D0%B0&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: Побитовые операции
СообщениеДобавлено: 30 сен 2013, 04:41 
Не в сети
Зарегистрирован:
26 сен 2013, 07:26
Последнее посещение:
07 окт 2013, 18:42
Сообщения: 25
Спустя 6 часов 13 минут:
Ладно, с первым постом разобрался путём проб и ошибок.

Помогите сделать проверку (для закрепления усвоенного материала):
Есть число в двоичном представлении, допустим:
110190817160504131211  (871 в десятичной)
Итак задача:

new x = 0b1101100111;
if (условие) {

    действия. . .
}
Как проверить например что именно восьмой от правого конца (выделенный оранжевым цветом) символ является нулём (это и будет условие), при этом не меняя переменную x
Меня интересует способ через побитовые операции, то есть без использования конвертации в строку и обратно.

Помогите, ато башка уже не варит. . .


Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: Побитовые операции
СообщениеДобавлено: 30 сен 2013, 21:36 
Не в сети
Зарегистрирован:
26 сен 2013, 07:26
Последнее посещение:
07 окт 2013, 18:42
Сообщения: 25
Всё разобрался. Можно сказать я теперь в этих операторах чувствую себя свободно (а вчера для меня было всё тёмным лесом)

Итак вот моё творение. Желаю похвастаться. Небольшая менюшка.

Нестандартно написана. Ведь обычно делают через:
деф ((1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7)(1<<8)|(1<<9))

На я обошёлся без этого. Использовал побитовые операторы с расчётом. Почти все проверки побитовые. Полностью избавился от булевых переменных.

На мой взгляд оформление (в игре) получилось удобным. Если поле прозрачно, то при нажатии соответствующей кнопки меню не реагирует.

И еще на всякий случай в инклуд amxmodx добавил две функции для преобразований десятичный в двоичные и наоборот. Ими я обширно пользовался когда писал это плагин. Очень удобно для дебугов.


Вложения:
admin_menu.rar [28.64 КБ]
Скачиваний: 205
Вернуться к началу
 Профиль 
  
 Заголовок сообщения: Re: Побитовые операции
СообщениеДобавлено: 20 янв 2014, 15:35 
Не в сети
Аватара пользователя
Зарегистрирован:
24 янв 2011, 03:32
Последнее посещение:
09 дек 2021, 03:04
Сообщения: 756
Откуда: Futurama
Цитата:
две функции для преобразований десятичный в двоичные и наоборот
походу материал ты все таки не освоил, ничего преобразовывать не нужно, нужно лишь работать с битовой маской напрямую


Вернуться к началу
 Профиль 
  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB