语言中预算符号的优先级_软考自查:程序设计语言与语言处理程序基础

本文围绕程序设计语言与语言处理程序基础展开,介绍了编译过程、文法定义、正规式等内容。提到正规式运算符优先级,还给出文法推导、有限自动机等例题。阐述表达式的前缀、中缀、后缀形式,讲解函数调用的传值与传址,最后列举多种程序语言特点。

程序设计语言与语言处理程序基础

内容提要

  • 编译与解释
  • 文法
  • 正规式
  • 有限自动机
  • 表达式
  • 传值与传址
  • 多种程序语言特点

编译过程

65aeb694303e4b21b492d3775603a517.png

文法定义

0951eb77c6d7154027d81d42ceb9d342.png
a143063aa1ea40c27bc8b9b0d8a897fb.png

语法推导树

一棵语法树应具有以下特征:

1、每个结点都有一一个标记,此标记是V的一个符号;

2、根的标记是S;

3.若一结点n至少有一个它自己除外的子孙,并且有标记A,则A肯定在VN中:

4如果结点n的直接子孙,从左到右的次序是结点n1, n2,..nk,其标记分别是:A1,A2,...,Ak那么A->A1,A2,...Ak,一定是P中的一个产生式。

例:

3457d6eca24cbdfcb42f4b812fe1eacb.png

有限自动机(重点)

f29278a791e56ce6f282ab043f118838.png
66902086ea32758a9086f6bbc43e17fc.png

正规式

正规式是描述程序语言单词的表达式,对于字母∑,其上的正规式及其表示的正规集可以递归定义如下。

①ε是一个正规式,它表示集合L(ε)={ε}。②若a是∑上的字符,则a是一个正则式,它所表示的正规L(a)={a}。③若正规式r和s分别表示正规集L(r)=L(s),则(a)r|s是正规式,表示集合L(r)UL(s);(b)r.s是正规式,表示集合L(r)L(s); (c)r*是正规式,表示集合(L(r))*;(d)(r)是正规式,表示集合L(r)。

仅由有限次地使用上述三个步骤定义的表达式才是∑上的正规式。由此可见,正规式要么为空,要么由字母、或、连接、闭包运算符组成。其中闭包运算符“*”具有最高的优先级,连接运算具有次高优先级,或运算符“|"具有最低优先级。

文法推导与正规式例题

649e121b759924af9448a774e3bddc4a.png

(1):D (2):C

有限自动机例题

例题:

下图所示为一个有限自动机(其中,A是初态、C是终态),该自动机可识别(C)。

9f046cf912f493307d49e17cc63a5871.png

A:0000 B:1111

C:0101 D:1010


程序语言基础-表达式

  • 前缀表达式(+ab)
  • 中缀表达式(a+b)
  • 后缀表达式(ab+)
ce8ef4ad1b7231ed58f949834b1e0baa.png

例题:

表达式(a-b)*(c+5)的后缀式是(D)。

A:a b c 5 + * -

B:a b - c + 5 *

C:a b c - * 5 +

D:a b - c 5 + *

303a4b49b41fdd2f84780b4eee161a2b.png

函数调用-传值与传址

(重点)

9656d91040b83ea9bf9d498876b2734d.png
06aa500409c8ad12e6c9fc7da52cd2d5.png

函数的调用

传值

6873707a4d30cce761059e8c0740c7b3.png

输出结果是:4 3 3 4

传址

39c1cc9cea246b781550e93955af096f.png

输出结果:4 3 4 3

函数的调用

b98caab299889dd16a71554413a41632.png

程序语言基础-各种程序语言特点

1.Fortran语言(科学计算,执行效率高)

2.Pascal语言(为教学而开发的,表达能力强, Delphi )

3.C语言(指针操作能力强,高效)

4.Lisp语言(函数式程序语言,符号处理,人工智能5.C++语言(面向对象,高效)

6.Java语言(面向对象,中间代码,跨平台)

7.C#语言(面向对象,中间代码,.Net)

8.Prolog语言(逻辑推理,简洁性,表达能力,数据库和专家系统)

9.python语言(面向对象,简单易懂,人工智能,大数据,现上升较快)

更多软考自查可在我的"文章"中查看!!!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值