zoukankan      html  css  js  c++  java
  • 1.4-1.5

    1.4

    1)记号(token)

      一个符号,一个字符或字符串或一个及多个数字都可以成为一个token。扫描程序把源代码读入并以token的形式记录下来,以便后面的程序进行工作

    2)语法树(syntax tree)

      是一个以指针链接起来的树结构,每个节点都是一个记录类型,该记录类型存储语法分析程序及语义分析程序生成的信息。

    3)符号表(symbol table)

      与标识符及类型有关。诸如函数,变量,常量或数据类型。因为从扫描程序到优化程序都需要对它作出修改,因此需要很快的插入、删除、访问速度,杂凑表是唯一满足要求的数据结构。

    4)常数表(literal table)

      存储常数,与符号表类似,它需要很快的访问和插入速度,但不需要删除,因为每个程序所产生的常数在该表中仅出现一次,不必修改。

    5)中间代码(intemediate code)

      根据中间代码的类型和优化的类型,它的数据结构选择有很多,诸如文本串的数组、临时文本文件或是结构的连接列表。对于复杂的优化程序,应该选择允许简单重组的结构。

    6)临时文件(temporary file)

      用于编译器存储源代码及中间生成的信息等。也用于代码反填:比如if...else...语句中,在未获知else的位置之前就要跳到else的位置去,需要临时文件(不懂)。

  • 相关阅读:
    POJ2777
    链表
    模板
    poj 3468(线段树)
    用react编写一个hello world
    用express快速写一个hello world
    naturalWidth与naturalHeight
    div里面的图片垂直居中
    js将网址转为二维码并下载图片
    记一个视频播放器插件 video.js
  • 原文地址:https://www.cnblogs.com/kangyun/p/4331557.html
Copyright © 2011-2022 走看看