Java. Побитовые операторы.
ฝัง
- เผยแพร่เมื่อ 25 ส.ค. 2024
- В этом видео разбираем, как работают побитовые операторы в языке программирования Java. Так же знакомимся с двоичным представлением чисел, и быстрым переводом из двоичной системы счисления в десятичную и обратно.
Рассматриваем примеры того, что можно делать с помощью битовых операций, а именно: управление отдельными битами, быстрое деление и умножение на степени двойки с помощью сдвигов, распаковка целого числа на составляющие байты, а так же создание класса - битового массива.
Исходные коды примеров из видео:
github.com/Arh...
Поддержать канал💰:
yoomoney.ru/to...
#ArhiTutorialsJava #ityoutubersru
Сергей, мое почтение, у Вас очень яркий преподавательский талант, снимаю кепку. Все очень доступно доносите. Спасибо Вам большое!
Спасибо. До этого видео до конца не понимал работу со сдвигами.
Большое спасибо за видео! Всё очень хорошо и доступно объясняется!
Я в шоке как же доходчиво вы объясняете. Без сарказма, спасибо!!!
Таблица для перевода это гениальнл
Спасибо. Стало понятно.
Очень круто! Большое спасибо за ваш труд!
Ты гений, работая айтишником ты наверно очень крутой прогер. Спасибо за свой труд бро.
Bravo Bravisimo Imperarisimo!!! Это было очень круто. Как сказал агент: "Ещё - Ещё - Ещё!!!"
Самое крутое видео про битовые операции!
Спасибо большое все четко и по сути. Спасибо!
Бля чувак ты красава! Очень понятно развернуто и доступно. Сравниваю с другими уроками на ютубе, твое объяснение очень понятное и доходчивое. От души душевно с душою в душу! Благодарю одним словом!
Большое спасибо за видео, очень доходчиво объяснили!)
Хорош!
Попробуйте записать цикл видео с паттернами проектирования
Спасибо за отличное познавательное видео.
Вот - так!
Вот - так!
супер
I respect you! You are really a teacher!)
Спасибо за отличное видео!
Это какой-то новый уровень "прослушки" чужих мыслей. Только у меня в голове назревает вопрос, который я собираюсь написать в комментарии, так вы тут же на него отвечаете.
Спасибо! Хорошо объясняешь
Большое спасибо!
Было интересно
Спасибо за видео
Всегда избегал эту тему, т.к. почему-то боялся её что ли.. теперь веки подняты))) страх ушёл! Спасибо большое!
Да, я тоже)
спасибо огромное
Спасибо!
Спасибо 🙏😌
добрый день, не понял на 18:55 сдвигаем черный на 24, на 16 красный, на 8 зеленый и синий не двигаем (0), так вот почему именно на эти (24, 16, 8 и 0) числа сдвигаем и почему именно в таком порядке (альфа, красный, зеленый, синий)? подскажите
Если в битах смотреть, то структура цвета такая:
AAAAAAAA RRRRRRRR GGGGGGGG BBBBBBBB
8 бит - прозрачность, за ними
8 бит - красный,
8 бит - зеленый,
8 бит - синий.
Теперь пусть у нас есть по отдельности все компоненты
AAAAAAAA
RRRRRRRR
GGGGGGGG
BBBBBBBB
Чтобы составить из них int, нужно каждый компонент сдвинуть на свое место. Получится
AAAAAAAA 00000000 00000000 00000000
+ RRRRRRRR 00000000 00000000
+ GGGGGGGG 00000000
+ BBBBBBBB
= AAAAAAAA RRRRRRRR GGGGGGGG BBBBBBBB
То есть прозрачность сдвигаем на 24 разряда, красный на 16, зеленый на 8, синий - так и будет на своем месте.
как часто используются битовые операции в программирование?
В нормальном программировании используются редко. Чаще всего отдельные биты используются в качестве флагов, для установки различных параметров. Например в Windows API такого добра полно, вот к примеру, описание флагов стиля окна:
docs.microsoft.com/en-us/windows/win32/winmsg/window-styles
Ну и если писать какие-то алгоритмы, связанные с кодированием, то там без битовых операций никуда.
04:04
Сергей не очень понимаю синтаксис разложения на цвета обратно.
А будут видео про котлин?
В конце речь про т.н биг эндиан и литл эндиан? ))
Да, именно. Когда пишешь int в битовый массив, то можно сначала старшие байты писать, потом младшие, а можно наоборот. Разницы нет, но потом при чтении из массива главное не перепутать)
*Грех не подписаться*
th-cam.com/video/RIyz2_0FTbE/w-d-xo.html
Мы выполняем операцию "логическое И". Почему мы теперь сравниваем полученный результат "больше 0 или нет"? Не могу понять...
операция вернет либо ноль либо некое число это и будет как true или false.
А если число больше 256? Например 1000
Абсолютно так же. Ищем ближайшее число < искомого, в данном случае берем 2^9 = 512.
1000-512 =488.
Следующее ближайшее число - 256 -> 488-256 = 104.
Следующее 64 -> 104-64 = 40.
Следующее 32 -> 40-32 = 8. Следующее 8 -> 8 - 8 = 0.
Получается в итоге: 1111101000
Сергей здравствуйте. А у вас нет строницы в Контакте мли где то еще?
поплыл на середине. явно не для новичков.