Java

本类阅读TOP10

·使用MyEclipse开发Struts框架的Hello World!(录像1)
·hibernate配置笔记
·AOP编程入门--Java篇
·linux下Tomcat 5.0.20 与 Apache 2 安装/集成/配置
·在win2003下整合了整合Tomcat5.5+ apache_2.0.53+ mod_jk_2.0.47.dll
·构建Linux下IDE环境--Eclipse篇
·Jsp 连接 mySQL、Oracle 数据库备忘(Windows平台)
·ASP、JSP、PHP 三种技术比较
·Tomcat5.5.9的安装配置
·AWT GUI 设计笔记(二)

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
Mini Java编译器(三)——属性翻译文法

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

三、属性翻译文法

变量声明(declaration

<VarDeclaration>   ::=            <Type>var_type,var_size<Idetifier>id_name

                                             @varDeclarationvar_type,var_size,id_name

                                             @varAllocationvar_size

<Type>          var_type,var_size     ::=       <ArrayType>var_type,var_size

                                             |<BooleanType>var_type,var_size

                                             |<IntegerType>var_type,var_size

                                             |<Identifier>var_type,var_size

 

变量赋值(assignment

<AssignmentStatement>                    ::= <Identifier>id_name,id_type

                                                              “=”

                                                              <Expression>exp_type,exp_value

                                                              “;”

                                                              @checkTypeid_type,exp_type

                                                              @insertIntoTableid_name,id_type.exp_value

<Expression>exp_type,exp_value                         ::= <AndExpression>exp_type,exp_value

                                                              |<CompareExpression>exp_type,exp_value

                                                              |<PlusExpression>exp_type,exp_value

                                                              |<MinusExpression>exp_type,exp_value

                                                              |<TimesExpression>exp_type,exp_value

                                                              |<ArrayLookup>exp_type,exp_value

                                                              |<ArrayLength>exp_type,exp_value

                                                              |<MessageSend>exp_type,exp_value

                                                              |<PrimaryExpression>exp_type,exp_value

<PrimaryExpression>exp_type,exp_value       ::= <IntegerLiteral>exp_type,exp_value

                                                              |<TrueLiteral>exp_type,exp_value

                                                              |<FalseLiteral>exp_type,exp_value

                                                              |<Identifier>exp_type,exp_value

                                                              |<Expression>exp_type,exp_value

                                                              |<ArrayAllocationExpression>exp_type,exp_value

                                                              |<AllocationExpression>exp_type,exp_value

                                                              |<NotExpression>exp_type,exp_value

                                                              |<BracketExpression>exp_type,exp_value


(待续)




相关文章

相关软件