program program_body
or CLEAR program_body
or program_body FORCE
or CLEAR program_body FORCE
program_body statement
or program_body statement
statement compound_statement
or simple_statement
or if_statement
if_statement IF relational_expression THEN statement
or IF relational_expression THEN statement ELSE statement
compound_statement DO statement_list END
statement_list statement
or statement_list ; statement
simple_statement function
or simple_statement function
relational_expression expression
or expression RELOP expression
expression term
or expression ADDOP term
term factor
or term MULOP factor
factor id
or (relational_expression)
or factor
or SIGN factor
id constant
or address
or function
or CHARACTER_STRING
constant BINARY_NUMBER
or DECIMAL_NUMBER
or HEXADECIMAL_NUMBER
address expression %
or expression GR
or expression FR
function VARIABLE_NAME
or VARIABLE_NAME (parameter-list)
parameter-list cprameter-item
or cprameter-list , parameter-item
parameter-item relational_expression
SIGN + or -
ADDOP + or - or OR
MULOP * or / or AND
RELOP EQ or NE or LT or GT or LE or GE