Инструкции

Справочный раздел

В этом разделе Вы найдетё инструкции, справочники, и всевозможные хелпы по использованию программного обеспечения.

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

В сети

Пользователей: 228
Из них просматривают:
Аналоги: 84. Даташиты: 77. Инструкции: 4. Новости: 15. Остальное: 3. Программы: 2. Производители: 4. Профиль пользователя: 11. Расчёты: 1. Теги: 4. Форум: 23.
Участников: 2
Гостей: 226

Google , Яндекс , далее...
Рекорд 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.

 

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

Разное

Интересно

Храните микросхемы в упаковке, обеспечивающей закорачивание их выводов, например, завернутыми в алюминиевую фольгу.
При переноске не касайтесь выводов микросхемы, берите за корпус, иначе ваше статическое электричество может повредить микросхему.

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