[发明专利]多语言代码编译方法及编译器有效
申请号: | 201811153588.9 | 申请日: | 2018-09-29 |
公开(公告)号: | CN109254776B | 公开(公告)日: | 2022-02-01 |
发明(设计)人: | 张建飞;王立松;冯庆枝 | 申请(专利权)人: | 深圳市雷赛控制技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京超凡志成知识产权代理事务所(普通合伙) 11371 | 代理人: | 逯恒 |
地址: | 518000 广东省深圳市南山区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 语言 代码 编译 方法 编译器 | ||
1.一种多语言代码编译方法,其特征在于,所述方法包括:
根据预设词法分析规则对源程序代码进行词法分析处理,生成词法分析结果,其中,所述源程序代码包括多种不同语言的源程序代码;
根据预设语法语义分析规则对所述词法分析结果进行语法语义分析,生成语法语义分析结果;
根据预设目标代码的生成规则对所述语法语义分析结果进行目标代码的分析,生成目标代码;
所述根据预设语法语义分析规则对所述词法分析结果进行语法语义分析,生成语法语义分析结果,包括:
采用变量模型对所述源程序代码的所述词法分析结果进行语法语义分析,生成变量模型的语法语义分析结果,其中,所述变量模型包括:单个变量和变量段的定义,变量段的定义包括输入变量段、输出变量段、局部变量段及全局变量段的定义;
采用软件模型对所述变量模型的语法语义分析结果进行软件模型的语法语义分析,生成软件模型的语法语义分析结果,其中,所述软件模型的定义包括:软件配置、软件资源及软件任务的定义;
采用程序组织单元模型对所述软件模型的语法语义分析结果进行程序组织单元模型的语法语义分析,生成程序组织单元模型的语法语义分析结果,其中,所述程序组织单元模型的定义包括:功能、功能块以及程序的定义。
2.根据权利要求1所述的方法,其特征在于,所述源程序代码包括下述至少2种源程序代码:
梯形图语言、顺序功能流程图语言、功能区块图语言、指令表语言、结构化文本语言及BASIC语言。
3.根据权利要求1所述的方法,其特征在于,所述根据预设词法分析规则对源程序代码进行词法分析处理,生成词法分析结果,包括:
将所述源程序代码编译所需的头文件代码添加至所述源程序代码,得到新的源程序代码;
根据预设词法分析规则对所述新的源程序代码进行词法分析处理并生成词法分析结果;其中,所述预设词法分析规则包括下述一种或多种组合:分界符类别、运算符类别、标识符类别、注释类别、常量类别或关键字类别规则。
4.根据权利要求1所述的方法,其特征在于,所述根据所述变量模型的语法语义分析结果进行程序组织单元模型的语法语义分析,生成程序组织单元模型的语法语义分析结果,包括:
对所述软件模型的语法语义分析结果进行划分处理,得到至少2种语言的分析结果;
对所述至少2种语言的分析结果分别进行程序组织单元模型的语法语义分析;其中,所述至少2种语言包括下述至少2种:梯形图语言、顺序功能流程图语言、功能区块图语言、指令表语言、结构化文本语言及BASIC语言。
5.一种多语言代码编译器,其特征在于,包括:词法分析器、语法语义分析器及目标代码生成器;
所述词法分析器,用于根据预设词法分析规则对源程序代码进行词法分析处理,生成词法分析结果,其中,所述源程序代码包括多种不同语言的源程序代码;
所述语法语义分析器,用于根据预设语法语义分析规则对所述词法分析结果进行语法语义分析,生成语法语义分析结果;
所述目标代码生成器,用于根据预设目标代码的生成规则对所述语法语义分析结果进行目标代码的分析,生成目标代码;
所述语法语义分析器具体用于采用变量模型对所述源程序代码的所述词法分析结果进行语法语义分析,生成变量模型的语法语义分析结果,其中,所述变量模型包括:单个变量和变量段的定义,变量段的定义包括输入变量段、输出变量段、局部变量段及全局变量段的定义;
采用软件模型对所述变量模型的语法语义分析结果进行软件模型的语法语义分析,生成软件模型的语法语义分析结果,其中,所述软件模型的定义包括:软件配置、软件资源及软件任务的定义;
采用程序组织单元模型对所述软件模型的语法语义分析结果进行程序组织单元模型的语法语义分析,生成程序组织单元模型的语法语义分析结果,其中,所述程序组织单元模型的定义包括:功能、功能块以及程序的定义。
6.根据权利要求5所述的多语言代码编译器,其特征在于,所述源程序代码包括下述至少2种源程序代码:
梯形图语言、顺序功能流程图语言、功能区块图语言、指令表语言、结构化文本语言及BASIC语言的编译。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市雷赛控制技术有限公司,未经深圳市雷赛控制技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811153588.9/1.html,转载请声明来源钻瓜专利网。