in Compiler Design edited by
1,440 views
2 votes
2 votes

Match the following with respect to activation record fields:

A 1 → A, D; 2 → B, C

B 1 → A, C; 2 → B, D

C 1 → B, C; 2 → A, D

D 1 → B, D; 2 → A, C

Doubt:- Control link points to caller activation record.Can some one confirm?

in Compiler Design edited by
1.4k views

4 Comments

I misunderstood you first comment as that you are suggesting a as the answer.:(

If A calls B, now according to given in question A control link points to B

but shoudn't it be  B control link point to A

See https://www.cs.nmsu.edu/~rth/cs/cs471/f00/ARIs.html

"The dynamic link points to the top of the ARI of the caller." So B control link point to A.Why is this not correct?

0
0

According to question it simple says control link point to calling procedure like if A calls B then Control link from B points to A since A is calling procedure. B is called procudre so Control link to calling procedure or from called procedure.

Always calling procedure is pointing

3
3
thanks got that now.
1
1

4 Answers

0 votes
0 votes
Control link is a dynamic link +

Control link pointing to the caller

 

Hence Answer=B
0 votes
0 votes
Answer b: 1-A,C 2- B,D

Access link(static link) refers to non local data held on activation record.

Control link(dynamic link): point to activation record of caller.
0 votes
0 votes

control link from record A points to the previous record on the stack. The chain of control links traces the dynamic execution of the program.

An access link from record A points to the record of the closest enclosing block in the program. The chain of access links traces the static structure (think: scopes) of the program.

Source: https://www.cs.hmc.edu/~benw/teaching/notes/activation.html

1 => A, C

2 => B, D

0 votes
0 votes
1- option A and C

2- option B and D

Related questions