🔍 Битовые маски: суперсила для работы с данными

Сегодня о битовых масках — мощном инструменте, который делает магию с данными.

🤔 Что это вообще такое? Битовая маска — это число, в котором каждый бит имеет специальное значение. Представьте, что у вас есть швейцарский нож данных — каждая "лезвие" (бит) отвечает за свою функцию.

🎯 Где это реально используют?

✅ Системы прав доступа (можно/нельзя)

🏷 Множественные флаги состояний

🎮 Игровая разработка (статусы эффектов)

📊 Оптимизация хранения данных

🔐 Компактные настройки

💻 Практика в таблицах (Excel/Google Sheets)

Допустим, у нас число 6 (бинарно: 110). Как проверить отдельные биты?

excel =ОСТАТ(A1;2) → Бит 0 (младший): 0 =ОСТАТ(ЧАСТНОЕ(A1;2);2) → Бит 1: 1 =ОСТАТ(ЧАСТНОЕ(A1;4);2) → Бит 2: 1 📚 Живой пример: система доступа Пусть каждый бит — право доступа:

Бит 0 (1): Чтение

Бит 1 (2): Запись

Бит 2 (4): Удаление

Права пользователя = 5 (бинарно 101) = Чтение + Удаление

То есть это просто сумма состояний. Чтение 1 + Удаление 4 = Чтение, Удаление (5).

Проверяем права:

excel =ЕСЛИ(ОСТАТ(Права;2)=1;"Чтение есть";"") =ЕСЛИ(ОСТАТ(ЧАСТНОЕ(Права;2);2)=1;"Запись есть";"") 🎁 Преимущества:

⚡️ Супербыстро

💾 Экономия памяти

🔧 Гибкость

🧮 Простые вычисления

⚠️ Осторожно:

Может быть сложно для понимания

Легко запутаться в битах

Ограниченное количество флагов (обычно 32/64)

💡 Профи-совет: Обязательно используйте только степени двойки для каждого флага: 1, 2, 4, 8, 16, 32...

Попробуйте! Это как суперспособность для оптимизации. 🦸