Последовательность выполнения операций в выражении соответствует порядку записи операторов слева направо. Изменить последовательность выполнения операций с помощью программирования выражений в скобках нельзя, поскольку языком макропрограммирования не предусмотрено использование скобок в выражении.
Выполнение операторов в выражении производится в соответствии с их приоритетом. Те операторы, приоритет которых выше, выполняются первыми.
Операторы, имеющий равный приоритет, выполняются в порядке их записи в выражении слева направо (за исключением оператора передачи управления).
Приоритет операторов возрастает в следующем порядке от низшего к высшему:Если в выражении запрограммировано несколько операторов передачи управления, то выполняется только последний оператор передачи управления. Тип оператора передачи управления влияния на приоритет не оказывает.
Подробнее последовательность выполнения операций рассмотрена в примерах.
Это выражение фактически эквивалентно набору из шести элементарных выражений 1 - 6. То есть, последовательность выполнения операций будет следующая.
Первы выполняется оператор присвоения и параметру #1 присвоится число 2.
Затем выполнится оператор сложения и к величине параметра #1 добавится величина параметра #2, результат останется в параметре #1, то есть присвоение произойдёт неявно.
После чего из содержимого параметра #1 вычтется число 10, результат будет в параметре #1.
Четвёртой операцией будет умножение содержимого параметра #1 на содержимое параметра #3. Результат будет в параметре #1.
Следующей выполнится операция установки четвёртого и второго разрядов в параметре #1 (20 (десятичное) - 10100 (двоичное)). После этого будет вычислен SIN30. Результат деления будет находиться в параметре #1.
Таким образом, в параметре #1 окажется результат выполнения операций, запрограммированных справа от оператора присвоения.
Допустим, параметрРезультаты выполнения операций в параметре #1:
Из приведённого примера видно, что операторы умножения и деления приоритета над операторами сложения и вычитания не имеют.
Пример: