奥鹏易百

 找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

帮助中心知识拓展客服QQ 515224986
查看: 472|回复: 0

大工20秋《编译原理基础》辅导资料三

[复制链接]

2947

主题

1

回帖

5896

积分

论坛元老

积分
5896
发表于 2021-3-7 15:37:26 | 显示全部楼层 |阅读模式
扫码加微信
编译原理基础辅导资料三
主    题:第二章词法分析
学习时间:2020年10月12日—10月18日“不忘初心、牢记使命”主题理论学习:
担使命,就是要牢记我们党肩负的实现中华民族伟大复兴的历史使命,勇于担当负责,积极主动作为,用科学的理念、长远的眼光、务实的作风谋划事业;保持斗争精神,敢于直面风险挑战,知重负重、攻坚克难,以坚忍不拔的意志和无私无畏的勇气战胜前进道路上的一切艰难险阻;在实践历练中增长经验智慧,在经风雨、见世面中壮筋骨、长才干。
摘选自《在“不忘初心、牢记使命”主题教育工作会议上的讲话》内    容:
我们这周主要学习第二章词法分析词法记号的描述与识别的相关内容,希望通过下面的内容能使同学们加深对本章相关知识点的理解。
教学目标:
能够理解词词法记号的描述与识别的方法
重点和难点:
重点
  正规式
  状态转换图
  有限自动机
  DFA构建
  子集构造法
   DAF化简
难点
有限自动机
一、词法分析器
词法记号的描述与识别
词法模式的表示方法,是词法记号描述的核心。

下面是用于描述词法记号的模式语言。
串和语言

串的运算
连接        xy    s( = (s = s
积(指数)  s0为(,si为si-1s(i>0)
语言的运算
和:L∪M = {s | s (L 或 s ( M }
连接:LM = {st | s ( L 且 t ( M}
指数:L0是{( },Li是Li -1L
闭包:L( = L0 ∪ L1 ∪ L2 ∪…
正闭包: L+ = L1 ∪ L2 ∪…定义规则说明 L(r) 是怎样以各种方式从 r 的子正规式所表示的语言组合而成。
正规式用来表示简单的语言,叫做正规集。
正规式
正规式:又称正则表达式,
Regular Expression
正规式:按照一组定义规则,由较简单的正规式构成的,每个正规式 r 表示一个语言 L(r)。
定义规则说明 L(r) 是怎样以各种方式从 r 的子正规式所表示的语言组合而成。
正规式用来表示简单的语言,叫做正规集。
正规式的例子  ( = {a, b}
a | b                        {a, b}
(a | b) (a | b )        {aa, ab, ba, bb}
aa | ab | ba | bb        {aa, ab, ba, bb}
a*                        由字母a 构成的所有串集
(a | b)*                由a 和b 构成的所有串集
复杂的例子
    (  00  |  11 |  ( (01 | 10) (00 | 11) ( (01 | 10) )  ) (
    句子:01001101000010000010111001

3、词法记号的识别等同于对字符串的匹配过程
这个匹配过程可以基于状态转换图来完成
状态转换图==有限状态机
4、状态转换图





小结

本章练习题:填空题
1、如果X和Y都是串,那么X和Y的_________是把Y加到X的后面形成的串。
答案:连接
L的_________表示零个或多个L连接的并集。
答案:闭包
选择题
1、词法分析器的输入是(         )。
A.单词符号串                   B.源程序                   C.语法单位                D. 目标程序
答案:B
2、词法分析器在扫描源程序的过程中不会去掉_______。
A.注释                           B.空格                   C.换行符                        D.分号
答案:D
拓展资料关于Java技术和编译技术的网站收藏
一篇关于使用Java作为中间语言的编译器的实现文章:
?Java as an Intermediate Language
http://www.cs.cmu.edu/~scandal/html-papers/javanesl/index.html
?
?
Compiling the Java Programming Language?
http://www.bearcave.com/software/java/java_compiler.html
?
使用VM相关的编程语言
http://www.robert-tolksdorf.de/vmlanguages.html
Programming Language Research的 http://www.cs.cmu.edu/afs/cs.cmu.edu/user/mleone/web/language-research.html
本内容由易百教育整理发布
网址www.openhelp100.com
QQ 515224986
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|www.openhelp100.com ( 冀ICP备19026749号-1 )

GMT+8, 2024-11-24 10:41

Powered by openhelp100 X3.5

Copyright © 2001-2024 5u.studio.

快速回复 返回顶部 返回列表