固定长度的符号表 ■有些语言对标识符有长度限制,如:不超 过8个字符,则可用固定长度(两个机器字) 的符号表 符号表 NAME INFORMATION SAMPE
固定长度的符号表 ◼ 有些语言对标识符有长度限制,如:不超 过8个字符,则可用固定长度(两个机器字) 的符号表
间接方式的符号表 ■有些语言对标识 符号丧 NA AME INFORMATION 符无长度限制或 者范围很宽,如: 100个字符,则都 用25个字很浪费, 口 ISAMPLELJoJoP 般引入一个字 符数组来存放有 关信息,在符号 符号表 表的地址栏存放 NAMB INFORMATION 对应的指针 I6(sAIMPLIE4lLlolol匚
间接方式的符号表 ◼ 有些语言对标识 符无长度限制或 者范围很宽,如: 100个字符,则都 用25个字很浪费, 一般引入一个字 符数组来存放有 关信息,在符号 表的地址栏存放 对应的指针
通过符号表访问内情向量 不同的符号,所需 NAME INFORMATION 信息空间长度不 CAT 地址 样,可把共同属性 放在符号表中,而 把特殊属性存放在 别的地方,在符号 内情向量表 表中设一个指针指 维效 首地 示信息的存放位置 界差dn 上界I 下昇u 土界ln 下界1n
通过符号表访问内情向量 ◼ 不同的符号,所需 信息空间长度不一 样,可把共同属性 放在符号表中,而 把特殊属性存放在 别的地方,在符号 表中设一个指针指 示信息的存放位置
个可存放N项的符号表在内存中可采用 下列两种方式之一(假设每项需要K个 字) 1.把每一项置于连续K个存储单元中,构成 张KN的表 2把整个符号表分成m个子表,如T1T2;Tm 每个子表含有N项
◼ 一个可存放N项的符号表在内存中可采用 下列两种方式之一(假设每项需要K个 字): 1. 把每一项置于连续K个存储单元中,构成 一张K*N的表 2. 把整个符号表分成m个子表,如T1 ,T2 ,…Tm, 每个子表含有N项
例: PASCAL程序段: PROCEDURE INCWAP(M, N: INTEGER) LABEL START VAR K: INTEGER BEGIN START K:=M+1 M:=N+4; N: =K END
例: PASCAL程序段: PROCEDURE INCWAP(M,N:INTEGER); LABEL START; VAR K:INTEGER; BEGIN START: K:=M+1; M:=N+4; N:=K; END