11 битовый сдвиг влево и операция ему обратная - C#
Формулировка задачи:
Всем доброй ночи, подскажите пожалуйста операцию обратную к 11 битовому сдвигу влево...
Сам сдвиг выглядит очень просто:
Где input - это то число над которым мы проделываем сдвиг, оно 32 битное.
Как из 32 битового return'a получить снова input?
Я туплю уже ночью или обратной будет она же?
return input << 11 | input >> (32 - 11);
Решение задачи: «11 битовый сдвиг влево и операция ему обратная»
textual
Листинг программы
int data; byte CarryBit = (data & 0x80000000) >> 31;//Запоминаем бит. data <<= 1;//делаем сдвиг. //устанавливаем бит if (CarryBit == 0) data &= 0xFFFFFFFE; else data |= 0x01;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д