TURBO PASCAL |
Новости
|
Синтаксис выраженийПравила, определяющие порядок выполнения операций, вытекают из синтаксиса выражений, которые строятся из множителей, термов и простых выражений. Множитель имеет следующий синтаксис: ┌───────────────┐ множитель ───┬──────────────>│ ссылка на ├───────────> │ │ переменную │ ^ │ └───────────────┘ │ │ ┌─────────┐ │ ├────>│константа├──────────────────────┤ │ │без знака│ │ │ └─────────┘ │ │ ┌───┐ ┌─────────┐ ┌───┐ │ ├────>│ ( ├────>│выражение│───>│ ) ├───┤ │ └───┘ └─────────┘ └───┘ │ │ ┌───┐ ┌─────────┐ │ ├────>│not├────>│множитель├────────────┤ │ └───┘ └─────────┘ │ │ ┌────┐ ┌─────────┐ │ ├────>│знак├───>│множитель├────────────┤ │ └────┘ └─────────┘ │ │ ┌─────────┐ │ ├────>│ вызов ├──────────────────────┤ │ │ функции │ │ │ └─────────┘ │ │ ┌───────────┐ │ ├────>│конструктор├────────────────────┤ │ │ множества │ │ │ └───────────┘ │ │ ┌───────────┐ │ ├────>│ адресный ├────────────────────┤ │ │ множитель │ │ │ └───────────┘ │ │ ┌──────────────┐ │ └────>│ приведение ├─────────────────┘ │типа значения │ └──────────────┘ Вызов функции активизирует функцию и представляет собой зна- чения, возвращаемые функцией (см. далее в этой главе раздел "Вы- зовы функций"). Описатель множества представляет собой значение множественного типа (см. раздел, озаглавленный, как "Описание множеств"). Приведение типа изменяет тип значения (см. "Приведе- ние типа"). Адресный множитель вычисляет адрес переменной, процедуры, функции или метода. См. раздел "Операция @". Беззнаковая константа имеет следующий синтаксис: ┌─────────┐ константа без знака ───┬────>│ число ├─────────────> │ │без знака│ ^ │ └─────────┘ │ │ ┌──────────┐ │ ├────>│символьная├────────┤ │ │ строка │ │ │ └──────────┘ │ │ ┌─────────────┐ │ ├────>│идентификатор├─────┤ │ │ константы │ │ │ └─────────────┘ │ │ ┌───┐ │ └────>│nil├───────────────┘ └───┘ Некоторые примеры множителей могут включать в себя: Х { ссылка на переменную } @Х { указатель на переменную } 15 { константа без знака } (Х+Y+Z) { подвыражение } SIN(Х/2) { вызов функции } ['0..''9','А'..'Z'] { описатель множества } not Done { отрицание булевской переменной } сhar(Digit+48) { назначение типа } Термы используются в операциях умножения на множитель: ┌─────────┐ терм ────────>│множитель├───┬──────> ^ └─────────┘ │ │ ┌───┐ │ ├─────┤ * │<────────┤ │ └───┘ │ │ ┌───┐ │ ├─────┤ / │<────────┤ │ └───┘ │ │ ┌───┐ │ ├─────┤div│<────────│ │ └───┘ │ │ ┌───┐ │ ├─────┤mod│<────────│ │ └───┘ │ │ ┌───┐ │ ├─────┤and│<────────│ │ └───┘ │ │ ┌───┐ │ ├─────┤shl│<────────│ │ └───┘ │ │ ┌───┐ │ └─────┤shr│<────────┘ └───┘ Приведем несколько примеров термов: Х * Y Z / (1 - Z) Done or Error (Х <= Y) and (Y < Z) В простых выражениях к термам применяются операции сложения и присваивания знака: ┌───────┐ простое выражение ────────>│ терм ├───┬────> ^ └───────┘ │ │ ┌───┐ │ ├─────┤ + │<──────┤ │ └───┘ │ │ ┌───┐ │ ├─────┤ - │<──────┤ │ └───┘ │ │ ┌───┐ │ ├─────┤ or│<──────│ │ └───┘ │ │ ┌───┐ │ └─────┤xor│<──────┘ └───┘ Приведем несколько примеров простых выражений: Х + Y -Х Hue1 + Hue2 I * J + 1 В выражениях к простым выражениям применяются операции отно- шения. ┌─────────┐ выражение ────>│ простое ├──┬───────────────────────────────> │выражение│ │ ^ └─────────┘ │ ┌───┐ ┌─────────┐ │ ├─>│ < ├──────>│ простое ├──┘ │ └───┘ ^ │выражение│ │ ┌───┐ │ └─────────┘ ├─>│<= ├──┤ │ └───┘ │ │ ┌───┐ │ ├─>│ > ├──┤ │ └───┘ │ │ ┌───┐ │ ├─>│>= ├──┤ │ └───┘ │ │ ┌───┐ │ ├─>│ = ├──┤ │ └───┘ │ │ ┌───┐ │ ├─>│<> ├──┤ │ └───┘ │ │ ┌───┐ │ └─>│in ├──┘ └───┘ Приведем некоторые примеры выражений: Х = 1.5 Done <> Error (I < J) = (J < К) C in Huel |
(с)Все права защищены По всем интересующим вопросам прошу писать на электронный адрес |