摘要
本发明提供了一种I EC 61131‑3标准ST语言静态代码分析的方法、装置、设备及存储介质,包括有基于词法和语法分析技术,将ST源程序解析为解析树,并检测程序的词法和语法错误;根据解析树构建ST程序的抽象语法树,基于抽象语法树分析技术,检查程序的语义错误;根据抽象语法树构建控制流图,基于符号执行技术、深度优先搜索遍历技术,执行约束收集,约束求解和循环展开操作,对程序的静态约束进行检测。根据本申请实施例提供的I EC 61131‑3标准ST语言静态代码分析方法,可以检测PLC程序某些潜在的静态缺陷,从而提高PLC程序的准确性和安全性,加快PLC程序的开发和调试效率,降低PLC程序开发和维护的成本。
技术关键词
静态代码分析
抽象语法树
符号执行技术
深度优先搜索
语法分析技术
约束求解器
计算机可读指令
源程序
代码分析方法
语句
分析模块
语义
对源代码
语法结构
逻辑
字符
定义
变量
监听器