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

В сети

Пользователей: 162
Из них просматривают:
Аналоги: 55. Даташиты: 58. Инструкции: 1. Новости: 19. Остальное: 1. Ошибки: 2. Профиль пользователя: 2. Торрент: 1. Форум: 22. Чат: 1.
Участников: 3
Гостей: 159

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

Партнёры


Партнёры

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

Оглавление

<< (побитовый сдвиг влево)

Описание
Оператор сдвига влево << вызывает сдвиг битов левого операнда влево на количество позиций, заданных правым операндом
 
Синтаксис
переменная << количество_бит;
 
параметры
переменная: допустимые типы данных: byte, int, long.
количество_бит - целое число <= 32. допустимые типы данных: int.

Пример

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



Примечания и предупреждения

Когда вы сдвигаете значение x на y бит (x << y), самые левые y биты в x теряются:
 

int x = 5; // двоичный: 0000000000000101
int y = 14;
int result = x << y; // двоичный: 0100000000000000 - первый 1 из 101 будет потерян


 
Если вы уверены, что ни один из битов в сдвигаемом числе не пропадет, то для простоты можно считать, что оператор сдвига << умножает левый операнд на 2 в степени, показателем которой является правый операнд. Например, для получения степеней 2 могут быть использованы следующие выражения:
 
операция  результат
 1 << 0       1
 1 << 1       2
 1 << 2       4
 1 << 3       8
 ...
 1 << 8     256
 1 << 9     512
 1 << 10   1024
 
В следующем примере можно послать значение полученного байта на последовательный порт, используя оператор сдвига влево для перемещения вдоль байта вниз (LSB) вверх (MSB), и посмотреть на мониторе его двоичное значение:

// Prints out Binary value (1 or 0) of byte
void printOut1(int c) {
   for (int bits = 7; bits > -1; bits--) {
     // Compare bits 7-0 in byte
     if (c & (1 << bits)) {
       Serial.print("1");
     }
     else {
      Serial.print("0");
     }
   }
}

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

Разное

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

Интересно

Во время ремонта телевизора не ставьте настольную лампу на его корпус.

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