编译原理第一个实验,用C语言编写的词法分析器(附源文件)。
输入一串字符,可以识别出关键字、运算符,标识符等。
2023/6/8 9:50:55 312KB 编译原理实验 词法分析器
1
去年做的编译原理作业,由于时间紧迫,没有完成语法分析与语义分析,但拥有比较完善的界面(界面有两个,在主程序中可以修改使用哪个界面)。
词法规则如下:关键字:intcharifelserealfordowhile数字、变量名(不使用下划线,头字母不为数字)、符号词法分析生成*.TAKEN、*.SymbolTable两个文件。
保留部分语法分析接口,可以继续完成。
词法分析部分在Lex文件夹下,生成中间数据存储的类在Data下。
由于老师给的语法分析规则太复杂(老师给的还是错的,我后来自己改的),而且在程序中还没有体现,故不上传,需要的可以来信索取,有完成的语法分析表(不知道是否正确……orz)。
注:在界面最下边……2009后面有一个箭头可以弹出菜单,选择"恢复默认设置"即可使用全部功能。
将DisplayForm.cs中38-40行的toolStrip1.Visible=false;toolStrip2.Visible=false;listBox1.Visible=false;中false改为ture则默认显示全部组件。
本程序系自己完成,版权没有,盗版自由,个人完成程序均免资源分下载。
shizhiyu701@live.cn
2023/5/16 7:58:17 70KB 词法分析 C# 编译原理
1
用C#编写的词法分析器,简单实用,合适上交编译原理实验作业,并附有实验报告,用VS2010即可打开原工程.绝对实用!
2023/3/15 22:03:34 290KB 编译原理 词法分析器
1
编译原理实验,实现了一个词法分析器生成Token序列。
两头代码、四元式生成。
含有实验报告。
2023/3/6 2:43:31 781KB 编译原理 实验 词法分析 中间代码
1
编译原理——词法分析器设计与实现,而且完整项目,可运转针对于pascal语言,也可针对于c语言,只需要更改好关键字保留字
2023/2/17 16:26:47 2KB 词法分析器
1
为简单函数绘图言语编写一个解释器。
解释器接受用绘图言语编写的源程序,经语法和语义分析之后,将源程序所规定的图形显示在显示屏(或窗口)中。
用编译器编写工具LEX/YACC提供的方式规定绘图言语的词法和语法,用C/C++言语编写解释器的语义。
实验使用的操作系统是WIN10,实现软件是microftvisualstudiocommunity2017版本。
任务划分为三个部分,分别是词法分析器、语法分析器、语义分析器。
1
利用语法分析器生成工具Yacc/Bison编写一个语法分析程序,与词法分析器结合,能够根据语言的上下文无关文法,识别输入的单词序列能否文法的句子。
有报告,有代码输入:代码片断输出:规约产生式
2023/2/10 7:14:24 189KB 编译原理 语法分析器
1
自定义语言C--的词法系统1)类型系统:支持int、char、void基本类型,分别用词法记号表示为关键字int、char和void。
2)常量:字符常量(用单引号括起来)、字符串常量(用双引号括起来)、八/十/六进制整数常量(0开头表示八进制,0x开头表示十六进制)。
分别用词法记号表示为ch、str和num。
3)变量:与常量对应,使用标识符表示,词法记号表示为id。
4)表达式运算符:支持加减乘除、求余、取负、自增、自减算术运算,大于、大于等于、小于、小于等于、等于、不等于关系运算,与、或、非逻辑运算,表示为词法记号:‘+’,‘-’,‘*’,‘/’,‘%’,‘-’,‘++’,‘--’,‘>’,‘>=’,‘<’,‘<=’,‘==’,‘!=’,‘&&’,‘||’,‘!’。
注意:取负运算和减法运算在词法分析器里是被看做是同一个词法记号。
5)语句:支持赋值语句、do-while、while、for循环语句,if-else、switch-case条件分之语句、函数调用、函数返回、跳转等语句。
涉及的词法记号表示为赋值号‘=’,关键字do,while,for,if,else,switch,case,default,return,break,continue。
语句和函数体要求用大括号括起来,case和default后面需要跟冒号,因而需要包括各种分界符作为词法记号:‘{’,‘}’,‘;’,‘:’,‘(’,‘)’,‘,’。
2022/12/4 4:20:21 56KB 词法分析 编译原理 Lex实现
1
词法分析器:1)定义目标语言的可用符号表和构词规则;
2)依次读入源程序符号,对源程序进行单词切分和识别,直到源程序结束;
3)对正确的单词,按照它的种别以的方式保存在符号表中;
4)对不正确的单词,做出错误处理。
算符优先算法:若输入文法:E->E+T|TT->T*F|FF->(E)|i根据算符优先分析法,将赋值语句进行语法语义分析,翻译成等价的一组基本操作,每一基本操作用四元式表示
1
编译原理课程设计:用高级言语(c++)实现词法分析器、用lex实现词法分析器、LL1实现语法分析。
附加完整实验报告(已排版,可直接打印)
2016/6/16 15:28:56 908KB 编译原理 课程设计 报告 词法分析
1
共 98 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡