Есть грамматика. Я хочу найти транслятор (ЯП ---> assembler) с максимально похожим синтаксисом. Может кто знает источники.
Называется язык ASPLE-4
-------ГРАММАТИКА---------------------------------------------------
::= <программа>
<программа> ::= BEGIN <посл. операторов> END
<посл. операторов> ::= <оператор>
<посл. операторов> ::= <оператор> ; <посл. операторов>
<оператор> ::= <оператор присв.>
<оператор> ::= <оператор цикла>
<оператор> ::= <усл.оператор>
<оператор> ::= <оператор обмена>
<оператор присв.> ::= <идент.> := <выражение>
<усл.оператор> ::= IF <сравнение> THEN <посл. операторов> ELSE <посл. операторов> FI
<оператор цикла> ::= WHILE <выражение> DO <посл. операторов> END
<оператор обмена> ::= INPUT <список идент.>
<оператор обмена> ::= OUTPUT <выражение>
<список идент.> ::= <идент.>
<список идент.> ::= <идент.> , <список идент.>
<выражение> ::= <фактор>
<выражение> ::= <выражение> + <фактор>
<выражение> ::= <выражение> - <фактор>
<фактор> ::= <первичное>
<фактор> ::= <фактор> * <первичное>
<первичное> ::= <идент.>
<первичное> ::= <константа>
<первичное> ::= ( <выражение> )
<первичное> ::= ( <сравнение> )
<сравнение> ::= <выражение> == <выражение>
<сравнение> ::= <выражение> << <выражение>
<сравнение> ::= <выражение> >> <выражение>
<сравнение> ::= <выражение> <> <выражение>
<константа> ::= <логич. константа>
<константа> ::= <число>
<логич. константа> ::= TRUE
<логич. константа> ::= FALSE
<число> ::= <цифра>
<число> ::= <число> <цифра>
<цифра> ::= 0
<цифра> ::= 1
<цифра> ::= 2
<цифра> ::= 3
<цифра> ::= 4
<цифра> ::= 5
<цифра> ::= 6
<цифра> ::= 7
<цифра> ::= 8
<цифра> ::= 9
<идент.> ::= <буква>
<идент.> ::= <идент.> , <буква>
<буква> ::= H
<буква> ::= I
<буква> ::= J
<буква> ::= K
<буква> ::= L
<буква> ::= M
<буква> ::= N
-
Вопрос задан
-
382 просмотра