C++ побитовый сдвиг

Тема в разделе "Общие вопросы по С и С++", создана пользователем PROGamer, 3 июн 2009.

  1. PROGamer

    PROGamer Гость

    Мне задали написать прогу каторая инвертирует n розрядов в целом числе x начиная с позиции p. Я попробывал так:
    Код:

    y = x ^ ((-1 >> (sizeof(x) - p+n)) & (-1 << p));

    Но пачемуто выводит неправильно. Кто нибудь пожалуйста обьясните мне что я сделал нетак.
     
  2. PROGamer

    PROGamer Гость

    Полный текст задания такой:
    Написать функцию, каторая возвращает число полученное из целого числа X, в катором инвертированы n розрядов, начиная з позиции P, а остальные розряды оставлены без изменений(крайний правый бит считать нулевым за номером).

    Помогите ктонить...
     
Загрузка...
Похожие Темы - C++ побитовый сдвиг
  1. Nadia_IT
    Ответов:
    0
    Просмотров:
    27
  2. kmm96
    Ответов:
    1
    Просмотров:
    26
  3. TriXel_01
    Ответов:
    5
    Просмотров:
    105
  4. acs-nexus
    Ответов:
    0
    Просмотров:
    93
  5. Ramzay
    Ответов:
    3
    Просмотров:
    135

Поделиться этой страницей