Question: Consider the following pseudocode, assuming nested subroutines and static scope. procedure main g: integer; procedure B(a: integer) x: integer; procedure A(n: integer) g:=n; procedure R(m:

Consider the following pseudocode, assuming nested subroutines and static scope. procedure main g: integer; procedure B(a: integer) x: integer; procedure A(n: integer) g:=n; procedure R(m: integer) write integer(x); x:= x/2; - integer division if x > 1 then R(m + 1) else A(m); - body of B x:=a + 7; R(i); - body of main B(3); write integer(g); (a) What does this program print? (b) Show the frames on the stack when A has just been called. For each frame, show the static and dynamic links. (c) Explain how A finds g
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
