编译原理课程设计.doc

约23页DOC格式手机打开展开

编译原理课程设计, 全文约4300字 论述翔实 一.设计要求实验目的:编程实现简单的词法分析器。实验要求:1、画出识别状态转换图。2、给出一个简单的c语言程序,能识别出其单词符号。 3、输出采用二元组。实验环境:本程序在vc6.0环境下编译通过。二.设计思想本设计按词法分析器的功能和作为一个独立子程序模块的要求进行设计,...
编号:10-24971大小:139.00K
分类: 论文>计算机论文

内容介绍

此文档由会员 棉花糖糖 发布

编译原理课程设计

全文约4300字 论述翔实

一.设计要求
实验目的:编程实现简单的词法分析器。
实验要求:
1、画出识别状态转换图。
2、给出一个简单的C语言程序,能识别出其单词符号。
3、输出采用二元组。
实验环境:本程序在VC6.0环境下编译通过。
二.设计思想
本设计按词法分析器的功能和作为一个独立子程序模块的要求进行设计,用来识别C语言程序单词符号,并用二元组形式输出。
词法分析器的第一步是输入源程序文本。输入串一般保存在一个缓冲区中――即输入缓冲区。词法分析的工作就是不断从缓冲区中读入字符,然后进行单词符号识别。因此,我们可以先构造一个预处理子程序,该子程序将完成下述功能:1、将编辑用的多余的空白符、跳格符、回车符和换行符进行剔除。保证每两个单词符号至多有一个空格作为分隔。(说明:因为注释涉及到单词符号的识别,所以将其放到词法分析时处理)2、每当词法分析器调用其时,能处理一串确定长度(本实验为256个字符)的输入字符,并将其装入缓冲区。缓冲区使用一个可以容纳512个字符的数组实现。设计时,将它均分为两个区域互补使用。这样可以有效增大单词符号长度。
单词符号的识别包括:1、关键字识别2、标志符的识别3、常数识别4、算符和界符识别。其中要用到超前搜索的方法。即当读入一个字符,发现此单词已经结束,或者需要读入后面的字符才能判断当前单词或者符号。此时,就需要用到超前搜索的方法。当判别出来当前单词或符号的时候,就将搜索指针回退。