Use the TINY grammar for your project presentation, answer the following questio
ID: 3833583 • Letter: U
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 | 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
Explanation / Answer
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
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.