Циклический сдвиг - Теряются все биты - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Подскажите пожалуйста как на си зделать циклический здвиг, через оператор << (>>) теряются все биты.

Решение задачи: «Циклический сдвиг - Теряются все биты»

textual
Листинг программы
i = (i >> 1) | ((i & 1) << (sizeof( i ) - 1));

Объяснение кода листинга программы

  1. i - это переменная, которая циклически сдвигается вправо на 1 бит.
  2. i >> 1 - это операция сдвига переменной i вправо на 1 бит.
  3. ((i & 1) << (sizeof( i ) - 1)) - это операция сдвига переменной i влево на 1 бит, при этом i усекается до размера, указанного в sizeof( i ).
  4. | - это операция объединения (логическое ИЛИ) результатов двух предыдущих операций.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4 из 5
Похожие ответы