感谢vczh轮子叔的坑了的教程,我的编译原理第一次入了个门,词法分析写完了,今后可以看看书继续往下学了。http://www.cppblog.com/vczh/archive/2014/03/02/206014.html词法分析,就是对于一段代码,把他们分割成一个个的token,同时记录他们的行列号...
分类:
其他好文 时间:
2015-10-23 15:57:55
阅读次数:
337
#include#include #includemain(){ char a[10000]; char ch,bh; int i,s,t,j,q; s=0; t=0; printf("请输入字符(输入#结束):"); do { sca...
分类:
其他好文 时间:
2015-10-14 19:31:59
阅读次数:
213
实验一 词法分析程序一、实验目的:加深对词法分析器的工作过程的理解;加强对词法分析方法的掌握。二、实验内容:用C语言实现简单的词法分析程序;能够使用自己编写的分析程序对简单的程序段进行词法分析。三、实验要求:输入源程序。对源程序进行扫描与分解。按照词法规则,正确识别源程序中的单词符号;识别出的单词以...
分类:
其他好文 时间:
2015-09-21 23:48:03
阅读次数:
282
#include#include#define N 100main(){ int j,i=0; char a[N],b[N]; printf("请输入源程序:(以#结束)\n"); gets(a); i=0; while(a[i]!='#') { ...
分类:
其他好文 时间:
2015-09-21 20:56:50
阅读次数:
104
词法分析器或者叫扫描器主要用来分析字符串的文本,然后把文本里组成的单词分析出来,识别为某一类型的属性。对于编写编译器或者解析器的第一步工作就是做这样的事情:词法分析。以前有很多种使用字符串搜索的办法,这里使用正则表达式来实现这个目的。例子:print("词法分析器")
import collections
import re
Token = collections.namedtuple('To...
分类:
其他好文 时间:
2015-09-13 09:22:43
阅读次数:
140
语法分析器会调用词法分析器。 在语法分析之前,简单的看一下词法分析。 内存管理和 ZIO 输入在词法分析中会用到,因为它们相对比较孤立,不影响主流程的阅读。 上一个版本也看过它们了,这里就不再重复了。 词法...
分类:
其他好文 时间:
2015-09-01 21:39:43
阅读次数:
206
总结一些编译原理词法分析的内容。1 简单介绍 对于编译语言而言,程序都需要通过编译器编译成二进制的代码,这样才可以在计算机上运行。对于现在的程序而言,并不能直接将其翻译成二进制可执行文件。中间需要若干中间环节,其中通常包含词法分析器,语法分析器,语意分析器。这里主要总结一下词法分析器。 词法分析.....
分类:
其他好文 时间:
2015-07-19 23:21:05
阅读次数:
310
下面是一个简单的词法分析器
#include
#include
using namespace std ;
int main()
{
char str[150] ;
// freopen("C:\\Users\\Lionel\\Desktop\\1.txt","r",stdin) ;
int row = 1 , cow = 0 ;
while(gets(str))
{
char temp[10] ;
int index = 0 , i = 0;
...
分类:
其他好文 时间:
2015-07-13 22:32:51
阅读次数:
232
这个是看MOOC学编译原理的一个作业。
识别标识符和关键字,核心在于转移图,dfa的构造package bingone;import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;/**
* 手工构造词法分析器,标注的关键字有if for 。
* @author...
分类:
其他好文 时间:
2015-06-28 12:51:53
阅读次数:
107
编写分析器有两种方法,一种是通过DFA对单词进行识别,二是通过直接编写程序进行识别。本程序采用DFA对单词进行识别。
DFA的实现方法,大概思想和书上一致,在程序中,则是用二维数组代表状态转换矩阵,用一维数组表示终态。
一个词法编辑要实现的功能主要包括以下几点:
能够识别标识符、关键字、数字和运算符,对注释进行过滤,同时还能识别出程序错误。
使用说明:
本程序的输入由当前目录下的in.t...
分类:
其他好文 时间:
2015-06-23 21:37:13
阅读次数:
112