Question: 2 Lexical Scoping This problem uses the following procedure. This procedure uses static (lexi- cal) scoping procedure main() int a; procedure proc1(int i): int b;

2 Lexical Scoping This problem uses the following procedure. This procedure uses static (lexi- cal) scoping procedure main() int a; procedure proc1(int i): int b; procedure recursion(int k) print b; b=b-1; recursion(k *b); else: end recursion b=b+i; recursion (1); end proc1 proc1(4); print a; end main (a) What does this procedure print? (Give the output of procedure main().) b) Rewrite the procedure main() where each variable (argument vari- ables, declared variables, procedure names) is renamed by their (level offset) pairs (c) How does procedure proc! find variable a in instruction b a + 1;? Show the RISC instructions corresponding to the high-level instruc- tion b a + 1; in this procedure. You should use the same ILOC instruction format as used in class
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
