收藏 分享(赏)

课程说明.ppt

上传人:杨桃文库 文档编号:4898947 上传时间:2019-01-21 格式:PPT 页数:17 大小:1.59MB
下载 相关 举报
课程说明.ppt_第1页
第1页 / 共17页
课程说明.ppt_第2页
第2页 / 共17页
课程说明.ppt_第3页
第3页 / 共17页
课程说明.ppt_第4页
第4页 / 共17页
课程说明.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、6.程序设计语言PL/0,编译原理实践,PL/0语言概述 EBNF定义的PL/0语法 PL/0语法图 判断是否符合2条限制规则,1.PL/0语言概述,由著名计算机科学家、PASCAL语言的创始人N.Wirth教授选择提供的 在其专著Algorithms + Data Structures = Programs一书(译著书名:算法数据结构程序)中给出,1.1PL/0语言的功能,1.语句类型 1)赋值语句 2)语句串,beginend 3)条件语句,即if语句 4)循环语句,即while语句 5)过程调用语句,即call语句 2.数据类型只有整数类型 3.说明部分类型 1)常量说明 2)变量说明

2、3)过程说明 4)在一个过程内说明常量、变量和过程 PL/0允许递归调用,既可以间接递归也可以直接递归,1.2PL/0语言实例,var i; begini:=0;while i 12 do i := i + 2; end.,var a, b; begina:=10;if a 12 then b := a/2; end.,CONST A=10; (* 常量说明部分 *) VAR B,C; (* 变量说明部分 *)PROCEDURE P; (* 过程说明部分 *)VAR D; PROCEDURE Q; VAR X; BEGIN READ(X);D:=X;WHILE X#0 DO CALL P; E

3、ND; BEGIN WRITE(D); CALL Q; END; BEGIN CALL P; END.,Q的过程体,p的过程体,主程序体,保留字: begin, call, const, do, end, if, odd, procedure, then, var, while 符号: . , ; := + - * / ( ) 标识符:以字母开头的,任意字母和数字组成的序列 数:阿拉伯数字的序列 关系运算符: = # =,2.EBNF定义的PL/0语法,program = block “.“. A program is a block. block = “const“ ident “=“ nu

4、mber “,“ ident “=“ number “;“ “var“ ident “,“ ident “;“ “procedure“ ident “;“ block “;“ statement. A block is a sequence of constant, variable and procedure declarations followed by a statement.,statement = ident “:=“ expression| “call“ ident| “begin“ statement “;“ statement “end“| “if“ condition “t

5、hen“ statement| “while“ condition “do“ statement. A statement is an assignment statement, a procedure call, a compound statement, an if statement, a while statement, or empty. Both if and while statements have conditionals,condition = “odd“ expression| expression (“=“|“#“|“|“=“)expression. A conditi

6、onal is a relational expression or an “odd“ test.,expression = “+“|“-“ term (“+“ | “-“) term . term = factor (“*“|“/“) factor . factor = ident| number | “(“ expression “)“. ident = letter (digit | letter) number = digit digit,3. PL/0语法图,部分非终结符的含义,block分程序 statement语句 condition-条件 expression-表达式 term-项 factor-因子,4.判别是否符合两条限制规则,方法: 1)找出图中每一个分支点,考察每一个分支点的各个分支的头符号是否相异 2)找出图中每一个透明结构,考察每个透明结构,考察每个透明结构的头符号集合与其跟随符号集合是否相异 结论:PL/0语言文法符合两条限制规则,可以应用简单辨认算法的LL(1)文法。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 实用文档 > 说明文书

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报