词法分析
词法分析的任务
- 词法分析的任务
- 从左至右逐个字符地对源程序进行扫描,产生一个个单词符号
- 词法分析器(Lexical Analyzer)
- 扫描器(Scanner)
- 执行词法分析的程序
词法分析器的功能
- 功能
- 输入源程序、输出单词符号
- 单词符号的种类
- 基本字:如 begin,repeat,for,...
- 标识符:用来表示各种名字,如变量名、数组名和过程名
- 常数:各种类型的常数
- 运算符:
- 界符:逗号、分号、括号和空白
词法分析器的输出
- 输出的单词符号的表示形式
- (单词种别,单词自身的值)
- 单词种别通常用整数编码表示
- 若一个种别只有一个单词符号,则种别编码就代表该单词符号。假定基本字、运算符和界符都是一符一种。
- 若一个种别有多个单词符号,则对于每个单词符号,给出种别编码和自身的值。
- 标识符单列一种;标识符自身的值表示成按机器字节划分的内部码
- 常数按类型分种;常数的值则表示成标准的二进制形式