下载 > 资源分类 >  开发技术 >  C > 编译原理 词法分析 源代码

编译原理 词法分析 源代码

2009-05-18 上传大小:7KB
实验一:词法分析程序
一、实验目的 
    通过设计编制调试一个具体的词法分析程序,加深对词法分析原理的理解。并掌握在对程序设计语言源程序进行扫描过程中将其分解为各类单词的词法分析方法。
编制一个读单词过程,从输入的源程序中,识别出各个具有独立意义的单词,即基本保留字、标识符、常数、运算符、分隔符五大类。并依次输出各个单词的类型码及单词符号的自身值。(遇到错误时可显示“Error”,然后跳过错误部分继续显示) 
二、实验要求
用C或C++写一个简单的词法分析程序,程序可以满足下列要求:
1、能分析如下几种简单的语言词
法
(1) 标识符: ID=letter(letter|digit)*
(2) 关键字(全部小写)
main int float double char if  then  else switch case break continue while do for
(3)整型常量:NUM=digit digit*
(4)运算符
   = + - * / < <= == != > >= ; ( )? : 
(5)空格由空白、制表符和换行符组成,用以分隔ID、NUM、运算符等,字符分析时被忽略。
2、单词符号和相应的类别码
假定单词符号和相应的类别码如下:
单词符号 种别码 
int  1
=  17
float  2 
<  20
if  3 
<=  21
switch 4 
==  22
while  5 
!=  23
Do  6 
>  24
标识符 10 
>=  25
整型常量 11 
;  26
+  13 
(  27
-  14 
)  28
*  15 
?  29
/  16 
:  30
3、词法分析程序实现的功能
输入:单词序列(以文件形式提供),输出识别的单词的二元组序列到文件和屏幕
输出:二元组构成: (syn,token或sum)
其中: syn 为单词的种别码
token 为存放的单词自身符号串
sum 为整型常数
例:
源程序: int ab; float ef=20;
ab=10+ef;
输出:
(保留字--1,int)
(标识符--10,ab)
(分号--26,;)
(保留字--2,float)
(标识符--10,ef)
(等号--17,=)
(整数--11,20)
(分号--26,;)
(标识符--10,ab) 
(等号--17,=) 
(整数--11,10)
(加号--13,+)
(标识符--10,ef) 
(分号--26,;)
4、自己准备测试数据存放于TestData.txt文件中,测试数据中应覆盖有以上5种数据,测试结果要求以原数据与结果对照的形式输出并保存在Result.txt中,同时要把结果输出到屏幕。
5、提前准备 
① 实验前,先编制好程序,上机时输入并调试程序。
准备好多组测试数据(存放于文件TestData.txt中)。
6、写出实验报告
	报告格式:要求有实验名称、实验目的、实验要求、实验内容、实验小结。
	其中实验内容包括算法分析、程序流程图及程序代码。
...展开收缩
综合评分:4(20位用户评分)
开通VIP C币充值 立即下载

评论共有19条

qq_29475933 2016-11-08 16:51:09
不值啊啊啊,心疼我的积分:(
hanfeng0206 2015-04-03 17:40:52
得改改才能够使用呢
u013766398 2014-12-14 19:06:00
比较不错!跟我的想法有点不同,但还是要感谢楼主!

登录后才能评论

 

相关推荐

编译原理 词法分析(内有源代码) 立即下载
积分/C币:3
编译原理词法分析报告和源代码 立即下载
积分/C币:5
编译原理之词法分析(C源代码) 立即下载
积分/C币:3
编译原理词法分析报告+源代码 立即下载
积分/C币:5
编译原理词法分析源码 立即下载
积分/C币:5
编译原理实验1《词法分析》 立即下载
积分/C币:5
编译原理词法分析 立即下载
积分/C币:8
编译原理词法分析课件 立即下载
积分/C币:3
编译原理 词法分析 立即下载
积分/C币:3
编译原理-词法分析 立即下载
积分/C币:3
编译原理--词法分析实验(含代码) 立即下载
积分/C币:5
编译原理_词法分析.java 立即下载
积分/C币:2
编译原理 lab1 词法分析 立即下载
积分/C币:3
编译原理词法分析程序 立即下载
积分/C币:3
C# 编译原理词法分析 立即下载
积分/C币:5
编译原理实验一-词法分析程序-Java 立即下载
积分/C币:0
哈工大编译原理词法分析实验报告 立即下载
积分/C币:5
编译原理实验一词法分析java代码 立即下载
积分/C币:3
编译原理词法分析实验报告 立即下载
积分/C币:3
关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
扫码关注并点击右下角获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

编译原理 词法分析 源代码

会员到期时间: 剩余下载个数: 剩余C币:0 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
(仅够下载10个资源)
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
C币充值 开通VIP
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可奖励5下载分

  • 举报人:
  • 被举报人:
  • 举报的资源分:
  • *类型:
  • *详细原因: