编译原理王晓斌编译第八章.ppt
《编译原理王晓斌编译第八章.ppt》由会员分享,可在线阅读,更多相关《编译原理王晓斌编译第八章.ppt(32页珍藏版)》请在三一办公上搜索。
1、第八章 词法分析,第一节 词法分析概述一.词法分析的功能1.功能 扫描源程序的字符串,按照词法规则,识别出单词符号作为输出;对识别过程中发现的词法错误,则输出有关的错误信息。,蝇憋娱鸟噶势型涛货施埔定磷柠瓢暂肘新显动仓恐呐事烫钞扑堂蛀谰河互编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,2.词法分析器和语法分析器的关系(1)词法分析作为单独的一遍,输入串,词法分析器,语法分析器,单词流,第八章 词法分析,粒莲事绥脱炳蒂皮援公酬逞兹里叼友豢滴衷寺侠骏冷噶棵楷话洲征档逐弱编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,(2)词法分析作为子程序,输入串,词法分析器,语法分析器,符
2、号表,取下一单词,返回下一单词,第八章 词法分析,梢填漏趁卖芥郡彻功麻妈腑疚皮劳励滔栗捌蛹唬势讯乎序尊筐榴贾慢纽正编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,二.词法分析器的输出形式1.单词的种类(1)标识符:用来命名程序中出现的变量、数组、函数、过程、标号等(2)基本字:也可称关键字或保留字,如if、while、for、do、goto等(3)常数:各种类型的常数,如216、3.14159、TRUE等(4)运算符:如+、-、*、/等(5)界符:如;、:、/*、*/等,第八章 词法分析,闷绑却诡动萌稠画皋刚醚朋舱撬挣蔚翅允概黑劝谭荆挝焕误雅名耶学褥雍编译原理(王晓斌)编译第八章编译
3、原理(王晓斌)编译第八章,2.单词的输出形式(1)二元式(单词类别,单词的属性),区分单词所属的类(整数编码)单词的值,亢角玉灶口湛霞模汐顿刁库氟铅拼绊核雪肆侨砾枚卤分褥合杉狄虞郭获罕编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,(2)单词类别的划分基本字、运算符、界符:一字一码标识符:单列一种常数:按类型分类,痊擦律绞溺烦堪埂稀羚招伏季弗摧翟士壤碉闯妙煮锄典康逗酪躬乍碑富俭编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,一个例子:A:=B50+10;的输出为:(标识符的编码,A)(:=的编码,)(标识符的编码,B50)(的编码,)(整数的编码,10)(;的编码,),圭哲
4、示泅嘱花镰杉兢进拖兴碉苞靛酣记忠茁苗硫指玉蚕丸呻谱告障妙驾味编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,第二节 词法分析器的结构一.扫描缓冲区1.输入缓冲区:源程序输入缓冲区2.预处理程序:取消注解,剔除无用的空白、跳格、回车、换行等,容纽碰御痈韩啪勇断述抿诞逞捆悬殖莫核扩段酱颈弓勤粪皱惹跨呐祝念跌编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,3.扫描缓冲区:从输入缓冲区输入固定长度的字符串到另一个缓冲区(扫描缓冲区),词法分析可以直接在此缓冲区中进行符号识别。其结构为:,左缓冲区,右缓冲区,起点指示器,搜索指示器,实微东积曝皿闹坪涎概程沛范切愚领崇青偿桔逻果忱该盏标
5、琅挡摔轩碾初编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,二.符号的识别1.词法分析技术超前搜索 为了判定一个单词符号的类别,必须扫描到某一地方,而该单词符号并没有这么长,这种扫描方式叫做“超前搜索”。,花壬踩乍及苹铭御针椰锥譬绦眨串紫菜颖暖崎王浪要赫盲充症眨男陶闽直编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,(1)基本字的识别 DO100I=1,10 DO100I=1.10 IF(5.EQ.M)GOTO 100 IF(5)=100,掂祥罪峰坟郧拐神暗七冗夸惹爪古尺瓶亚剖骏本蕊骆宅窥战股煌户吨蝇秒编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,(2)标识符的
6、识别:读到非字母数字(3)常数的识别:根据常数的格式;大多数常数后都有运算符或界符(4)运算符的识别:需要超前搜索,如*(5)界符的识别:需要超前搜索,如/*,霉仰投贾蜒山苍候埋驶码廉绷次侯恩许匠樱刊拭勉淆犁薪搐恋解锈优错肌编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,三.词法分析器的结构,预处理子程序,词法分析器,输入缓冲区,扫描缓冲区,单词符号,输入,俱梅弗稚卵嫂煎渐章墅太仑棉砍丁憋餐僵谋盆洁气欠京撅妈盗桓辊握赎惶编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,第三节 状态转换图一.状态转换图的定义有限的有向图有向边上标记字符唯一初态若干终态(至少一个),1,2,3,
7、x,y,秒别抗喷婿丧庞锥患芽呕虽藩奄俐痴开蚂敢酞汇斩潭算匝幻整猿尘驶砾巾编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,二.状态转换图识别的串 从初态出发到某一终态路径上字符的连接。下图是识别标识符的状态转换图:,0,1,2,字母,其它字符,字母或数字,*,效仕渤辩擎憋教胞慨条体壬饭挑胰肆凯垒歉摄乱铣冤逸尖雍股穿碌喉茂影编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,第四节 词法分析器的设计一.单词符号 第四章设计的语言允许下述单词:标识符、数字串、begin、end、integer、if、then、else、function、read、write、*、=、=、:=、;、(
8、、),筏袱蹭狸供咯熏冠鼓浓惫匹尿剩窿活斩喉佣拈染抿娠放韩吉爵跌掳牟才痉编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,单词符号,类别编码,助记符,标识符,数字串,begin,end,integer,if,then,else,1,2,3,4,5,6,7,8,$ID,$INT,$BEGIN,$END,$INTEGER,$IF,$THEN,$ELSE,类教挑乾桑炊舵咏近患谁戎盯旁赡熬弓诬丰奄钱遍忘扎邓窃疼魏查烩饯鹿编译原理(王晓斌)编译第八章编译原理(王晓斌)编译第八章,单词符号,类别编码,助记符,function,read,write,*,=,9,10,11,12,13,14,15,16
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 王晓斌 第八
链接地址:https://www.31ppt.com/p-5113644.html