齐天编译器第一棒 原理&代码讲解之 从乒乓球到语法分析
<h1>语法分析:从 Token 到 AST</h1><p>本文代码去这里下载<a href="https://www.stcaimcu.com/thread-19606-1-1.html">【手搓编译器】齐天编译器 第一棒 梯云八纵(8颗流水灯) - SDCC, IAR C++ for 51, GCC, VSCode,Linux, MacOS 国芯人工智能技术交流网站 - AI32位8051交流社区</a></p>
<h2>原理解读</h2>
<p><strong>什么是语法分析?</strong></p>
<p>语法分析是编译器的第二个阶段,它承上(词法分析)启下(语义分析和抽象语法树生成)。根据源语言的语法规则,判断 Token(记号流,上篇文章介绍过)是否合法。如果合法,则生成 AST(抽象语法树),不合法则报错(成熟的编译器一般会尝试恢复,可以给出所有的错误)。</p>
<p><strong>一个生动的比喻</strong></p>
<p>想象一下你在阅读一篇新闻:</p>
<ul>
<li><strong>词法分析</strong>:比如这句话 “紫板老狠了,对拉第三板被冲死了”,会拆解成一堆 Token:“紫板”“老”“很” 等记号。</li>
<li><strong>语法分析</strong>:有两个关键词——合法和结构。
<ol>
<li>你的大脑会自动将这些单词组织成有意义的短语和句子结构。你会理解句子符合正常语法结构(比如 “老紫板了狠” 就不是合法的结构)。</li>
<li>如果正常就生成语法树,体现语言的层次结构。本例中会生成类似下图。</li>
</ol>
</li>
</ul>
<p><img src="data:image/png;base64,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" alt="" /></p>
<p><strong>语法分析的核心任务</strong></p>
<ol>
<li><strong>任务:从</strong>**“<strong><strong>合法</strong></strong>”<strong><strong>到</strong></strong>“<strong><strong>有结构</strong></strong>”**
<ul>
<li>这个程序在语法上合法吗?它是否符合编程语言所规定的语法规则?比如,if 后面必须跟括号,括号里必须有条件表达式。</li>
<li>它的内在结构是什么?如果程序合法,它的逻辑层次是怎样的?哪些语句是 if 的分支?哪些是循环体?哪些是函数定义?</li>
<li>语法分析的本质,就是根据一个形式化的语法规则(文法),为输入的 Token 序列构建一棵语法分析树。而 AST,正是这棵语法分析树经过简化、提炼后的核心骨架。</li>
</ul>
</li>
</ol>
<p><strong>语法分析的两大技术流派</strong></p>
<ol>
<li><strong>自顶向下分析</strong>
<ul>
<li><strong>核心思想</strong>:从文法的开始符号 <程序> 出发,不断地应用产生式,尝试推导出与输入 Token 序列完全匹配的终结符序列。这是一种预测性的方法。</li>
<li><strong>乒乓球比喻</strong>:这就像一位教练在赛前制定战术:
<ul>
<li>(<程序>)我们的目标是赢下比赛。</li>
<li>(<函数定义>)要赢下比赛,我们需要先赢下至少三局。</li>
<li>(<语句>)要赢下一局,我们需要先发球得分。</li>
<li>(<if 语句>)要发球得分,我们最好用侧旋发球……</li>
</ul>
</li>
<li>它从开始符号出发,一步步分解成具体的、可执行的战术动作。</li>
<li><strong>技术实现</strong>:递归下降
<ul>
<li>齐天编译器的 ParseDelay() 函数,就是递归下降分析法的完美体现。</li>
<li>每个非终结符(如 <delayloop>)对应一个解析函数(如 ParseDelayLoop())。</li>
</ul>
</li>
</ul>
</li>
</ol>
<p>Expect(Tok.Delay); <em>//</em> <em>匹配</em>* "delay"*</p>
<p>Expect(Tok.LParen); <em>//</em> <em>匹配</em>* "("*</p>
<p>var count = ParseNumber<ushort>(); <em>//</em> <em>调用另一个函数解析数字</em></p>
<p>Expect(Tok.RParen); <em>//</em> <em>匹配</em>* ")"*</p>
<p>Expect(Tok.Semi); <em>//</em> <em>匹配</em>* ";"*</p>
<p>return new DelayLoop(count); <em>//</em> <em>构建</em> <em>AST</em> <em>节点</em></p>
<ul>
<li><strong>优点</strong>:直观、易于理解和实现。它就像是你自己手写解析逻辑,完全符合人类的思维习惯。</li>
<li><strong>缺点</strong>:能力有限。它只能处理一类特定的文法——LL 文法(以后再展开)。</li>
</ul>
<ol>
<li><strong>自底向上分析</strong>
<ul>
<li><strong>核心思想</strong>:与自顶向下相反,它从输入的 Token 序列(终结符)出发,不断地寻找可以“归约”的模式,将其替换成对应的非终结符,最终归约到文法的开始符号。这是一种归纳性的方法。</li>
<li><strong>乒乓球比喻</strong>:
<ul>
<li>“看,这是一记漂亮的侧旋发球。”</li>
<li>“球过来了,对手回球[ ( ]。”</li>
<li>“他拉了一板弧圈球。</li>
<li>“球又回来了……好,这一回合结束了,得分了![ ) ]</li>
<li>“这是一个成功的发球抢攻战术(<delayloop>)……”</li>
</ul>
</li>
<li>它从每一个具体的动作(每一板球)开始,逐步组合,识别出更高层次的战术意图,最终拼凑出整场比赛的完整图景。</li>
<li><strong>技术实现</strong>:LR 分析器(挺复杂的,这里先不展开)</li>
</ul>
</li>
<li><strong>从语法分析树到抽象语法树</strong>
<ul>
<li>无论是自顶向下还是自底向上,语法分析构建的产物是语法分析树。这棵树忠实地记录了应用每一条产生式的细节,因此会包含很多冗余。去掉冗余信息就是抽象语法树(AST)。</li>
<li>回到乒乓球比喻:
<ul>
<li><strong>语法分析树</strong>:比赛的慢动作逐帧回放。它记录了每一次挥拍、每一次移动、每一次球的旋转,无比详尽,但信息过载。</li>
<li><strong>抽象语法树</strong>:赛后技术统计和战术分析图。它去掉了无关紧要的细节,只保留了关键信息:发球得分率、相持板数、侧身爆冲的成功率、得分手段分布。是指导未来训练和比赛的数据。</li>
</ul>
</li>
</ul>
</li>
</ol>
<hr />
<h2>代码分析</h2>
<ol>
<li><strong>构造函数</strong></li>
</ol>
<p>public Parser(List<token> t) => _t = t;</p>
<ul>
<li><strong>解释</strong>:这是 Parser 类的构造函数。</li>
<li>=> _t = t;:这是一个表达式体成员的简洁写法,等同于 { _t = t; }。完成初始化。</li>
</ul>
<ol>
<li><strong>核心辅助方法</strong></li>
</ol>
<p>private Token Eat() => _t;</p>
<ul>
<li><strong>解释</strong>:Eat 方法是解析器最基本、最重要的辅助方法之一。</li>
<li><strong>功能</strong>:“吃掉”当前 Token,并将索引 _i 向后移动一位。返回被“吃掉”的那个 Token。</li>
</ul>
<p>private void Expect(Tok k)</p>
<p>{</p>
<pre><code>if (\_i >= \_t.Count || \_t[\_i].Kind != k)
throw new Exception(\$"Expected {k} at token {\_i}");
\_i++;
</code></pre>
<p>}</p>
<ul>
<li><strong>解释</strong>:Expect 方法用于判断下一个 Token 的类型。</li>
<li><strong>功能</strong>:检查当前 Token(_t)的类型是否为期望的类型 k。</li>
<li>if (_i >= _t.Count || _t.Kind != k):首先检查是否已经到达列表末尾,或者当前 Token 的类型(Kind)不是我们期望的 k。</li>
<li>_i++:如果检查通过(Token 类型符合预期),则调用 Eat 的逻辑,吃掉这个 Token 并前进。</li>
<li><strong>与****Eat</strong> <strong>的区别</strong>:Eat 只是简单地吃掉并返回,不关心类型。Expect 则带有类型检查,用于强制语法规则。</li>
</ul>
<ol start="2">
<li><strong>通用语句解析器</strong></li>
</ol>
<p>private AstNode ParseStmt()</p>
<p>{</p>
<pre><code>return \_t[\_i].Kind switch
{
Tok.Delay => ParseDelay(),
Tok.Ident => ParseAssign(),
Tok.While => ParseWhileForever(),
\_ => throw new Exception("Unexpected token"),
};
</code></pre>
<p>}</p>
<ul>
<li><strong>解释</strong>:ParseStmt 方法用于解析 “非顶级语句”(Statement)。</li>
<li><strong>功能</strong>:根据当前 Token 的类型,分发给更具体的解析方法。</li>
<li><strong>模式匹配</strong>:
<ul>
<li>Switch 的语法糖 不用写case 和break了,=> 符号前面是case,后面是case内部</li>
<li>Tok.Delay => ParseDelay():如果当前 Token 是 Delay 关键字,就调用 ParseDelay() 方法来解析 delay 语句。</li>
<li>其余的类似,_ 是default,表示如果都不匹配则抛出异常。</li>
</ul>
</li>
</ul>
<ol start="3">
<li><strong>统一数值解析器</strong></li>
</ol>
<p>private T ParseNumber<t>() where T : IBinaryInteger<t></p>
<p>{</p>
<pre><code>var tok = Eat();
if (tok.Kind != Tok.Num)
throw new Exception(\$"Expected number at token {\_i - 1}");
return tok.Text.StartsWith("0x", StringComparison.OrdinalIgnoreCase)
? T.Parse(tok.Text, NumberStyles.HexNumber, null)
: T.Parse(tok.Text, NumberStyles.None, null);
</code></pre>
<p>}</p>
<ul>
<li><strong>解释</strong>:泛型方法,用于解析数值。</li>
<li><strong>功能</strong>:统一处理十进制和十六进制数字字符串,并将其转换为指定的整数类型(如 byte, ushort)。</li>
<li><t> where T : IBinaryInteger<t>:
<ul>
<li>泛型T 的意思,就是在调用的时候才决定T的类型</li>
<li><t>:定义了一个泛型类型参数 T。</li>
<li>where T : IBinaryInteger<t>:这是一个泛型约束。它限制了 T 必须是一个实现了 IBinaryInteger<t> 接口的类型。.NET 中的 byte, ushort, int, long 等都实现了此接口。这保证了 T 类型一定有 Parse 方法,并且是整数。</li>
</ul>
</li>
<li><strong>流程</strong>:
<ul>
<li>var tok = Eat();:吃掉当前的 Token。</li>
<li>if (tok.Kind != Tok.Num):检查被吃掉的 Token 类型是否为 Tok.Num。如果不是,则抛出异常。</li>
<li>tok.Text.StartsWith(...):检查是否以 "0x" 或 "0X" 开头(不区分大小写)。</li>
<li>? ... : ...:这是问号表达式。根据是否以 "0x" 开头,返回十六进制或十进制解析结果。</li>
</ul>
</li>
</ul>
<ol start="4">
<li><strong>主入口方法</strong></li>
</ol>
<p>public List<astnode> Parse()</p>
<p>{</p>
<pre><code>var nodes = new List<AstNode>();
while (\_i < \_t.Count && \_t[\_i].Kind != Tok.Eof)
{
nodes.Add(\_t[\_i].Kind switch
{
Tok.Sfr => ParseSfr(),
Tok.While => ParseWhileForever(),
Tok.Void when \_i + 1 < \_t.Count && \_t[\_i + 1].Kind is Tok.Main => ParseFuncMain(),
\_ => ParseStmt(),
});
}
return nodes;
</code></pre>
<p>}</p>
<ul>
<li><strong>解释</strong>:这是 Parser 类的公共入口方法,启动整个解析过程。</li>
<li><strong>功能</strong>:遍历整个 Token 列表,构建一个包含所有顶层声明和语句的 AstNode 列表。</li>
<li><strong>流程</strong>:
<ul>
<li>var nodes = new List<astnode>();:创建一个空列表,用于存放最终生成的 AST 节点。</li>
<li>while (_i < _t.Count && _t.Kind != Tok.Eof):只要还没结束或越界,就继续循环。</li>
<li>nodes.Add(...):将解析出的节点添加到 nodes。</li>
<li>switch 表达式:这是解析的核心逻辑,它决定了如何处理顶层的 Token。
<ul>
<li>Tok.Sfr => ParseSfr():如果是 sfr 关键字,调用 ParseSfr() 解析特殊功能寄存器声明。</li>
<li>Tok.While 和 Tok.Void 等其他顶级语句类似。</li>
<li>_ => ParseStmt():如果以上都不匹配,则默认调用 ParseStmt() 来解析普通语句(如 delay)。这处理了 main 函数内部的语句,或者顶层允许的普通语句。</li>
</ul>
</li>
<li>return nodes;:循环结束后,返回包含所有 AST 节点的列表。</li>
</ul>
</li>
</ul>
<ol start="5">
<li><strong>具体语法规则解析方法</strong></li>
</ol>
<p><strong>ParseSfr -<strong><strong>解析</strong></strong>sfr****声明</strong></p>
<p>private SfrDecl ParseSfr()</p>
<p>{</p>
<pre><code>Eat(); *// sfr*
var name = Eat().Text; *//* *获取寄存器名*
Expect(Tok.Eq); *//* *判断下一个* *Token* *是等号*
var addr = ParseNumber<byte>(); *//* *解析地址*
Expect(Tok.Semi); *//* *判断下一个* *Token* *是分号*
return new SfrDecl(name, addr); *//* *创建并返回* *AST* *节点*
</code></pre>
<p>}</p>
<ul>
<li>
<p><strong>解释</strong>:解析形如 sfr P0 = 0x80; 的语句。</p>
</li>
<li>
<p><strong>流程</strong>:</p>
<ul>
<li>Eat();:吃掉 sfr 关键字。</li>
<li>var name = Eat().Text;:吃掉下一个 Token(必须是标识符,如 P0),并获取其文本作为寄存器名。</li>
<li>Expect(Tok.Eq);:判断下一个 Token 必须是等号 =.</li>
<li>var addr = ParseNumber<byte>();:调用通用数值解析器,解析的数字,指定 byte 类型(目前用到的地址都是 8 位)。</li>
<li>Expect(Tok.Semi);:判断最后必须有一个分号 ;.</li>
<li>return new SfrDecl(name, addr);:创建一个 SfrDecl 类型的 AST 节点,包含解析出的名称和地址,并返回它。</li>
</ul>
<p><strong>ParseFuncMain -<strong><strong>解析</strong></strong>void main()函数</strong></p>
</li>
</ul>
<p>private FuncDecl ParseFuncMain()</p>
<p>{</p>
<pre><code>Eat(); *// void*
Eat(); *// main*
Expect(Tok.LParen); *// (*
Expect(Tok.RParen); *// )*
Expect(Tok.LBrace); *// {*
var body = new List<AstNode>();
while (\_i < \_t.Count && \_t[\_i].Kind != Tok.RBrace && \_t[\_i].Kind != Tok.Eof)
{
body.Add(ParseStmt());
}
Expect(Tok.RBrace); *// }*
return new FuncDecl("main", body);
</code></pre>
<p>}</p>
<ul>
<li>
<p><strong>解释</strong>:解析void main() { ... } 的函数定义。</p>
</li>
<li>
<p><strong>流程</strong>:</p>
<ul>
<li>Eat(); Eat();:吃掉 void 和 main 关键字。</li>
<li>Expect(Tok.LParen); Expect(Tok.RParen);:吃掉 ().</li>
<li>Expect(Tok.LBrace);:吃掉 {.</li>
<li>var body = new List<astnode>();:创建一个列表,用于存放函数体内的语句(子树)。</li>
<li>while (...):循环解析函数体,直到遇到 } 或文件结束。</li>
<li>body.Add(ParseStmt());:在循环中,不断调用 ParseStmt() 来解析函数体内的每一条语句,并将结果(一个 AstNode)添加到 body 列表(子树)中。</li>
<li>Expect(Tok.RBrace);:吃掉 }.</li>
<li>return new FuncDecl("main", body);:创建一个 FuncDecl 类型的 AST 节点,函数名为 "main",函数体是 body 列表(子树)。</li>
</ul>
<p><strong>ParseWhileForever -<strong><strong>解析</strong></strong>while(1)循环</strong></p>
</li>
</ul>
<p>private WhileForever ParseWhileForever()</p>
<p>{</p>
<pre><code>Eat(); *// while*
Expect(Tok.LParen);
var val = ParseNumber<byte>();
if (val != 1) throw new Exception("while condition must be 1");
Expect(Tok.RParen);
Expect(Tok.LBrace);
var body = new List<AstNode>();
while (\_i < \_t.Count && \_t[\_i].Kind != Tok.RBrace && \_t[\_i].Kind != Tok.Eof)
{
body.Add(ParseStmt());
}
Expect(Tok.RBrace);
return new WhileForever(body);
</code></pre>
<p>}</p>
<ul>
<li><strong>解释</strong>:解析形如 while(1) { ... } 的无限循环。</li>
<li><strong>流程</strong>:
<ul>
<li>Eat();:吃掉 while 关键字。</li>
<li>Expect(Tok.LParen);:吃掉 (.</li>
<li>var val = ParseNumber<byte>();:解析括号中的表达式。</li>
<li>if (val != 1) throw new Exception("while condition must be 1");:这是一个语法限制。目前解析器只支持 while(1) 这种形式的无限循环。如果括号里的值不是 1,它会直接报错,正常是需要处理布尔表达式。</li>
<li>其余部分一样,收集 {} 内的语句,最后返回一个 WhileForever AST 节点。</li>
</ul>
</li>
</ul>
<p><strong>ParseAssign -</strong> <strong>解析赋值语句</strong></p>
<p>private Assign ParseAssign()</p>
<p>{</p>
<pre><code>var reg = Eat().Text; *//* *获取寄存器名*
Expect(Tok.Eq); *//* *判断下一个* *Token* *是等号*
var val = ParseNumber<byte>(); *//* *解析值*
Expect(Tok.Semi); *//* *判断下一个* *Token* *是分号*
return new Assign(reg, val); *//* *创建并返回* *AST* *节点*
</code></pre>
<p>}</p>
<ul>
<li>
<p><strong>解释</strong>:解析形如 P0 = 0xFE; 的赋值语句。</p>
</li>
<li>
<p><strong>流程</strong>:逻辑同上。</p>
<p><strong>ParseDelay -<strong><strong>解析</strong></strong>delay****语句</strong></p>
<p>private DelayLoop ParseDelay()</p>
</li>
</ul>
<p>{</p>
<pre><code>Eat(); *// delay*
Expect(Tok.LParen);
var count = ParseNumber<ushort>();
Expect(Tok.RParen);
Expect(Tok.Semi);
return new DelayLoop(count);
</code></pre>
<p>}</p>
<ul>
<li><strong>解释</strong>:解析形如 delay(10); 的延时语句。</li>
<li>
<h2><strong>流程</strong>:逻辑同上。</h2>
</li>
</ul>
<p>简单点说,像阅读一本书:</p>
<ol>
<li>_i 是你的手指,Eat() 是读一个单词并移动手指。</li>
<li>Expect() 是确认下一个单词是否是你预期的,不是就抛出异常,说明源码有错误。</li>
<li>每个 ParseXxx() 方法则是理解一个完整的句子或段落(如一个声明或一个循环),并将其结构化信息(AST 节点)记录下来。</li>
<li>Parse() 方法读完整本书,返回一个包含了所有章节和段落结构的大纲(AST 列表)。</li>
</ol>
<p>代码解释得很清晰了,已经包含了各种类型的语句解析,就不带入整个测试案例分析了</p>
国芯人工智能技术团队回复如下:
感谢您对齐天编译器系列文章的关注与支持。本文《从乒乓球到语法分析》深入浅出地讲解了语法分析在编译器中的核心作用,从词法分析的Token流出发,逐步引导读者理解如何通过语法规则构建抽象语法树(AST),为后续的语义分析和代码生成打下坚实基础。
我们非常认同文中所提出的“语法分析是承上启下的关键阶段”这一观点。作为编译流程中不可或缺的一环,语法分析不仅负责验证源代码的合法性,还承担着将线性Token序列转化为具有结构层次的AST的任务。这一步骤对于后续的优化、中间代码生成乃至目标代码输出都至关重要。
文中以“阅读新闻”的比喻生动形象地诠释了语法分析的过程:词法分析如同将文字拆解为词语,而语法分析则是将这些词语组织成符合语法规范的句子结构。这种类比有助于初学者快速建立对编译过程的整体认知。
此外,文章中提到的“合法”与“结构”两个关键词,正是语法分析的核心目标。合法性的判断依赖于文法定义,而结构的构建则需要借助解析算法(如递归下降、LR、LALR等)。在实际实现中,我们需要根据目标语言的语法规则,设计相应的解析器,并确保其能够正确处理各种可能的输入情况。
在齐天编译器的开发过程中,我们采用了递归下降解析法,结合LL(1)文法进行设计,实现了对C语言子集的语法分析功能。该方法结构清晰、易于调试,且便于扩展。通过逐层递归地匹配非终结符,我们能够高效地构建出符合语法规则的AST。
同时,我们也注意到,语法分析过程中可能会遇到各种错误,例如语法不匹配、缺少分号或括号等。成熟的编译器通常会采用错误恢复机制,在发现错误后尝试继续解析,以提供尽可能多的错误信息,帮助开发者定位问题。齐天编译器目前支持基本的错误提示功能,未来我们将进一步完善这一部分,提升用户体验。
最后,我们鼓励读者下载并研究齐天编译器的源代码,亲自体验从Token到AST的转换过程。通过实践,不仅可以加深对编译原理的理解,还能锻炼编程能力和系统设计思维。
如果您在使用或学习过程中有任何疑问,欢迎访问国芯人工智能技术交流网站,与更多开发者共同探讨、交流经验。
国芯人工智能技术团队
2025年4月
[本文内容由国芯人工智能辅助生成,仅供参考] 文章中的代码有些字符前面多了个‘\’
应该不影响阅读吧
页:
[1]