没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
6页
课程:编译原理 实现:编译过程第一步“词法分析代码实现“” 语言:C语言程序 保证能运行 设计、编制并调试一个词法分析程序,加深对词法分析原理的理解。 各种单词符号对应的种别码:(1)关键字 (2)运算符和界符 (3)其他单词是标识符(ID)和整型常数(SUM),通过以下正规式定义 (4)空格有空白、制表符和换行符组成。 词法分析程序的功能: 输入:所给文法的源程序字符串。 输出:二元组(syn,token或sum)构成的序列。 其中:syn为单词种别码; token为存放的单词自身字符串; sum为整型常数。
资源推荐
资源详情
资源评论
词法分析 c 语言实现
一、实验目的
设计、编制并调试一个词法分析程序,加深对词法分析原理的理解。
二、实验要求
2.1 待分析的简单的词法
(1)关键字:
begin if then while do end
所有的关键字都是小写。
(2)运算符和界符
: = + - * / < <= <> > >= = ; ( ) #
(3)其他单词是标识符(ID)和整型常数(SUM),通过以下正规式定义:
ID = letter (letter | digit)*
NUM = digit digit*
(4)空格有空白、制表符和换行符组成。空格一般用来分隔 ID、SUM、运算符、界符
和关键字,词法分析阶段通常被忽略。
2.2 各种单词符号对应的种别码:
表 2.1 各种单词符号对应的种别码
单词符号
种别码
单词符号
种别码
begin
1
:
17
If
2
:=
18
Then
3
<
20
wile
4
<>
21
do
5
<=
22
end
6
>
23
lettet(letter|digit)*
10
>=
24
dight dight*
11
=
25
+
13
;
26
—
14
(
27
*
15
)
28
/
16
#
0
2.3 词法分析程序的功能:
输入:所给文法的源程序字符串。
输出:二元组(syn,token 或 sum)构成的序列。
其中:syn 为单词种别码;
token 为存放的单词自身字符串;
sum 为整型常数。
例如:对源程序 begin x:=9: if x>9 then x:=2*x+1/3; end #的源文件,经过词法分析后输出如
下序列:
(1,begin)(10,x)(18,:=)(11,9)(26,;)(2,if)……
三、词法分析程序的 C 语言程序源代码:
#include <stdio.h>
#include <string.h>
#include <conio.h>
资源评论
吴雨4
- 粉丝: 6414
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功