Главная Контакты


  На сайте

  Java, JavaScript
  Документация Perl
  Документация PHP
  Документация ASP
  Новости сайта
  Flash
  Интернет протоколы
  Apache
  Уроки программирования
  Язык программирования C
 


Типы, операторы и выражения


Разрядные операторы

Язык C обеспечивает шестью операторами для обработки битов, их можно применять только с целочисленными операндами, т.е. char, short, int и long, как со знаком, так и беззнаковыми. & Разрядный И
| Разрядный включительно или
^ Разрядный исключительный ИЛИ
<<Левое смещение
>> Правое смещение
~ Дополнения (унарный оператор)


Разрядный И (оператор &) часто используется для того, чтобы скрыть набор битов, например
n = n & 0177;
обнулит все биты n кроме младших 7-и.


Разрядный ИЛИ (оператор |) используется для включения битов:
x = x | SET_ON;
устанавливает в единицу все биты x, равные одному в SET_ON. Разрядный исключительный ИЛИ (оператор ^) устанавливает в единицу каждую позицию, где операнды имеют отличные биты, и в ноль там где они совпадают.

Не следует путать разрядные операторы & и | с логическими операторами & & и | |, в которых дается слева направо оценку истинного значения. Например, если x равен 1 а y равно 2, тогда x & y оценивается как ноль, зато x & & y - как один.

Операторы смещения <<и>> осуществляют левое и правое смещение левого операнда на количество битов, указанных правым операндом; последний должен быть положительным числом. Таким образом, x <<2 смещает значение x на два положения, заполняя вакантные биты нулями; это равносильно умножению на 4. Правое смещение беззнаковых величины всегда заполнять освобождены биты нулями. Правое смещение величины со знаком заполнять битами знака ("арифметическое смещения") на некоторых машинах и 0-битами ("логическое смещение") на других.

Другие статьи по теме:

- Введение в c++
- Типы, операторы и выражения
- Внешние переменные и область действия
- Символьные массивы
- Функции и структура программ


Голосование:
Чего Вы хотели бы видеть больше на сайте?

Статей, документации
Скриптов
Программ для вебмастера
Я не знаю



Другие голосования

Обмен кнопочками:



Приглашаем Вас обменяться кнопочками! Обращайтесь к администратору.


Новые статьи:


Наши партнеры:





2006-2024 © SMTI.RU
Главная страница | Связаться с нами