Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Арифметические операции. Основные бинарные операции, расположенные в порядке уменьшения приоритета:





Основные бинарные операции, расположенные в порядке уменьшения приоритета:

умножение *;

деление /;

сложение +;

вычитание -;

остаток от целочисленного деления %.

Основные унарные операции:

инкрементирование (увеличение на 1) ++;

декрементирование (уменьшение на 1) --;

изменение знака -.

Результат вычисления выражения, содержащего операции инкрементирования или декрементирования, зависит от того, где расположен знак операции (до объекта или после него).

Если операция расположена до объекта, то сначала происходит изменение значения переменной на 1, а потом это значение используется для выполнения следующих операций. Если операция ++ или - - расположена после переменной, то сначала выполняется операция, а потом значение переменной изменяется на 1.

Пример:

int a=2;

int b=3;

int c, d;

c = a*++b; // c=8, поскольку в операции умножения уже b=4

d = a*b++; // d=6, поскольку в операции умножения b=3

Бинарные арифметические операции могут быть объединены с операцией присваивания:

объект *= выражение; // объект = объект * выражение

объект /= выражение; // объект = объект / выражение

объект += выражение; // объект = объект + выражение

объект -= выражение; // объект = объект - выражение

объект %= выражение; // объект = объект % выражение

Логические операции

Логические операции делятся на две группы:

условные;

побитовые.

Условные логические операции чаще всего используются в операциях проверки условия if и могут выполняться над любыми объектами. Результат условной логической операции:

1 если выражение истинно;

0 если выражение ложно.

Вообще, все значения, отличные от нуля, интерпретируются условными логическими операциями как истинные.

Основные условные логические операции:

&& - И (бинарная) — требуется одновременное выполнение всех операций отношения;

|| - ИЛИ (бинарная) — требуется выполнение хотя бы одной операции отношения;

! - НЕ (унарная) — требуется невыполнение операции отношения.

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

Основные побитовые логические операции в языке Си:

& конъюнкция (логическое И) - бинарная операция, результат которой равен 1 только когда оба операнда единичны (в общем случае - когда все операнды единичны);

| дизъюнкция (логическое ИЛИ) - бинарная операция, результат которой равен 1 когда хотя бы один из операндов равен 1;

~ инверсия (логическое НЕ) - унарная операция, результат которой равен 0 если операнд единичный, и равен 1, если операнд нулевой;

^ исключающее ИЛИ - бинарная операция, результат которой равен 1, если только один из двух операндов равен 1 (в общем случае если во входном наборе операндов нечетное число единиц).

Пример:

unsigned char a = 14; // a = 0000 1110

unsigned char b = 9; // b = 0000 1001

unsigned char c, d, e, f;

c = a & b; // c = 8 = 0000 1000

d = a | b; // d = 15 = 0000 1111

e = ~a; // e = 241 = 1111 0001

f = a ^ b; // f = 7 = 0000 0111

Побитовые операции позволяют осуществлять установку и сброс отдельных битов числа. С этой целью используется маскирование битов.

Для установки определенного бита необходимо соответствующий бит маски установить в 1 и произвести операцию побитового логического ИЛИ с константой, представляющей собой маску:

unsigned char a = 3;

a = a | 0x04; // a = 7, бит 2 установлен

Для сброса определенного бита необходимо соответствующий бит маски сбросить в 0 и произвести операцию побитового логического И с константой, представляющей собой инверсную маску:

unsigned char a = 3;

a = a & (~0x02); // a = 1, бит 1 сброшен

Бинарные побитовые логические операции могут быть объединены с операцией присваивания:

объект &= выражение; // объект = объект & выражение

объект |= выражение; // объект = объект | выражение

объект ^= выражение; // объект = объект ^ выражение

Сдвиговые операции

Операции арифметического сдвига применяются в целочисленной арифметике и обозначаются как:

>> - сдвиг вправо;

<< - сдвиг влево.

Общий синтаксис осуществления операции сдвига:

объект = выражение сдвиг КоличествоРазрядов;

Пример:

unsigned char a=6; // a = 0000 0110

unsigned char b;

b = a >> 1; // b = 0000 0110 >> 1 = 0000 0011 = 3

Арифметический сдвиг целого числа вправо >> на 1 разряд соответствует делению числа на 2.

Арифметический сдвиг целого числа влево << на 1 разряд соответствует умножению числа на 2.

Круглые скобки

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

Date: 2016-05-16; view: 800; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию