TURBO PASCAL |
Новости
|
Глава 6. ВыраженияВыражения состоят из операций и операндов. Большинство опе- раций в языке Паскаль являются бинарными, то есть содержат два операнда. Остальные операции являются унарными и содержат только один операнд. В бинарных операциях используется обычное алгебраи- ческое представление, например: a+b. В унарных операциях операция всегда предшествует операнду, например: -b. В более сложных выражениях порядок, в котором выполняются операции, соответствует приоритету операций (см. Таблицу 6.1). Старшинство операций Таблица 6.1 ┌────────────────────┬─────────────────────┬────────────────────┐ │ Операция │ Приоритет │ Вид операции │ ├────────────────────┼─────────────────────┼────────────────────┤ │ @, not │ первый (высший) │ унарная операция │ ├────────────────────┼─────────────────────┼────────────────────┤ │ *, /, div, mod, │ второй │ операция умножения,│ │ and, shl, shr │ │ деления, сдвига... │ ├────────────────────┼─────────────────────┼────────────────────┤ │ +, -, or, xor │ третий │ операция сложения │ ├────────────────────┼─────────────────────┼────────────────────┤ │ =, <>, <, >, │ четвертый (низший) │ операция отношения │ │ <=, >=, in │ │ │ └────────────────────┴─────────────────────┴────────────────────┘ Для определении старшинства операций имеется три основных правила: 1. Во-первых, операнд, находящийся между двумя операциями с различными приоритетами, связывается с операцией, имею- щей более высокий приоритет. 2. Во-вторых, операция, находящаяся между двумя операциями с равными приоритетами, связывается с той операцией, ко- торая находится слева от него. 3. В-третьих, выражение, заключенное в скобки, перед выпол- нением вычисляется, как отдельный операнд. Операции с равным приоритетом обычно выполняются слева-нап- раво, хотя иногда компилятор при генерации оптимального кода мо- жет переупорядочить операнды. |
(с)Все права защищены По всем интересующим вопросам прошу писать на электронный адрес |