Разделы инструкций

В сети

Пользователей: 178
Из них просматривают:
Аналоги: 86. Галерея: 1. Даташиты: 44. Инструкции: 2. Магазин: 1. Новости: 12. Остальное: 7. Программы: 1. Профиль пользователя: 3. Торрент: 2. Форум: 17. Чат: 2.
Участников: 4
Гостей: 174

an , Google , wolf170571 , Яндекс , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

Оглавление

>> (побитовый сдвиг вправо)

Описание
Оператор сдвига вправо >> заставляет биты левого операнда сдвигаться вправо на количество позиций, указанных правым операндом.

Синтаксис
переменная >> количество_бит;

Параметры
переменная: допустимые типы данных: byte, int, long.

количество_бит - целое число

 
Пример

int a = 40; // двоичный: 0000000000101000
int b = a >> 3; // двоичный: 0000000000000101, или 5 в десятичной

 
Примечания
Когда вы сдвигаете x вправо на y бит (x >> y), а старший бит в x равен 1, поведение зависит от точного типа данных x. Если x имеет тип int, старший бит является знаковым битом, определяющим, является ли x отрицательным или нет, как мы обсуждали выше. В этом случае знаковый бит копируется в младшие биты по эзотерическим историческим причинам:
 

int x = -16; // двоичный: 1111111111110000
int y = 3;
int result = x >> y; // двоичный: 1111111111111110

 
Такое поведение, называемое расширением знака, часто не соответствует желаемому. Вместо этого вы можете захотеть сместить нули слева. Оказывается, что правильные правила сдвига отличаются для выражений типа unsigned int, поэтому вы можете использовать приведение типов для подавления копий, копируемых слева:
 

int x = -16; // двоичный: 1111111111110000
int y = 3;
int result = (unsigned int)x >> y; // двоичный: 0001111111111110

 
Если с осторожностью, чтобы избежать расширения знака, вы можете использовать оператор сдвига вправо >> как способ деления на степени 2. Например:
 

int x = 1000;
int y = x >> 3; // целочисленное деление 1000 на 8, результат у = 125.

 

Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити

Разное

Цинк для изготовления паяльной кислоты можно найти в старых батарейках питания.

Интересно

Иногда в телевизоре гетинаксовые платы с печатным монтажом от повышенных температур обугливаются (выгорают).

Похожие инструкции