Операции в алгоритмических языках программирования


Операция, это способ обработки данных, который приводит к вычислению нового данного – результата операции. Например, операция сложения (A+B) вычисляет сумму, операция «унарный минус» (-A) изменяет знак числа на противоположный.

Операции задаются знаками операций (+,-,* и т.п.) и выполняются над операндами. В соответствии с количеством операндов различают унарные (с одним операндом), бинарные (с двумя операндами), тернарные (с тремя операндами) и т.д. В Паскале-подобных языках применяются только унарные и бинарные операции, при этом знак операции записывается перед операндом и между операндами.

К каждому типу или группе типов данных применим свой набор операций. Поскольку набор знаков операций ограничен, некоторые их них (например, «+») могут обозначать разные операции в зависимости от типов операндов. В некоторых алгоритмических языках (например, языки С, С++) возможна «перегрузка» операций, при которой программист может сам задавать знакам операций новые способы обработки данных. В Паскале-подобных языках такая возможность отсутствует.

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

Выражения


Выражения состоят из операций и операндов. В выражениях используется обычное алгебраическое представление, например: A + B - С*(А-В).

Порядок, в котором выполняются операции, соответствует приоритету операций

Операторы Приоритет Категория
@, not первый (высший) унарные операторы
*, /, div, mod, and, shl, shr второй операторы умножения
+, -, or, xor третий операторы сложения
=, <>, <, >, четвертый операторы отношения
<=, >=, in (низший)  


Для определения старшинства операций имеется три основных правила:

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

2. Операнд, находящийся между двумя знаками операций с равными приоритетами, связывается с операцией, знак которой находится слева от него.

3. Выражение, заключенное в скобки, перед выполнением вычисляется, как отдельный операнд.

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

Операции подразделяются на арифметические, логические, строковые, операции над множеством, операции отношения и операция получения адреса@.
^


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: