网站大量收购独家精品文档,联系QQ:2885784924

计算机科学导论3到5章.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 程序就是能够实现特定功能的一组指令序列的集合。 计算机程序设计语言有:机器语言、汇编语言、高级语言。 低级语言的特点:都与特定的计算机硬件系统紧密相关。它们具有许多相同的特征。对程序员专业知识要求高,要求对计算机硬件的 结构和工作原理非常熟悉。每条指令的功能比较单一,程序员编写源程序时指令非常繁琐。由于直接针对特定硬件编程,所以最终的可执行代码非常精炼,并且执行效率高。 高级语言的常见类型:BASIC语言、FORTRAN语言、COBOL语言、PASCAL语言、C语言、C++语言以及一些其它的高级语言。 高级语言的优点是语句的功能强,程序员编写的源程序比较短,容易学习,使用方便,可移植性较好,便于推广和交流。其缺点是编译程序比汇编程序复杂,而且编译出来的目标程序往往效率不高,目标程序的长度比有经验的程序员所编写的同样功能的汇编语言程序要长一半以上,运行时间也要长一些。 高级语言的语法成分都是由基本符号组成的,基本符号可以分为单子符合多字符两种。单字符基本符号由单个字符组成,在高级语言中通常包括字母、数字、特殊字符这几种基本符号。 多字符是由两个或两个以上的字符组成。 基本元素由基本符号组成,可分为数、逻辑值、名字、标号和字符串等5大类。 基本的数据类型,通常包括整数类型、实数类型和字符类型等。 结构数据类型是在基本数据类型的基础上构造出来的数据类型,数组和结构体是大多数高级语言都支持的两种最基本的机结构数据类型。 高级语言的表达式由基本符号、基本元素和各种数据通过运算符连接而成,运算符大致包括(1)逻辑运算:与、或、非、异或等。(2)算术运算:加、减、乘、除、取模等。(3 )数据比较:大于、小于、等于、不等于等。(4)数据传送:输入、输出、赋值等。 通过各种运算符连接而得到的表达式有算术表达式、关系运算表达式、字符串表达式。 语句是构成高级语言源程序的基本单位,由基本元素、运算符、表达式等组成。 使用高级语言编写程序的一般过程可以归纳为(1)使用文本编辑工具,逐条编写源程序的语句。保存源程序的文件时,文件的后缀名与所使用的高级语言有关。(2)编译源程序文件,生成目标文件,文件后缀名通常为obj。(3)链接目标文件,生成可执行文件,文件后缀名通常为exe。(4)在计算机上运行可执行程序,并进行调试和维护。 高级语言的数据表示手段:常量、变量。 常见的数据类型包括原始类型(如整数、浮点数或字符)、数组、结构、代数数据类型、抽象数据类型、引用类型、类以及函数类型。 表达式是操作符、操作数和标点符号组成的序列,其目的是用来说明一个计算过程。 声明用于说明每个标识符预留存储空间。预留存储空间的声明称为定义。 类型检查是利用一组逻辑规则来推理一个程序在运行时刻的行为。 类型系统用于定义如何将程序语言中的数值和表达式归类为许多不同的类型、如何操作这些类型、这些类型如何互相作用。 类型系统提供的主要功能有:安全性、最佳化、可读性、抽象化。 解释程序在处理源程序时,执行方式类似于日常生活中的“同声翻译”。按照高级语言源程序的语句顺序,由相应语言的 解释器逐句解释成目标代码(机器语言),解释一句、执行一句,立即产生运行结果。 编译程序是把用高级语言程序编写的用户程序(源程序)作为一个整体来处理,首先将程序源代码“翻译”成目标代码(机器语言),编译后与系统提供的代码库链接,形成一个完整的、可执行的机器语言程序(目标程序代码)。 词法分析作为翻译过程的第一个阶段,其任务是从左到右逐个字符地对源程序进行扫描,读入源程序,对构成源程序的字符流进行进行扫描和分解。通过词法分析识别出每个单词。 语法分析是编译过程的第二个阶段,其任务是在词法分析的基础上将单词序列分解成各类语法短语。 编译过程中的语义处理能实现以下两个功能。(1)审查每个语法结构的静态语义,即验证语法结构法的程序是否真正有意义,有时把这个工作称为静态语义分析或静态审查。(2)如果静态语义正确,则语义处理要执行真正的翻译,要么生成程序的一种中间表示形式(中间代码),要么生成实际的目标代码。 中间代码试编译程序结构在逻辑上更为简单、明确。 常用的中间代码形式有妮波兰形式、三元式和四元式。 中间代码优化的任务是对中间代码进行转换或进行改造,目的是使生成的目标代码更为高效,即节省时间和空间。 目标代码生成的任务是把中间代码变换成特定机器上的绝对指令代码或可重定位的指令代码或汇编指令代码。 新的编译程序自动化方向包括并行编译技术、交叉编译技术、硬件描述语言及其编译技术等。 程序设计语言的设计是一门技术,需要相应的理论、技术、方法和工具来支持。程序设计语言的设计就是根据问题的需求,设

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档