1、Flex与Bison入门:构建处理结构化输入的程序

Flex与Bison入门:构建处理结构化输入的程序

1. 词法分析与解析

在20世纪50年代,最早的编译器使用完全临时的技术来分析正在编译的程序源代码的语法。到了60年代,该领域受到了大量学术关注,到70年代初,语法分析已成为一个广为人知的领域。

关键的见解之一是将这项工作分为两部分:词法分析(也称为词法扫描)和语法分析(或解析)。大致来说,扫描将输入划分为有意义的块,称为标记(tokens),而解析则确定这些标记之间的关系。

例如,对于C代码片段 alpha = beta + gamma ;
- 扫描器将其划分为标记: alpha 、等号、 beta 、加号、 gamma 和分号。
- 解析器确定 beta + gamma 是一个表达式,并将该表达式赋值给 alpha

下面用mermaid流程图展示这个过程:

graph LR;
    A[输入代码: alpha = beta + gamma ;] --> B[扫描器];
    B --> C[标记: alpha, =, beta, +, gamma, ;];
    C --> D[解析器];
    D --> E[解析结果: beta + gamma表达式赋值给alpha];
2. 获取Flex和Bison

大多数Linux和B

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值