利用LEX工具构造TINY语言的词法分析器

本文档介绍了如何利用LEX工具来构建TINY语言的词法分析器。实验目标是创建一个能读取并分解教材中tiny语言样例代码为token的扫描器。内容包括源文件位置、输入和输出设计以及最终实现的效果展示。
摘要由CSDN通过智能技术生成

实验目的

构造 tiny 语言的词法分析器(扫描器),要求利用第三方的 lex 工具进行构造。实验结果:构造出的扫描器,能够读入教材样例中给出的 tiny 语言的示例代码,分解成 token 输出。

源文件地址

源文件地址

输入设计

{ Sample program

in TINY language -

computes factorial

}

read x; { input an integer }

if 0 < x then { don't compute if x <= 0 }

fact := 1;

repeat

fact := fact * x;

x := x - 1

until x = 0;

write fact  { output factorial of x }
end

输出设计

reserved word:read
ID,name= x
;
reserved word:if
NUM,val= 0
<
ID,name= x
reserved word:then
ID,name= fact
:=
NUM,val= 1
;
reserved word:repeat
ID,name= fact
:=
ID,name= fact
*
ID,name= x
;
ID,name= x
:=
ID,name= x
-
NUM,val= 1
reserved word:until
ID,name= x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值