Инструкции

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

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

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

В сети

Пользователей: 166
Из них просматривают:
Аналоги: 31. Даташиты: 29. Инструкции: 22. Новости: 3. Остальное: 1. Профиль пользователя: 1. Форум: 79.
Участников: 2
Гостей: 164

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");
     }
   }
}

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

Разное

Интересно

Обработанные водным раствором щелочи стальные контакты (например, батарейного отсека переносной магнитолы или пульта ДУ) никогда не заржавеют.

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