源码:It is a book
- 词法分析
把源文件的字符流转换成记号流
得到一个个的单词
如:It,is,a,book
- 语法分析
- 根据语法规则识别出记号流中的结构(短语、句子),并构造出一棵能够正确反映该结构的语法树
- 检查这些单词组成的句子是否符合语法规则;主要是对结构的检查
如:It is a book 是符合规则的
is book a It 就是不符合规则的
- 语义分析
分析整个句子的含义
语义正确
int i = 0 (正确)
int i = “abc” (错误)
是否有死循环?方法是否有返回语句?…
- 总结
| 分类 | 区别 | 说明 |
|---|---|---|
| 词法分析 | 识别单词 | |
| 语法分析 | 整体结构是否符合规则 | |
| 语义分析 | 含义是否符合规则 | 如:int a = “xyz”,类型不匹配 |
本文深入探讨了程序解析的三个关键步骤:词法分析、语法分析和语义分析。词法分析将源代码分解为单词记号;语法分析检查记号流的结构是否符合语法规则;语义分析则关注代码的含义,判断其是否符合语义规则。通过这三个阶段,确保代码的正确性和可执行性。

6032

被折叠的 条评论
为什么被折叠?



