代表范围信息的类型是什么?

表示作用域信息是一个概念,其中每个变量名的作用域都保存在符号表中,以便我们可以在不同的块和不同的位置使用相同的名称。代表符号表中的名称以及它出现的块的指示符。

假设我们在块 A 中有一个变量名“a”,而在块 B 中有相同的变量。假设它可以在没有块信息的情况下将“a”存储在符号表中。在这种情况下,它只会保留它遇到的第一个 'a' 实例,因此为了解决这个问题,名称以对(变量名称,块名称)的形式存储,以便可以在不同的块中使用相同的名称和程序。

有两种表示范围信息的方法,如下所示 -

数字范围表示

它将所有值存储在一个符号表中。

相同的名称可以在不同的块或过程中多次声明为不同的名称。

因此,每个过程或块都可以被赋予一个唯一的编号。

符号表不仅仅包含标识符的名称,而且每个条目都有一对(名称,过程编号)。

我们可以通过不仅匹配标识符的名称而且匹配它所属的过程号来识别过程中的特定标识符。

每个块或过程将被分配一个编号。

例子

下面显示了符号表的配置,即用相应的程序或块号填充标识符。

在这里,标识符或名称将属于声明该标识符或过程的最紧密嵌套的活动子程序。

按块或位置表示范围

  • 它为每个作用域块或过程创建一个单独的表。

  • 可以轻松插入具有相同名称的多个标识符,因为相同名称的变量将在单独的块中共享。

  • 我们不能在同一个块或过程中有两个具有相似名称的变量。

  • 每个过程或子程序将具有其内容的不同表表示。搜索标识符时,将匹配正确的表,即子程序或过程号和标识符名称。

  • 这种方法更可靠,更容易理解。

以上是 代表范围信息的类型是什么? 的全部内容, 来源链接: utcz.com/z/363457.html

回到顶部