КАК РАБОТАТЬ С БИТАМИ | ОСНОВЫ ПРОГРАММИРОВАНИЯ

preview_player
Показать описание
А чтобы получить скидку 10% - сообщи менеджеру или в чат поддержки кодовое слово AlekOS

Битовые операции.
Из-за того, что в компьютерах используется байтовая адресация, мы вынуждены выделять в памяти минимум 8 бит.
Однако есть задачи, в которых память критична, а размер данных настолько мал, что можно обойтись и битами.
В этом видео показано как работать с каждым битом в отдельности, и в какую структуру данных всё это выльется.

Подписывайся в соц. сетях:

❤️ Поддержка канала:

✔️ Полезные ссылки:

00:00 Введение
02:19 Логические операторы
03:04 РЕКЛАМА
04:41 Битовые операторы
06:03 Сжатие аргументов
07:44 Узнать содержимое бита
08:26 Установка бита в 1
09:02 Установка бита в 0
09:20 Инверсия бита
10:03 РЕКЛАМА
11:31 Функции для работы с битами
12:01 Битовые сдвиги
13:02 Арифметический сдвиг
15:12 Логический сдвиг
15:40 Циклический сдвиг
16:05 Особенности битовых сдвигов
19:05 Дописываем функции для работы с битами
20:37 Битовый вектор
Рекомендации по теме
Комментарии
Автор

Особенно нравится графический стиль подачи. Да и содержание на уровне, без воды. Хоть я и достаточно опытный в этой теме, обязательно буду делиться с начинающими вашими уроками. Спасибо.

timiblaze
Автор

Как всегда отлично, Алек. Спасибо за очередной просвещающий ролик. Очень прощу продолжить серию роликов о Ассемблере, спасибо.

gaky
Автор

Ошибка в видео.
В C++ операторы << и >> - это логический сдвиг. Говорю, как программист железячник, который пишет код, наполовину состоящий из всевозможных битовых операций. Ибо у железа полно специальных регистров управления, где различные биты отвечают за работу тех или иных функций железа.
В свое время частенько спотыкался на этом, когда делил числа посредством сдвига. Знак терялся и в итоге я ловил баги.
Арифметический сдвиг вправо в С++ производится посредством оператора деления на число 2 в степени N, где N - количество битов, на которое нужно произвести сдвиг. Впрочем, некоторые ядра, например ARM, поддерживают инструкции для всех трех видов сдвига. Их либо использует компилятор в зависимости от контекста, либо программист пишет ассемблерные вставки, либо использует intrinsic функции (инструкции процессора, выраженные в виде функций), если таковые имеются в библиотеке программируемой платформы.

По поводу преобразования абсолютного индекса искомого бита в индексы строк и колонок. Тут вообще все просто. Колонок у нас 32. Берём младшие шесть бит абсолютного индекса (режем операцией И) - это у нас будет номер бита в конкретной "строке".
Берём старшие 26 бит абсолютного индекса (логический сдвиг на шесть бит вправо) - это у нас будет номер "строки" (индекс массива)

kardanium
Автор

Больше спасибо, желаю интенсивного развития твоего канала (рост подписчиков и просмотров)! Это было классно!

bOOOOkash
Автор

Единственный человек, который смог мне доходчиво объяснить логику побитовых сдвигов! Я в восторге. Благодарю

some_body_qtyeeuy
Автор

Мощно, так продолжать, спасибо за столь твою кропотливую работу!

Salomon_li
Автор

Очень ждал новое видео, спасибо.
P.S. следующее видео по Assembler-у?

rorva
Автор

Очень круто и понятно. Я в асме работал с битами, но вот тут получил хорошие практические примеры и понимание, как можно в высокоуровневых языках делать разные манипуляции. Вроде и знаешь про операции и битовые маски, но когда видишь практические примеры, то всё сразу по полочкам раскладывается. Спасибо огромное за твой труд!

ukolove
Автор

ООО, новый видосик, сенкс
лайк авансом, посмотрю после других роликов
Спасибо за годный контент!!

МишаБобров-из
Автор

Мне 14 лет и я хочу досконально изучить все, что связано с компьютерами, операционными системами и айти в целом. Чувак, ты отлично помогаешь, спасибо!

samiralhnu
Автор

Очень классное и полезное видео, я даже оторвался от программирования, чтобы коммент написать

diamnddangel
Автор

В этом видео прекрасно всё) За 25 минут всё понятно, не представляю сколько понадобилось бы времени в универе с заснувшим преподом

VitaliyZlobin
Автор

Понятное и простое объяснение сложной темы! Спасибо.

pavlomukosieiev
Автор

Ты супер! Это то чего реально не хватало на русскоязычном Ютубе.

АлександрБескровный-ьт
Автор

следующий ролик от Алека будет о том как руками двигать электроны в компьютере :D
в общем просто спасибо тебе Алек за то что ты есть и что снимаешь такой нужный контент )

heisserkaiser
Автор

Круто, не совсем все понял, но понял что побитовые операторы довольно полезная штука)

captain_trch
Автор

Раньше мне не приходилось ещё работать с битовыми операциями. И вот неделю назад появилась потребность... Решил получше разобраться в этой теме, читал информацию пару часов... И через неделю ты выпускаешь ролик по этой теме... Совпадение? Не думаю! Контент как всегда крутой! Мне нравится, как ты преподносишь информацию! Очередной годный ролик на актуальную тему.

nakamasama
Автор

Привет.
Ты один из лучших!!!
Спасибо тебе за создаваемое!

ВладиславТрубников-ть
Автор

Красавчик, продолжай в том же духе! Ты делаешь правильное дело, спасибо!!!

vadimkasiuk
Автор

Большое спасибо! Просто и наглядно, объяснить понятнее, наверное, невозможно

mikurrey