《320144X1(编译原理)》实验报告第一部分 词法分析(实验一必作)实验一 词法分析程序设计与实现实验报告要求详细说明你的程序的设计思路和实现过程
用有限自动机或者文法的形式对词法定义做出详细说明,说明词法分析程序的工作过程,说明错误处理的实现
设计思路:首先把单词进行分类,分为String[] keyword = {"if", "int"};ArrayList biaoshi = new ArrayList();ArrayList changshu = new ArrayList();String[] yunsuan = {"+", "=", "-", ">", "==", "
="};String[] spilt = {",", "(", ")", "{", "}", ";"};五类,分别是关键字、标识符、常数、运算符以及分隔符
然后逐个字符读入,对于关键字或标识符这类英文单词开始的单词,用空格隔开,其他可以用分隔符、运算符、空格、回车等
读入一个单词后对照一开始的五类分析出是哪一类,符合后交给语法分析器处理
实现过程:import java
*;import java
ArrayList;/** * Created by 温 睿诚 on 2016/5/11/0011
*/public class CiFa { String[] keyword = {"if", "int"}; ArrayList biaoshi = new ArrayList(); ArrayList changshu = new ArrayList(); String[] yunsuan = {"+", "=", "-", ">", "==", "
="}; String[] spilt = {",", "(", ")", "{", "}", ";"}; //记录结果的符号表