ВНИМАНИЕ! Конкурс по программированию!
Проект Programmers.kz и школа hotPen3D2D предлагает Вам курсы по веб-дизайну, веб-программированию и компьютерной графике. Подробности здесь.
- Просмотров: 1610
- Автор: КазКиберГетик
Построение выражений
Категория: Программирование » Pascal / Turbo Pascal » Уроки Pascal
Выражения -
численные, логические и адресные: правила построения
Выражения
Выражения на Pascal'е бывают двух видов правильно построенные и нецензурные (не пропускаемые цензурой). За обнаружение последних отвечает компилятор, а за удаление - программист. Рассмотрим правила построения (правильных) выражений.
Главным свойством выражений является возможность иметь значение, которое может быть проанализировано или присвоено некоторой переменной.
Выражения делятся по типу значения на следующие типы:
| численные (целочисленные и дробные); | |
| логические; | |
| символьные; | |
| типа указатель. |
Рассмотрим правила нотации, а затем - правила построения каждого из этих типов. Фраза вида
будет означать, что <определяемое_понятие> по определению состоит либо из конкатенации <понятия1> и <понятия2> или из <понятия3> (1). В принципе, используя такую (или похожую нотацию), можно задать любую (контекстно-свободную) грамматику, в том числе и весь язык программирования.
Итак, численное выражение по определению есть (2)
<ч_знач> ::
<ч_опер> ::
В первом определении численные значения стоящие справа и слева от операции называются операндами. Cтоит отметить следующие моменты
| тип реультата деления всегда дробный, вне зависимости от тиов операндов; | |
| тип операндов у операций mod и div всегда целый; целым является и значение результата; | |
| тип результата операций +, -, * целый, если оба операнда целые, и дробный в противном случае; | |
| функции pred и succ применимы только к выражениям ординарных типов; | |
| любое выражение и значение может быть заключено в скобки без нарушения синтаксической корректности. |
Логическое выражение по определению есть
<л_знач> ::
<л_опер> ::
<результат_сравнения> ::
<знак_операции> ::
Знаки имеют тот же смысл, что и слова их прочтения: меньше, больше, меньше (или) равно... Знак <> означает "не равно". Результат сравниния равен True, если выражения стоящие по бокам находятся в отношении, определяемом знаком_операции и False - в противном случае. Выражения при этом должны быть сравнимыми.
Адресное выражение по определению есть
Здесь <объект> - идентификатор любого объекта, занимающего некоторое место в памяти (то есть обладающего адресом) - переменной, типизированной константы, процедуры или функции. Параметры у функции New зависят от типа создаваемого объекта. Каждое <число> в параметрах Ptr должно быть совместимо с типом Word.
<!--msthemeseparator-->![]()
(1) Наверх Более уместно вместо слова "выражение" использовать слово "терм".
(2) Наверх Сокращения следующие
| выр - выражение; | |
| конст - константа: непосредственная или ее идентификатор; | |
| перем - идентификатор переменной; | |
| знач - значение; | |
| функ - вызов функции; |
Префиксы сокращений имеют следующий смысл
| ч_ - численный; | |
| ц_ч_ - целочисленный; | |
| л_ - логический; | |
| ук_ - типа указатель. |
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.




