第三章_词法分析(2).ppt
上传人:sy****28 上传时间:2024-09-14 格式:PPT 页数:46 大小:1.2MB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

第三章_词法分析(2).ppt

第三章_词法分析(2).ppt

预览

免费试读已结束,剩余 36 页请下载文档后查看

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第三章词法分析(2)3.3词法记号的识别词法规则过滤空白符Lexmemes3.3.1状态转换图(TransitionDiagrams)Fig3-11>=和>的转换图startFig3-13标识符和保留字的转换图Fig3-14无符号数的转换图numdigit+(.digit+)?(E(+|)?digit+)?Fig3-14无符号数的转换图numdigit+(.digit+)?(E(+|)?digit+)?空白的转换图例.P76.3.2.5(1)Answer3.3.4状态转换图的实现TOKENgetRelop(){TOKENretToken=new(RELOP);while(1){switch(state){case0:c=nextchar();if(c==‘<‘)state=1;elseif(c==‘=‘)state=5;elseif(c==‘>’)state=6;elsefail();break;case1:……case8:retract();retToken.attribute=GT;return(retToken);}}}3.4Lex:词法分析程序生成器Lex用Lex建立词法分析器的步骤Lex程序结构Namethefilee.g.test.lexThen,“lextest.lex”producesthefile“lex.yy.c”(aC-program)declarations声明translationrules转换规则Lex的正规表达式(P98图3-48)字符正规表达式举例Lex定义的全局量TokensWithValuesLex的匹配策略AVerysimplelexfile,simple.lexUsingtokenswithvalues,simple2.lex.EXAMPLESLex程序的例子例---翻译规则部分例---辅助过程部分单词个数统计程序的声明单词个数统计程序中的Lex规则单词个数统计程序中的的C代码段AnotherExample/*scannerforatoyPascal-likelanguage*//*scannerforatoyPascal-likelanguage*//*scannerforatoyPascal-likelanguage*//*scannerforatoyPascal-likelanguage*/