Question
Use the TINY grammar for your project presentation, answer the following questions: program -> stmt-seq stmt->seq -> stmt-seq;stmt | stmt stmt -> if-stmt|repeat-stmt|assign- stmt|read-stmt |
Use the TINY grammar for your project presentation, answer the following questions:
program -> stmt-seq
stmt->seq -> stmt-seq;stmt | stmt
stmt -> if-stmt|repeat-stmt|assign- stmt|read-stmt | write-stmt
if-stmt ->if exp then stmt-seq end
| if exp then stmt-seq else stmt-seq end
repeat-stmt ->repeat stmt-seq until exp
assign-stmt -> id:= exp
read-stmt -> read id
write-stmt -> write exp
exp -> simp-exp cop simp-exp |simp-exp
cop -> < | =
simp-exp -> simp-exp addop term |term
term -> term mulop factor | factor
Factor -> (exp) |num |id
(a) Draw the syntax tree for the program: read x; read y; if x=y then write x; repeat y:= x+1 until x=y ; write y (b) What is the first and follow set for program, stmt-sequence, simple-exp, and write-stmt (tabulate your answers) (c) Use the TINY machine language, write the code to multiply three integers (d) What does LDA 7, 1(0) mean?
Can you please answer this question separately. this is from the compiler theory subject
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started