1 本科实验报告 课程名称: 编译原理 实验项目:无符号数的词法分析程序(实验一) 实验地点: 计算机学院软件实验室 专业班级: 学号: 学生姓名: 指导教师: *** 2 0 1 3 年 1 1 月 1 6 日 2 一、实验目的和要求 1 .培养学生初步掌握编译原理实验的技能
2 .验证所学理论、巩固所学知识并加深理解
3 . 对学生进行实验研究的基本训练
二、实验内容和原理 实验一、 无符号数的词法分析程序(4 学时) 内容:掌握词法分析的基本思想,并用高级语言编写无符号数的词法分析程序
要求:从键盘上输入一串字符(包括字母、数字等),最后以“;”结束,编写程序识别出其中的无符号数
无符号数文法规则可定义如下: →│ →
[E]│ E → →[+│-] → →{} →0 1 2 3
9 读无符号数的程序流程图见下图 3 开始0=>w,p,j1=>e数字否出错数值=〉dw*10+d=>w取下一字符数字否是‘
’否是‘E’否退一字符‘整型’=〉CJ1取下一字符数字否出错数值=〉dw*10+d=>wj+1=>j取下一字符数字否是‘E’否取下一字符是‘-’否是‘+’否数字否数值=〉dp*10+d=>p取下一字符数字否退一字符‘实型’=>CJ1W*10C*P-J=>CJ2出口-1=>e取下一字符出错YNNNNYNYYNNYYNNYNYYNYYY 三、主要仪器设备 4 PC 机+Java 语言编程环境 四、实验结果与分析 1
实验代码: package text1; import java
BufferedReader; import java
InputStreamReader; public class Text1 { /** * @param args */ public static void main(String[] args) th