Воскресенье, 06.07.2025, 12:01       
ЯЗЫКИ ПРОГРАММИРОВАНИЯ
ОПЕРАЦИОННЫЕ СИСТЕМЫ
РАБОТА В ОФИСНЫХ ПРОГРАММАХ
ВИДЕОУРОКИ
Опрос
Какой язык программирования наиболее популярен ?
Всего ответов: 12

ID

Главная » 2015 » Октябрь » 14 » Хитрости с битовыми операциями
15:39
Хитрости с битовыми операциями
В случае, когда производительность критична, можно использовать различные средства оптимизации вычислений. Одним из таких средств являются битовые операции (если алгоритм уже не подразумевает их использование).

Например, координаты в двухмерном пространстве можно хранить в виде чисел Мортона, когда абсцисса и ордината записываются одним двоичным числом, позволяющим сравнивать расстояния между точками за одну операцию.

unsigned short x;   // Алгоритм смешивает x и y так,                                                 
unsigned short y;   // что четные биты z принадлежат числу x, а нечетные --- y;
unsigned int z = 0; // Число Мортона для точки.                                                           
                                                                                                                                               
for (int i = 0; i < sizeof(x) * CHAR_BIT; i++)                                                                          
{                                                                                                                                              
  z |= (x & 1U << i) << i | (y & 1U << i) << (i + 1);                                                                
}                                                                                                                                              











Просмотров: 374 | Добавил: Ronaldo | Теги: двоичная система счисления, Мортон, bit, координаты, бит, битовые операции, байт | Рейтинг: 0.0/0
Всего комментариев: 0
avatar
УЧЕБНИКИ



Вход на сайт
Календарь
«  Октябрь 2015  »
Пн Вт Ср Чт Пт Сб Вс
   1234
567891011
12131415161718
19202122232425
262728293031
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Облако тегов
    Яндекс.Метрика



    Copyright MyCorp © 2025uCoz