Use the grammar you have created in Question 1 for an infix expression and using the technique: Syntax Directed Definition write appropriate semantic rules to convert an infix expression of that grammar to a prefix expression. Precedence of operators are given below (high to low): () *, / +, - = Associativity of operators are given below: +, , *, / [Left Associative] = [Right Associative] Taking into account the precedence and the associativity of the operators in this question, if any modification is needed for your grammar in Question 1 to be used in this question, do it. After the necessary modification(s), a) write the semantic rules for infix to prefix conversion b) draw the annotated parse tree for the string: a=b/(c–d)*(x+y)
Use the grammar you have created in Question 1 for an infix expression and using the
technique: Syntax Directed Definition write appropriate semantic rules to convert an infix
expression of that grammar to a prefix expression.
Precedence of operators are given below (high to low):
()
*, /
+, - =
Associativity of operators are given below:
+, , *, / [Left Associative]
= [Right Associative]
Taking into account the precedence and the associativity of the operators in this question,
if any modification is needed for your grammar in Question 1 to be used in this question,
do it. After the necessary modification(s),
a) write the semantic rules for infix to prefix conversion
b) draw the annotated parse tree for the string: a=b/(c–d)*(x+y)
Step by step
Solved in 2 steps with 1 images