词法分析器-编译原理实验

一、实验目的
通过设计编制调试一个具体的词法分析程序,加深对词法分析原理的理解。并掌握在对程序设计语言源程序进行扫描过程中将其分解为各类单词的词法分析方法。
编制一个读单词过程,从输入的源程序中,识别出各个具有独立意义的单词, 即关键字、标识符、常数、算符、界符五大类。并依次输出各个单词的内部编码及单词符号自身价值。(遇到错误时可显示“Error”,然后跳过错误部分继续显示)

二、开发环境
软件:Dev-C++ 5.11
硬件:windows10系统

三、实验方案设计与实验过程
1、分析
(1)内容
给定一个C语言的子集 ,如下:
关键字(小写):
main if else int return void while
算符或界符:
= + - * / < <= > >= = = != ; : , { } [ ] ( )
标识符是字母开头,后面字母和数字组合
数值指无符号常数
空格一般用来分隔标识符、数值、专用符号和关键字
(2)要求
① 给出自己单词符号的种别码表
② 给出标识符ID和数值NUM的正规式定义
③ 给出该语言的子集对应的状态转换图
④ 词法分析器的功能
输入:所给文法的源程序
输出:二元组(token 或sum ,syn)构成的序列。
其中:syn 为单词种别码
token 为存放单词自身字符串
sum 为整型常数
⑤ 给出总体

你可能感兴趣的:(词法分析器-编译原理实验)