标签:ar for sp 设计 r 程序 bs 字符串 信息
词法分析器的主要任务是读入源程序的输入字符、将它们组成词素,生成并输出一个词法单元序列,每个词法单元对应于一个词素。
当词法分析器发现了一个标识符的词素时,要将这个词素添加到符号表中。
其他任务:
词法分析器的两个级联的处理阶段:
把编译部分分为词法分析和语法分析的原因:
三个术语:
大部分词法单元的类别:
属性:如果有多个词素可以和一个模式匹配,那么词法分析器向编译器的后续阶段提供有关被匹配词素的附加信息。
词法错误的恢复动作:
恐慌模式恢复:从剩余的输入中不断删除字符,直到词法分析器能够在剩余输入的开头发现一个正确的词法单元为止。
在缓冲区为输入维护两个指针:
lexemeBegin指针:该指针指向当前词素的开始处。当前我们正试图确定这个词素的结尾。
forward指针:一直扫描,直到发现某个模式被匹配为止。
一旦确定了下一个词素,forward指针将指向该词素结尾的字符。词法分析器记录属性并返回词法单元。然后使lexemeBegin指针指向刚刚找到的词素之后的一个字符。
forward指针到达缓冲区末尾时,向缓冲区读入新的字符。
可以在缓冲区末尾添加哨兵标记。
标签:ar for sp 设计 r 程序 bs 字符串 信息
原文地址:http://www.cnblogs.com/zinthos/p/3963007.html