Есть ли способ выполнить круговой битовый сдвиг в C #?

Я знаю, что следующее верно

int i = 17; //binary 10001
int j = i << 1; //decimal 34, binary 100010

Но если вы сдвинетесь слишком далеко, биты падают с конца. То, где это происходит, зависит от размера целого числа, с которым вы работаете.

Есть ли способ выполнить сдвиг так, чтобы биты вращались вокруг на другую сторону? Я ищу одну операцию, а не цикл.

Ответы на вопрос(5)

Ваш ответ на вопрос