- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章 程序设计语言刻划
第2章 程序设计语言的刻划;程序设计语言需要有语言文本来精确地规定其功能、源程序的表示、语义和其限制,以及语用、语境等其他信息。
语言文本是实现者(厂商和开发人员)和使用者(编程人员)之间的界面。
不同程序设计语言文本的描写方法有相当大的差别。
;程序设计语言文本的共同点:
(1)语言文本的标准化;
国际标准(ISO)、国家标准(GB)、军用标准(T)、部颁布标准、企业标准等。
程序设计语言的标准属于指导性标准,而不是强制性标准。
在当前的形势下不走标准的路是难以实现工业化发展的。;(2)语言文本的格式和叙述相对刻板和严格,各个文本本身有较为统一的书写风格。
(3)各个语法单位均有语法、语义等描述。
语法表示:BNF及其变形
语义部分:对语法的解释、语法元素的限制、语义的说明、语用和语境等,一般采用自然语言。;2.1 程序设计语言的文本刻划;2.2.1 源程序
程序设计语言比自然语言简单但比形式语言复杂,形式语言是程序设计语言的理论基础。
在程序设计语言中,句子即为正确的源程序。
正确:语法正确、语义合理、而语用、语境有适当解释。;语法正确的源程序:它可以由相应语法规则集产生的。如果语法是无歧义的,则语法正确的源程序有且仅有一棵语法树与之对应。
这里的语法是有序的,即所有的结点有先后次序,其树叶的有序排列(从左到右)即为源程序。
语法正确的源程序,其语义未必正确
如,某个名字未经说明,却在语句或表达式中出现。;2.2.2 程序设计语言的语法形式描述方法
一、BNF形式
BNF形式方法或其变种是使用最好最广的语法描述方法。是一种元语言。
元语言连接词:
::= (定义为)
|(或)
[ ], { }, { }+, { }*,;元语言变量:
汉字串1 汉字串1为语法单位
“汉字串2” 汉字串1
“汉字串2”为语义限制词,用于限定或说明汉字串1 。
;元语言构成规则:
规则 = df元语言变量::=语法项
语法项 =df语法因子|语法因子 语法项
语法因子 =df元语言变量| |元语言变量语法因子
“元语言变量”的值是对象语言中的非终结符号。
在定义式的右端,“元语言变量”的值既可以是非终结符号也可以是终结符号。
;[ A]:表示A可以出现也可以不出现,但均符合语法,出现与否将可能影响其语义。
{ A}:表示A出现一次。
{ A}+:表示{ A}重复1次到无限多次
{ }* :表示{ A}重复0次到无限多次
表示{ A}重复n次到m次
;例如,Ada语言中的有关异常处理结构的定义如下;
handled_sequence_of_statements ::= sequence_of_statements [exception exception_handler {exception_handler}]
exception_handler ::= when [choice_parameter_specification:] exception_choice {| exception_choice} = sequence_of_statements
choice_parameter_specification ::= defining_identifier
exception_choice ::= exception_name | others ;exception when E1=…..处理程序1
when E2=…..处理程序2
when others=…..默认的处理程序
;二、抽像语法
设有下列BNF表示的语法(设其中W为语句,B为条件,I为变量,E为表达式)
W::= I:=E (用于定义 赋值语句)
W::= if B then W else W (用于定义 条件语句)
W::= while B do W (用于定义 当语句)
W::=W;W(用于定义顺序语句)
;上述语句可以用下列形式表示:
Assignment(I,E)
If (B,W1,W2)
While(B,W)
Block(W1,W2);三、属性文法
属性文AG是一个五元组。
AG=(D,V,S,A,P)
其中D是属性集合。(D1,D2……f1,f2 … )是一个代数结构,具有属性域D1,D2 …及部分函数f1,f2 …。这些函数是在这些域的笛卡尔积上的操作。
V=Vn U Vt, 其中Vn是非终结符号, Vt 是终结符号;S是开始符号;
A是属性文法符号的集合,而每一个属性文法符号的形式为
x?a1? a2? …… ?an
其中x∈V,ai(i=1,……n)∈Dj, ai前的?表示或为↓(其后为继承属性),或为↑(其后为综合属性),P称为产生式
您可能关注的文档
最近下载
- 《城市轨道交通工程设计概算编制办法》(建标[2017]89号).pdf
- 建设工程技术支持方案(3篇).docx VIP
- 饲料企业生产成本控制.ppt VIP
- 首航加油加气站LNG加气项目职业病防护设施设计专篇资料性附件.pdf VIP
- 截渗墙工程施工方案(3篇).docx
- 数据资产入表全流程指南(92页 PPT).pptx VIP
- 新项目方法验证能力确认报告(固定污染源废气-烟气参数的测定HJT-397-2007).docx VIP
- 外国影视音乐 星球大战 课件高中音乐人音版(2019)必修 音乐鉴赏.pptx VIP
- 部编版八年级语文上册古诗文理解性默写练习.docx VIP
- 时间管理写ppt关于时间管理 内容.ppt VIP
原创力文档


文档评论(0)