频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

Mini Java编译器(三)——属性翻译文法

来源: 作者: 出处:巧巧读书 2006-10-04 进入讨论组

精华网络内容 :http://www.qqread.com/network/


  三、属性翻译文法
变量声明(declaration)
<VarDeclaration> ::= <Type>↑var_type,var_size<Idetifier>↑id_name

@varDeclaration↓var_type,var_size,id_name

@varAllocation↓var_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

“;”

@checkType↓id_type,exp_type

@insertIntoTable↓id_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


(待续) 更多文章 更多内容请看Java环境安装配置Java编程开发手册专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
较早的文章:Mini Java编译器(三)

较新的文章:Mini Java编译器(四)
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
最新论坛文章
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章