1
You visited us 1 times! Enjoying our articles? Unlock Full Access!
Question

# Consider the following expression grammar. The semantic rules for expression calculation are stated next to each grammar production. E→number E.val=numbe.val ∣∣ E'+'E E(1).val=E(2).val+E(3).val∣∣E '×'E E(1).val=E(2).val×E(3).val; Assume the conflicts in Part (a) of this question are resolved and an LALR(1) parser is generated for parsing arithmetic expressions as per the given grammar. Consider an expression 3 × 2 + 1. What precedence and associativity properties does the generated parser realize?

A
Equal precedence and right associativity; expression is evaluated to 9
Right on! Give the BNAT exam to get a 100% scholarship for BYJUS courses
B
Precedence of '×' is higher than that of '+', and both operators are left associative; expression is evaluated to 7
No worries! We‘ve got your back. Try BYJU‘S free classes today!
C
Equal precedence and left associativity; expression is evaluated to 7
No worries! We‘ve got your back. Try BYJU‘S free classes today!
D
Precedence of '+' is higher than that of '×', and both operators are left associative; expression is evaluated to 9
No worries! We‘ve got your back. Try BYJU‘S free classes today!
Open in App
Solution

## The correct option is A Equal precedence and right associativity; expression is evaluated to 9SR conflict is resolved in favour of shift. All operators are shifted and evaluated from right end, because × and + have equal precedence. Hence, × and + follows right associatively. 3 × 2 + 1 = 3 × 3 = 9

Suggest Corrections
0
Join BYJU'S Learning Program
Related Videos
Multiplication of Matrices
MATHEMATICS
Watch in App
Join BYJU'S Learning Program