Implementation of Syntax directed translation
Syntax direct translation is implemented by constructing a parse tree and performing the actions in a left to right depth first order.
SDT is implementing by parse the input and produce a parse tree as a result.
Example
| Production | Semantic Rules |
|---|---|
| S → E $ | { printE.VAL } |
| E → E + E | {E.VAL := E.VAL + E.VAL } |
| E → E * E | {E.VAL := E.VAL * E.VAL } |
| E → (E) | {E.VAL := E.VAL } |
| E → I | {E.VAL := I.VAL } |
| I → I digit | {I.VAL := 10 * I.VAL + LEXVAL } |
| I → digit | { I.VAL:= LEXVAL} |
Parse tree for SDT:

Fig: Parse tree

No comments:
Post a Comment