单词符号的输出形式p51 二元式(单词种别,属性值) 口属性值单词符号特性的值。 口一个种别只含一个单词符号,不需属性值。 关键字if (“if”,-) 关键字then(“then”,) 口一个种别含有多个单词符号,为区别各个单词符 号需要属性值。 口表示方法常用常数的值,标识符的名字表示。 变量i(1,指向i的符号表项的指针) 关键字if (3,“f”) 关键字then (3,“then”) 25.4.3 ☒6
25.4.3 6 属性值 单词符号特性的值。 一个种别只含一个单词符号,不需属性值。 关键字 if (“if” ,_ ) 关键字 then (“then” ,_ ) 一个种别含有多个单词符号,为区别各个单词符 号需要属性值。 表示方法 常用常数的值,标识符的名字表示。 变量 i (1,指向i的符号表项的指针) 关键字 if (3,“if”) 关键字 then (3,“then”) 单词符号的输出形式 p51 二元式(单词种别,属性值)
例C++代码段及对应的单词符号序列 whi1e(i>=10)i-; 单词 输出表示 1 while (3,“while”) 2( (5, “(”) 3 i (1, 指向i的符号表项的指针) 4 >= (4,>=) 5 10 (2,“10”) 6 (5,“)”) 7 i (1,指向i的符号表项的指针) 8 (4,-) 9 (5,;) 25.4.3 ☒D7
25.4.3 7 例 C++代码段及对应的单词符号序列 while (i>=10) i-; 单词 输出表示 1 while (3, “while”) 2 ( (5, “(”) 3 i (1,指向i的符号表项的指针) 4 >= (4,>=) 5 10 (2, “10”) 6 ) (5, “)”) 7 i (1,指向i的符号表项的指针) 8 - - (4,- -) 9 ; (5,;)
词法分析器的组织方法p50-51 作为单独的一遍,在语法分析前进行。 与语法分析结合在一起作为一遍。 作为语法分析程序的一个子程序,每次调用识别 一个单词,交给语法分析器使用。 取单词 源程序 语法树 词法分析 送单词 语法分析 表格管理 符号表 常数表 章节目录 25.4.3 ☒28
25.4.3 8 词法分析器的组织方法 p50-51 作为单独的一遍,在语法分析前进行。 与语法分析结合在一起作为一遍。 作为语法分析程序的一个子程序,每次调用识别 一个单词,交给语法分析器使用。 词法分析 表格管理 语法分析 源 程 序 送单词 符号表 常数表 取单词 语法树 章节目录
3.2单词的描述工具p52 口正规集(正规语言) 某字母表上,我们感兴趣的符号串的集合。 正规表达式(regular expression) 是定义正规集(正规语言)的一种表示法。 口正规文法 是对正规语言(正规集)的一种描述工具。 4 25.4.3 ☒9
25.4.3 9 3.2 单词的描述工具 p52 正规集(正规语言) 某字母表上,我们感兴趣的符号串的集合。 正规表达式(regular expression) 是定义正规集(正规语言)的一种表示法。 正规文法 是对正规语言(正规集)的一种描述工具
3.2.1正规文法p52 口程序设计语言中几类单词的规则描述: 0<标识符>→11<字母数字〉 o<字母数字>→1d1<字母数字>d<字母数字> 口<无符号数>→dd<无符号数> 口<运算符>→+-*/八=<<等号>>〈等号>. 0〈等号〉→= 0<界符>→,;(). 25.4.3 ☒210
25.4.3 10 3.2.1 正规文法 p52 程序设计语言中几类单词的规则描述: <标识符>→ l|l <字母数字> <字母数字>→l|d|l <字母数字>|d <字母数字> <无符号数>→d|d <无符号数> <运算符> →+|-|*|/|=|< <等号>|> <等号>. <等号>→= <界符>→,|;|(|)|