Storage binding and symbolic registers
. Translates variable names into addresses
. This process must occur before or during code generation
. each variable is assigned an address or addressing method
. each variable is assigned an offset with respect to base which changes with every invocation
. variables fall in four classes: global, global static, stack, local (non-stack) static
The variable names have to be translated into addresses before or during code generation. There is a base address and every name is given an offset with respect to this base which changes with every invocation. The variables can be divided into four categories:
a) Global Variables
b) Global Static Variables
c) Stack Variables
d) Stack Static Variables
|