Приоритет операций

   
На этом шаге мы рассмотрим порядок выполения операций.

   
Последовательность выполнения операций определяется тремя факторами:

  • приоритетом операций;
  • порядком расположения операций в выражении;
  • использованием скобок.

   
По приоритету все операции делятся на четыре группы. Операции первого (высшего) приоритета выполняются в первую очередь.
Операции четвертого (низшего) приоритета выполняются в последнюю очередь. Операции с равным приоритетом выполняются слева направо,
но иногда компилятор для генерации более оптимального кода может переупорядочить операнды. Скобки служат для изменения обычного
порядка обработки операций. Подвыражение, заключенное в скобки, сначала вычисляется как отдельный операнд, а затем его результат используется
для выполнения операций, обрамляющих скобки. В Object Pascal приоритет операций отражен непосредственно в синтаксисе языка.

Таблица 1. Приоритет операций

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

   

   
Операции as и is являются нововведением языка Object Pascal.

   
Примеры сложных выражений.

    А *  (((X  - Y / Z) * 3 + 5) / (В + С) - D * Е) - 14 
    (А <> В) and ((I  <  J) or (J < К)) and (С in D)

   
На следующем шаге мы дадим классификацию операций.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий