编译原理(王晓斌)编译第八章.ppt
《编译原理(王晓斌)编译第八章.ppt》由会员分享,可在线阅读,更多相关《编译原理(王晓斌)编译第八章.ppt(32页珍藏版)》请在三一办公上搜索。
1、第八章 词法分析,第一节 词法分析概述一.词法分析的功能1.功能 扫描源程序的字符串,按照词法规则,识别出单词符号作为输出;对识别过程中发现的词法错误,则输出有关的错误信息。,2.词法分析器和语法分析器的关系(1)词法分析作为单独的一遍,输入串,词法分析器,语法分析器,单词流,第八章 词法分析,(2)词法分析作为子程序,输入串,词法分析器,语法分析器,符号表,取下一单词,返回下一单词,第八章 词法分析,二.词法分析器的输出形式1.单词的种类(1)标识符:用来命名程序中出现的变量、数组、函数、过程、标号等(2)基本字:也可称关键字或保留字,如if、while、for、do、goto等(3)常数:
2、各种类型的常数,如216、3.14159、TRUE等(4)运算符:如+、-、*、/等(5)界符:如;、:、/*、*/等,第八章 词法分析,2.单词的输出形式(1)二元式(单词类别,单词的属性),区分单词所属的类(整数编码)单词的值,(2)单词类别的划分基本字、运算符、界符:一字一码标识符:单列一种常数:按类型分类,一个例子:A:=B50+10;的输出为:(标识符的编码,A)(:=的编码,)(标识符的编码,B50)(的编码,)(整数的编码,10)(;的编码,),第二节 词法分析器的结构一.扫描缓冲区1.输入缓冲区:源程序输入缓冲区2.预处理程序:取消注解,剔除无用的空白、跳格、回车、换行等,3.
3、扫描缓冲区:从输入缓冲区输入固定长度的字符串到另一个缓冲区(扫描缓冲区),词法分析可以直接在此缓冲区中进行符号识别。其结构为:,左缓冲区,右缓冲区,起点指示器,搜索指示器,二.符号的识别1.词法分析技术超前搜索 为了判定一个单词符号的类别,必须扫描到某一地方,而该单词符号并没有这么长,这种扫描方式叫做“超前搜索”。,(1)基本字的识别 DO100I=1,10 DO100I=1.10 IF(5.EQ.M)GOTO 100 IF(5)=100,(2)标识符的识别:读到非字母数字(3)常数的识别:根据常数的格式;大多数常数后都有运算符或界符(4)运算符的识别:需要超前搜索,如*(5)界符的识别:需要
4、超前搜索,如/*,三.词法分析器的结构,预处理子程序,词法分析器,输入缓冲区,扫描缓冲区,单词符号,输入,第三节 状态转换图一.状态转换图的定义有限的有向图有向边上标记字符唯一初态若干终态(至少一个),1,2,3,x,y,二.状态转换图识别的串 从初态出发到某一终态路径上字符的连接。下图是识别标识符的状态转换图:,0,1,2,字母,其它字符,字母或数字,*,第四节 词法分析器的设计一.单词符号 第四章设计的语言允许下述单词:标识符、数字串、begin、end、integer、if、then、else、function、read、write、*、=、=、:=、;、(、),单词符号,类别编码,助记
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 王晓斌 第八

链接地址:https://www.31ppt.com/p-4993746.html