我用VC写过一个Java编译器前端,全手写,没用antlr,lex, yacc之类的任何工具,累的tmd要吐血,语意分析还没写完。后端的代码优化,生成可执行码没写。
建议你到网上下载一个java.g看看,在看看antlr怎么生成的lexer和parser.
然后在自己写吧。不过antlr没有代码生成能力,他只是词法分析,语法分析,
语义分析,代码生成要自己写。后者可以参照pl/0.
到google里查点资料把。
建议你到网上下载一个java.g看看,在看看antlr怎么生成的lexer和parser.
然后在自己写吧。不过antlr没有代码生成能力,他只是词法分析,语法分析,
语义分析,代码生成要自己写。后者可以参照pl/0.
到google里查点资料把。
我想对一个完整的pasic程序进行词法分析,感觉无从下手.....
本想改的是 词法分析已经做完了
语法分析我以前用Delphi写过if语句......
现在我想对一个完整的pasic程序进行语法分析,感觉无从下手.....
郁闷
比如说:你一个浮点型(用科学计数法)都要写一大段啊
当然,真要写的话,可以考虑语法的最基本组成的(比如判断和覆值等)
的check, 还是找本书好好研究把!!!
千万不要急着写,先到网上下一个java.g分析一下,
然后如果还没把握,就下一个antlr来自动生成lexer, parser
然后看看别人怎么写的。
我的一个同学曾经做过工控语言Express的编译器前端,
他就只是看了一篇论文,一本"编译原理设计与实现",
和PL/0.