2.主要工作 不产生可执行指令仅负责填表将被说明 对象的类型及相对存储位置记入各自的 符号表中
2. 主要工作 不产生可执行指令,仅负责填表,将被说明 对象的类型及相对存储位置记入各自的 符号表中
3.语义变量及过程 (1) Offset:相对位移量初值为0,是一个 全局变量 (2) T type:数据类型 (3) Twidth:数据宽度 (4) Denter语义过程将变量名及其类型 和相对存储位置记入符号表中
3. 语义变量及过程 (1)offset:相对位移量,初值为0,是一个 全局变量 (2)T.type:数据类型 (3)T.width:数据宽度 (4)enter:语义过程,将变量名及其类型 和相对存储位置记入符号表中
4.翻译方案 对一个程序来说,ose的初值为0,针对 这个赋初值的语义动作,引进了标记非 终结符M及空字产生式M→的归约 P→MD M→8{ offset:=0} D→D1D2 D1:T enter(iname, T type, offset) offset: =offset+T width j
4. 翻译方案 对一个程序来说,offset的初值为0,针对 这个赋初值的语义动作,引进了标记非 终结符M及空字产生式M→ε的归约。 P→M D M→ε {offset:=0} D→D1 ;D2 D→i:T { enter(i.name,T.type,offset); offset:=offset+T.width }