Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Операции поразрядной арифметики.Содержание книги
Поиск на нашем сайте Применяются только для целочисленных операндов. Существуют следующие бинарные операции: & - поразрядное И; | - поразрядное ИЛИ; ^ - исключающее ИЛИ; << - сдвиг влево; >> - сдвиг вправо; ~ - операция обращения (инверсия) - унарная операция Поразрядная конъюнкция (И) битовых значений операндов, обеспечивает выключение битов flag=x&mask; x= 01011 mask= 01100 flag= 01000 Поразрядная дизъюнкция (ИЛИ) битовых значений операндов, обеспечивает включение битов flag=x|mask; x= 01011 mask= 01101 flag= 01111 Поразрядное исключающее ИЛИ (сумма по модулю 2). Значение выражения содержит 1 в тех разрядах, в которых операнды имеют различные двоичные значения, и 0 во всех остальных случаях. Определение отличающихся битов.
diffbits=x^y; short i=0xab00; short j=0xabcd; short n; n=i^j; // n=0x00cd Сдвиговые операции – производят сдвиг своего 1-ого операнда на количество разрядов, указанное во 2-ом операнде. x=x>>3; //эквивалентно делению на 8 x=x<<2; //эквивалентно умножению на 4 Примечание: 1. при сдвиге влево освободившиеся разряды заполняются нулями; 2. при сдвиге вправо освобождающиеся разряды заполняются либо значениями знакового разряда (при сдвиге числа со знаком), либо нулями для чисел без знака; 3. второй операнд всегда должен быть положительным. unsigned i, j, k; i=0x00aa; j=0x55aa; k=(i<<8)+(j>>8); // k=aa55
Логические операции. Для получения логического значения («истинно», кодируемое цифрой 1, или «ложно», кодируемое цифрой 0) используются операции отношения, логические и побитовые операции. В языке С используется обычный набор операций отношений: < (меньше), <= (меньше или равно), > (больше), >= (больше или равно), == (равно) и != (не равно). Логическое выражение в виде отношения принимает значение 1 (истинно), если оно удовлетворяется для входящих в него операндов, и 0 (ложно) в противном случае, поэтому выражение 5>2 имеет значение 1, а 7<=0 – 0. К логическим операциям относятся логическое И или логическое умножение (&&), логическое ИЛИ или логическое сложение (| |), исключающее ИЛИ (^)и логическое отрицание (!). Выражения с участием логических связок будут раскрываться слева направо и как только определяется истинность или ложность всего выражения вычисления заканчиваются. Если операнд операции отрицания равен нулю, то результат операции будет равен единице; если же значение операнда отлично от нуля, результат операции равен нулю. if (!good) printf(“not good”);
Операция логического умножения даёт значение «истинно», если оба операнды истинны, т.е. отличны от нуля; в противном случае результат операции будет равен нулю, т.е. ложен. if (p!=NULL && p>7) //сначала проверяется Логическое сложение вырабатывает значение 1 (истинно), если хотя бы один из операндов истинен (отличен от нуля) и 0 (ложно) в противном случае. if (x<a||x>b) printf (“out of range”);
Библиотечные функции.
Программирование разветвляющихся алгоритмов.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Последнее изменение этой страницы: 2020-12-09; просмотров: 133; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.128 (0.005 с.) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||