Читать курсовая по Отсутствует: "Синтаксический анализатор" Страница 3
- 1
- 2
- 3
- 4
- 5
- . . .
- последняя »
-
:=
:=ε|*|/
:=||(< простое выражение>)|
:=()
:=
:=ε| or
:=
:=ε|and
:=|()||not
:=
:=|=||=
.2 Описание семантики входного языкаПредставление данных различных типов в оперативной памяти
| Тип | Размер, байт | Диапазон значений |
| Integer | 2 | -32768..32767 |
| Char | 1 | -128…127 |
Входной язык также поддерживает ограниченный тип.
Ограниченный тип описывает множество чисел, находящихся между двумя значениями заданных константных выражений. Это множество должно быть перечислимым, следовательно, значения константных выражений должны быть целыми числами. Все результирующие и промежуточные (полученные на каком-то шаге вычисления) значения константных выражений должны соответствовать ограничениям, накладываемым на встроенный тип Integer. В случае несоответствия компилятор вернет ошибку компиляции.
Операции входного языка и их приоритет
Операции перечислены в порядке убывания приоритета. Операции выполняются без учета переполнения.
| Знак операции | Порядок выполнения и особенности использования | Семантический смысл |
| - | Слева направо, Унарный | Унарный минус, определен для числовых переменных, возвращает переменную такого же типа, что и получает. Меняет знак числа на противоположный. |
| * | Слева направо, Бинарный | Умножение, определено для числовых переменных. Результат вычисляется в наибольшем типе среди указанных операндов |
| / | Слева направо, Бинарный | Деление с отбрасыванием дробной части, определено для числовых переменных. Результат вычисляется в наибольшем типе среди указанных операндов |
| + | Слева направо, Бинарный | Сложение, определено для числовых переменных. Результат вычисляется в наибольшем типе среди указанных операндов |
| - | Слева направо, Бинарный | Вычитание, определено для числовых переменных. Результат вычисляется в наибольшем типе среди указанных операндов |
| =, , , = | Слева направо, Бинарный | Операции сравнения, определены для числовых переменных. Необходимы только для формирования условия |
| not | Слева направо, Унарный | Логическое НЕ, определено для операций сравнения. Необходимо только для формирования условия |
| and | Слева направо, Бинарный | Логическое И, определено для операций сравнения. Необходимо только для формирования условия |
| or | Слева направо, Бинарный | Логическое ИЛИ, определено для операций сравнения. Необходимо только для формирования условия |
Конструкции входного языка
Оператор цикла с постусловием repeat-until.
:= repeat until 1. Выполняется оператор (Тело цикла).
2. Вычисляется условие.
. Выполняется переход на пункт 1 в случае, если условие не выполнилось.
Оператор присваивания:=
:=:=
1. Вычисляется выражение, стоящее справа от знака присваивания
2. В случае, если результат получился того же типа, что и переменная, в нее заносится новое значение, иначе результат
- 1
- 2
- 3
- 4
- 5
- . . .
- последняя »
Похожие работы
Интересная статья: Основы написания курсовой работы

(Назад)
(Cкачать работу)