Побитовые операции - C# (184629)

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

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

Нужна помощь. впервые встречаюсь с побитовыми операциями. задания для меня, как минимум, непонятны. Читал теорию, но примеров инвертирования, и вообще, работу с ними, не понял и не нашел... 1) Дан массив из 10 символов. Составить программу, инвертирующую порядок бит в байтах. (если массив из 10 чисел я могу создать, то с самим заданием проблема) 2) Дан массив из знаковых чисел. Биты отрицательных чисел сдвинуть вправо на два разряда, а биты 0 и 4 положительных чисел сбросить. Элементы полученного массива представить в десятичном и шестнадцатеричном формате. (тут вообще ничего не знаю, как и что)

Решение задачи: «Побитовые операции»

textual
Листинг программы
        static void Main(string[] args)
        {
            byte b = 4;
            byte reverse = Reverse(b);
            Console.WriteLine(reverse); // 32
        }
 
        static byte Reverse(byte b)
        {
            int x = (b & 0xF0) >> 4 | (b & 0x0F) << 4;
            x = (x & 0xCC) >> 2 | (x & 0x33) << 2;
            x = (x & 0xAA) >> 1 | (x & 0x55) << 1;
            return (byte) x;
        }

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


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

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

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