软件设计师培训03
更新时间:2023-05-11 11:34:01 阅读量: 实用文档 文档下载
软件工程师培训
软件设计师培训——第三讲王宇 东北大学网络中心
软件工程师培训
2011年3月7日
提纲程序语言基础知识 程序语言基础知识相关试题
王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识了解程序语言的种类、特点和适用范围,掌握 汇编、编译、解释系统的基本原理,以及程序 语言的数据结构和控制结构。 各种程序设计语言的主要特点和适用情况。 计算机只能理解和执行机器语言。程序语言要 在计算机上运行,必须有一个程序,使机器能 够理解用程序语言书写的用户程序,这就是所 谓的语言处理程序。它可以分为两大类:解释 程序和翻译程序。王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识(续)常用程序语言介绍Fortran是第一个被广泛用于科学计算的高级语言。 Algol是另一个早期研制出来的高级语言。它有严格 的文法规则,用巴科斯范式BNF来描述语言的文法。 Algol是一个分程序结构的语言。 Cobal是一种面向事务处理的高级语言。 Pascal语言提供的为数不多而又相当紧凑的机制使 得这个语言具有相当强的表达能力,是第一个完整 的结构化程序设计语言。王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识(续)C是一种通用程序设计语言。 面向对象的C++ 逻辑型语言Prolog 函数型语言LISP
解释程序和翻译程序解释:同时输入程序和数据执行 翻译:把程序设计语言降低到机器水平汇编程序:源程序为汇编程序 编译程序:源程序为高级语言
翻译方式程序执行效率高,解释方式简单移植性好 JAVA语言,先编译后解释王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识(续)编译程序的功能是把某高级语言的源程序翻译成与之 等价的低级语言(汇编语言或机器语言)的目标程序。其 过程很复杂,可分成6个阶段:词法分析阶段。该阶段的任务是从左到右逐个字符的读入源 程序,识别出一个个的单词符号。词法分析所依据的是语言 的词法规则,即描述单词结构的规则。词法规则可用3型文法 (正规文法)或正规式来描述,有限自动机能识别正规文法 所定义的语言和正规式所表示的集合。 语法分析阶段。该阶段任务是在词法分析的基础上将单词符 号序列分解成各类语法单元。语法分析所依据的是语言的语 法规则,即描述程序结构的规则。语法分析有自顶向下分析 (递归子程序分析法LL1)和自底向上分析(LR和算符优先分 析)两大类。王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识(续)语义分析阶段。审查源程序有无语义错误,为代码
生成阶段收集类型信息。 中间代码生成阶段。所谓“中间代码”是一种简单、 含义明确的记号系统。 代码优化阶段。对前阶段产生的中间代码进行变换 或进行改造,目的是使生成的目标代码更为高级, 即省时间和省空间。 目标代码生成阶段。是把中间代码变换成特定机器 上的绝对指令代码或可重定位的指令代码或汇编指 令代码。这是编译的最后阶段,它的工作与硬件系 统的结构和指令的含义有关。王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识(续)词法分析和语法分析本质上都是对源程序的 结构进行分析。而语义分析和中间代码生成 所依据的是语言的语义规则,一般采用语法 指导翻译和中间代码生成。 自底向上分析法采用一个后进先出栈的数据 结构,是移进-规约过程(找出句柄)。 自顶向下分析法必须改写文法,采用预测分 析法,要消除左递归和提取公共左因子。王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识(续)文法和语言形式描述文法G是一个四元组,可表示为G(VT, VN, S, P)。VT是一个非空有限集,每个元素称为终结符。 VN是一个非空有限集,每个元素称为非终结符。 P是一个非终结符,称为开始符号;它至少要在一条产生式中作为左部出现。 S是一个产生式集合(有限)。王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识(续)文法根据对产生式施加不同的限制,分成4种类型,即0型、1型、2型和3型。
文法类型 0型(PSG) 1型(CSG) 2型(CFG) 3型
文法名称 短语结构文法 上下文有关文法 上下文无关文法 右线性文法(正规文法)
语言名称 递归可枚举语言 上下文有关语言 上下文无关语言 有限状态文法
对应的自动机 图灵机(Turing) 线性界限自动机 非确定下推自动机 有限状态自动机
王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识(续)通过对产生式施加不同的限制,Chomsky将文法分为四 种类型: 0型文法:对任一产生式α→β,都有α∈(VN∪VT) +,β∈(V ∪V )* N T 1型文法:对任一产生式α→β,都有|β|≥|α|, 仅仅 S→ε除外 2型文法:对任一产生式α→β,都有α∈VN,β∈ (VN∪VT)* 3型文法:任一产生式α→β的形式都为A→aB或 A→a(右线性)A→Ba或A→a(左线性),其中A∈VN, B∈VN,a∈VT王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识(续)数据类型是一组数据对象及创建和操纵它们的 操作集合所组成的类。数据是程序操作的对象,具有名称、类型、存储类、 作用域和生存期等属性
,使用时要为它分配内存空 间。 数据名称是用户指定的标识符:类型说明数据占用 内存的大小和存放形式,存储类说明数据在内存中 的位置和生存期;作用域说明数据可以使用的范围; 生存期说明数据占用内存的时间。王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识(续)分类按数据的作用域大小,可分为全局量和局部量 按生存期可分为自动生存期、静态生存期和动态生成期 按程序运行时数据的值是否能改变可分为常量和变量 数据按其构造方式又可分为基本类型和派生类型
数据按类型可分为4种:Void、标量(Scalar)、函数 和聚合(Aggregate)标量又可分为算术、枚举和指针 聚合类型可分为数组、结构体和共用体
王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识相关试题下图为一确定有限自动机的状态转换图,与该自动机等价的正 规表达式是__(12)__,图中的__(13)__是可以合并的状 态。C, B (12)A.(a|b)*bb(a*b*)* B.(a|b)*bba*|b* C.(a*b*)bb(a|b)* D.(a*|b*)*bb(a*|b*) (13)A.0和1 B.2和3 C.1和2 D.0和3
王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识相关试题(续)简化该有限自动机DFA,为以下划分: ({0},{1},{2,3})
王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识相关试题(续)编译的优化工作对于下面程序段构造的控制流程图有__(15)__ 个基本块。DA:=0 j:=100 i:=1 loop1: B:=j+1 C:=B+I A:=A+C if i=100 goto loop2 i:=i+1 Goto loop1 loop2: write A halt (15)A.1 B.2 C.3 D. 4王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识相关试题(续)基本块划分选择语句入口程序的第一个语句 能由条件转移语句或无条件转移语句转移到的语句 紧跟在条件转移语句后边的语句
构造所属的基本块入口到另一个入口之间 入口到一个转移语句之间 入口到停转移halt之间
检查无法到达的语句未纳入基本块中的语句,是不会被执行到的语句王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识相关试题(续)A:=0 入口 j:=100 i:=1 loop1: B:=j+1 入口 C:=B+I A:=A+C if i=100 goto loop2 i:=i+1 入口 Goto loop1 loop2: write A 入口 halt王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识相关试题(续)
答案:D S -> xSx -> x(xSx)x -> x2Sx2 ……
王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识相关试题(续)已知文法G[S]:S→A0|Bl,A→S1|1, B→S0|0;该文法属于乔姆斯基定义的 __(12)__文法,它不能产生串__(13)__。 D, A (12) A. 0型 B. 1型 C. 2型 D. 3型 (13) A. 0011 B. 1010 C.
1001 D. 0101
王宇 东北大学网络中心 wangy@
软件工程师培训
2011年3月7日
程序语言基础知识相关试题(续)
王宇 东北大学网络中心 wangy@
正在阅读:
软件设计师培训0305-11
华为展示和设计说明06-09
南京市江宁区人民政府关于公布征地拆迁补偿安置标准通知 江宁政05-30
初一英语集体备课材料03-08
支护器材管理条例09-23
2013年电大合同法考核册05-26
大学物理第五版马文蔚课后答案(上)05-03
在学科教学中如何渗透法制教育102-28
学校新冠肺炎疫情应急预案02-06
自考英语本科英语听力大纲07-20
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 设计师
- 培训
- 软件
- 初中英语被动语态(精讲+精练)
- 基于RFID的集装箱管理系统
- 2013-2018年抗心绞痛药市场竞争格局与投资战略研究预测报告
- 浙江2011年1月高等教育影视美学自考试题
- 让稀土造福人类——记北京大学稀土材料化学与应用国家重点实验室
- 2009年上半年《公共基础》
- 113道经典C语言程序设计题
- 人教统编版(部编版)八年级下册道法第二单元第四课《公民义务》同步试卷(第2课时 依法履行义务)C卷
- 南京市 2007年初中毕业生学业考试历史试卷附答案
- 创新大学英语预备级Unit 2教案
- 2013医科类西医专业课试题卷
- 大型钢结构厂房施工监理控制要点
- 林德电动叉车培训资料
- MDmax柜、BLOKSET柜、GCS柜、MNS柜特点比较
- 实验三 双闭环三相异步电动机串级调速系统 实验
- 高洁净度轴承钢开发与试制
- 毕业设计(论文)过程管理手册正文
- 人造革合成革真皮革
- 人文地理学课后答案【全】
- 无人区心电轴对宽QRS波群心动过速的分析