| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > циклический сдвиг битов влево(вправо) |
| Автор: AlexiZ 25.2.2010, 19:10 |
| Здравствуйте, Как реализовать на C# циклический битовый сдвиг? Например, циклический сдвиг влево на 3 бита: 1011100 -> 1100101 Если делать обычный сдвиг, то увеличивается длина числа (при сдвиге влево) или теряются биты и правом сдвиге. Заранее благодарен за ответы |
| Автор: AlexiZ 25.2.2010, 23:04 | ||||
| Вроде сам разобрался. Здесь есть неплохое обсуждение - http://stackoverflow.com/questions/35167/is-there-a-way-to-perform-a-circular-bit-shift-in-c Но вариант
на мой взгляд неверен. и вот, что я понаписал -
с этой функцией корректно выполнилось действие 1011100 -> 1100101 |
| Автор: LEX555 25.2.2010, 23:10 |
| Ну вы работаете чисто с int-овыми значениями) представление двоичной системы неплохо обсуждается здесь: http://forum.codenet.ru/showthread.php?t=54131 |