南京大学静态软件分析(static program analyzes)中,如何深入理解Intermediate Representation?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2235个文字,预计阅读时间需要9分钟。
南大+静态软件分析(static program analyzes)—中间表示学习笔记—一、编译器与静态分析器—编译器将源代码(Source code)转换为机器代码(Machine Code)。其中流程框架为编译器+静态分析器+源代码+中间表示+机器代码。
南京大学 静态软件分析(static program analyzes)-- Intermediate Representation 学习笔记 一、Compilers and Static Analyzers编译器将源代码(Source code) 转换为机器代码(Machine Code)。其中的流程框架是:
- 词法分析器(Scanner):通过词法分析(Lexical Analysis)将 source code 翻译为 token
- 分词(结合正则表达式)
- 判断词是否合法(是否符合编码规范)
- 语法分析器(Parser):通过语法分析(Syntax Analysis),将 token 解析为抽象语法树(Abstract Syntax Tree, AST)
- 结合上下文无关文法(Context-Free Grammar)进行分析,无关分析已经足够,不需要NLP处理上下文。例子:主谓宾都包含,但顺序不一定对。
本文共计2235个文字,预计阅读时间需要9分钟。
南大+静态软件分析(static program analyzes)—中间表示学习笔记—一、编译器与静态分析器—编译器将源代码(Source code)转换为机器代码(Machine Code)。其中流程框架为编译器+静态分析器+源代码+中间表示+机器代码。
南京大学 静态软件分析(static program analyzes)-- Intermediate Representation 学习笔记 一、Compilers and Static Analyzers编译器将源代码(Source code) 转换为机器代码(Machine Code)。其中的流程框架是:
- 词法分析器(Scanner):通过词法分析(Lexical Analysis)将 source code 翻译为 token
- 分词(结合正则表达式)
- 判断词是否合法(是否符合编码规范)
- 语法分析器(Parser):通过语法分析(Syntax Analysis),将 token 解析为抽象语法树(Abstract Syntax Tree, AST)
- 结合上下文无关文法(Context-Free Grammar)进行分析,无关分析已经足够,不需要NLP处理上下文。例子:主谓宾都包含,但顺序不一定对。

