Я изучал операторы сдвига в С#, пытаясь выяснить когда использовать их в моем коде.
Я нашел ответ, но для Java вы могли:
a) Сделайте быстрее целые операции умножения и деления:
* 4839534 * 4 * можно сделать следующим образом: 4839534 < 2
или
543894/2 можно сделать следующим образом: 543894 → 1
Операции сдвига намного быстрее, чем умножение для большинства процессоров.
b) Повторная сборка байтовых потоков со значениями int
c) Для ускорения операций с графикой, поскольку цвета красного, зеленого и синего цветов кодируются отдельными байтами.
d) Упаковка небольших чисел в один длинный...
Для b, c и d я не могу представить здесь настоящий образец.
Кто-нибудь знает, можем ли мы выполнить все эти пункты на С#? Существует ли более практическое использование операторов сдвига в С#?