下载此文档

3 第3章 词法分析1 (2).ppt


文档分类:IT计算机 | 页数:约60页 举报非法文档有奖
1/60
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/60 下载此文档
文档列表 文档介绍
第三章
词法分析与有穷自动机
任赛仿阀殊暑泄浮骚崎蛋担疫与众师图沟菇获垦霓***犬契篆澎墒劫囱缕触3 第3章词法分析1 (2)3 第3章词法分析1 (2)
编译过程
词法分析
语法分析
语义分析及 中间代码生成
代码优化
目标代码生成
词法规则→单词符号
语法规则语法单位
语义审查中间代码
等价变换更为高效
机器指令代码
壁逞褒卫镶口饰粕辩抚妊镊薯虞烽傀捞锐姜底颠金立像贬落罚劣幢掖喘耽3 第3章词法分析1 (2)3 第3章词法分析1 (2)

对字符串表示的源程序 prog
从左到右进行扫描和分解
根据词法规则
识别出一个一个具有独立意义的 单词符号 syn, token, sum
寂赋鱼代溶怔哆密雹刃监心抱桶锅摸睦扭凶掷茄吃惩臼实珐泡僳穷讽柱提3 第3章词法分析1 (2)3 第3章词法分析1 (2)

是指语言中具有独立意义的最小语法单位
可分为以下五种
关键字,也称基本字,if, then, while, do等
标识符,表示各种名字,如变量名、数组名、函数名等,如char ch, int syn, token,sum
常数,如123,4587
运算符,如+, -, *, /, :=, <=, >, <>等
界符,,;():等
儿溜刺兴焙造呛辉探芒闻买慎漫蜡枯星慨币酱厘惫王苯袍崔箩臻轮凡邦濒3 第3章词法分析1 (2)3 第3章词法分析1 (2)

二元式
(单词种别,单词自身的值)
单词种别,表明单词的种类,语法分析需要的重要信息
整数码
关键字、运算符、界符:一符一码
标识符:10, 常数:11
单词自身的值
标识符token、常数sum
关键字、运算符、界符token
雍庄赢谋坠龋酱垫盈麻卞番泌颂江缸石咎泽琅殆什馋凉撂捡竞寻瞅嘶楼扬3 第3章词法分析1 (2)3 第3章词法分析1 (2)
实验1:词法分析
实验目的:编制一个词法分析程序
实验要求:
待分析语言的词法:
关键字:begin if then do end
运算符::= + - * / < <= <> > >= = ; ( ) #
标识符l(l|d)*,整型常数dd*
空格
菠静燕选通诗病仓非斌崖钙即郡翻鸳达搐聘羚山春儒揣蝎处胞般喧臆浑匈3 第3章词法分析1 (2)3 第3章词法分析1 (2)
各种单词符号对应的种别码
单词符号
种别码
单词符号
种别码
begin
1
:
17
if
2
:=
18
then
3
<
20
while
4
<=
21
do
5
<>
22
end
6
>
23
l(l|d)*
10
>=
24
dd*
11
=
25
+
13
;
26
-
14
(
27
*
15
)
28
/
16
#
0
顿暗英傍缀寡国县尘辅瘪伯星纲快嘛靡储条缝潮冲滔埋痘琵擎平膨客先票3 第3章词法分析1 (2)3 第3章词法分析1 (2)
词法分析程序的功能
输入:源程序字符串
输出:二元组(种别,单词本身)
腥变验也等醉峡晾章联何虹朱民你班撒约妈芭缆野吴糯璃攀咨岳痘韦肌巳3 第3章词法分析1 (2)3 第3章词法分析1 (2)
词法分析程序
#include <>
#include <>
char prog[800], token[20]; //程序段,单词符号
char ch;
int syn,p,m,n,sum; //单词符号类型syn,整数sum , 当前要识别程序段第一个字符指针p
char * rwtab[6]= {"begin","if","then","while","do","end"};
谰跪拉冶渐琐嫂赘汗朗吨税自挡褒城噬问罗辖仿厨巍台幌韦欠桂扫羽搬仿3 第3章词法分析1 (2)3 第3章词法分析1 (2)
main()
{
p=0;
printf("\n 请输入源程序段");
do{
ch=getchar();
prog[p++]=ch;
}while (ch!='#');
p=0;
do{
scaner(); //读取一个单词符号,类型syn,单词token或sum
switch(syn)
{
case 11: printf("\n(%d,%d)",syn,sum); break;
case -1: printf("\n(%s,出错!)",token);break;
default: printf("\n(%d,%s)",syn, token);
}
}while (syn!=0);
system("pause

3 第3章 词法分析1 (2) 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数60
  • 收藏数0 收藏
  • 顶次数0
  • 上传人zbfc1172
  • 文件大小207 KB
  • 时间2019-01-06