Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

ПРИЛОЖЕНИЕ 2. Правила грамматики входного языка



Правила грамматики входного языка

1. <программа>::= РRОGRАМ <имя программы>; VAR <список описаний>

BEGIN <список операторов> END.

2. <имя программы>::=ИМЯ

3. <список описаний>::=<описание>;{<описание>;}

4. <описание>::=<список имён>:<тип>

5. <тип>::= INTEGER | REAL

6. <список имён>::=ИМЯ{,ИМЯ}

7. <список операторов>::=<оператор>;{<оператор>;}

8. <оператор>::=<непомеченный оператор> | <метка>:<непомеченный оператор>

9. <непомеченный оператор>::==<присваивание> | <ввод> | <вывод> | <условный оператор> | <цикл> | <оператор перехода>

10. <присваивание>::=ИМЯ:=<выражение>

11. <выражение>::=<простое выражение> | <простое выражение> = | <>| < | > | <= | >= <простое выражение>

12. <простое выражение>:: =<терм>{+<терм> | -<терм>}

13. <терм>::=<множитель>{*<множитель> |/<множитель>

14.<множитель>::=ИМЯ | ЦЕЛОЕ | ВЕЩЕСТВЕННОЕ | (<простое выражение>)

15. <ввод>::=READ(<список имен>)

16. <вывод>::=WRIТЕ(<список имён>)

17. <условный оператор>::= IF <выражение> THEN <оператор> | IF <выражение> THEN <оператор> ELSE <оператор>

18. <цикл>::= FOR <индексное выражение> DO <тело цикла>

19. <индексное выражение>::=ИМЯ:=<выражение> ТО <выражение>

20. <тело цикла>::=<оператор> | BEGIN <список операторов> END

21. <оператор перехода>::= GOТО <метка>

22. <метка>::=ЦЕЛОЕ

В грамматике помимо общепринятых используются следующие терминальные символы: ИМЯ - любая последовательность латинских букв и арабских цифр длиной не более восьми символов, начинающаяся с буквы; ЦЕЛОЕ – целая константа; ВЕЩЕСТВЕННОЕ – вещественная константа.





Дата публикования: 2015-04-10; Прочитано: 233 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...