第六周课后总结(四五)
程序设计语言
程序设计语言简介
程序设计语言是一组用来定义计算机程序的语法规则
程序设计语言三要素:语法语义语用
语法表示程序的结构或形式,亦即表示构成语言的各个记号之间的组合规律,但不涉及这些记号的特定含义,也不涉及使用者。
语义表示程序的含义,亦即表示按照各种方法所表示的各个记号的特定含义,但不涉及使用者。
语用涉及语言使用者各方面的内容
分类及编程模式
程序设计语言可分为
机器语言(计算机唯一能识别的语言)
汇编语言(占用内存少,运行速度快,但使用繁琐)
高级语言:因为此种语言有实际意义,也是我们编程时所用语言,其处理过程也较为复杂:
源程序经过预处理-----通过编译及汇编程序------与机器代码装配并连接一个编译程序----成为绝对代码
其中编译程序也分为几个阶段:词法分析–语法分析–语义分析–生成中间代码–代码优化–生成目标代码
编程模式:对于我们大学生而言,初步接触编程即为过程式编程模式,这与我们平时思考实际问题过程接近,易于理解和掌握,大一时,我们编写简单的c程序来解决简单的问题。而后深入时,即大二的JAVA面向对象编程实验,面向对象的编程模式是软件系统设计与实现的新方法,通过描述问题的结构,而不是直接解决问题来处理实际生活的复杂问题。其中涉及的专业名词:封装,继承和多态需要我们深入理解,在编程时合理运用,对于具体编程操作,此处不再赘述。
高级编程语言介绍
从开始的Basic语言到如今百花齐放的各种高效语言c c++ java python,因为目前所学和未来期望方向即为Java,所以在这里详细介绍:Java特点
简单:语法简单,垃圾可自动回收
面向对象:实现数据封装和信息隐藏,并有继承,多态等机制实现对象处理
分布与可移植:数据可存放在不同主机上,程序也可在不同计算机上通过合适接口移植运行
安全:Java删除了指针等语法,避免非法操作内存,且运行前需经过多步检测。
Java与c的比较:
相同点:变量声明,参数传递,一般语句等都较为相似,所以熟悉其中一种语言的程序员对应另一种也会较快掌握。
不同点:全局变量在Java中有所封装,避免在某些情况产生系统崩溃问题。
指针的禁止使用避免对内存的非法操作
由于java所实现解决问题的过程较为复杂,且结构庞大,完成一个解决实际问题或开发的程序实属不易,需要我们在日后多多理解学习!
并行程序设计
为了提高计算机的运行速度和系统的处理能力,在总体设计和逻辑设计中广泛采用并行操作技术,使各部件并行工作。要求操作系统具有并发性及资源共享,于是采用了并行程序设计,它是能够同时执行2个以上运算或逻辑操作的程序设计技术。采用了并行程序设计技术后,可使分时和多道程序更全面地利用计算机资源,使系统效率提高,开销减小 (所占内存小,花费的处理时间短)
其编译过程如下:源程序-----语法分析------程序优化------并行代码生成------超标量处理机//多处理机//多计算机
计算机中的数据
数据
数据是指对客观事件进行记录并可以鉴别的符号,是对客观事物的性质、状态以及相互关系等进行记载的物理符号或这些物理符号的组合。它是可识别的、抽象的符号。诸如数字,文本,音频,图形,视频等。
数据和信息是不可分离的,信息依赖数据来表达,数据则生动具体表达出信息。数据是符号,是物理性的,信息是对数据进行加工处理之后所得到的并对决策产生影响的数据,是逻辑性和观念性的;数据是信息的表现形式,信息是数据有意义的表示。数据是信息的表达、载体,信息是数据的内涵,是形与质的关系。数据本身没有意义,数据只有对实体行为产生影响时才成为信息。
计算机的常用编码方式里,ASCLL码是编程人员必然知道的,因为里面的各种符合与对应的数字在程序语句里时常会用到,最常用的即为二十六个英文字母。另外还有一种音频编码:通过采样,量化,编码将连续变化的模拟信号转为数字编码
数据结构
作为计算机考研的专业课考试,这门科目的重要性不言而喻,我们在通过计算机处理问题时,往往要建立某种模型或者特殊构造方法来处理数据或是其他,而数据结构即为解决问题的一种重要手段,常见经典的结构即,集合,树,图,表等,一对一,多对多,一对多等结构,其中图的结构最为复杂,由于是多对多的关系,非常接近日常生活问题,诸如交通道路设计。
算法
算法具有如下特性:输入输出,有穷性,确定性,可行性
另外,同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程序的效率。算法分析的目的在于选择合适算法和改进算法。一个算法的评价主要从时间复杂度和空间复杂度来考虑。
算法的时间复杂度是指执行算法所需要的计算工作量。一般来说,计算机算法是问题规模n 的函数f(n)
空间复杂度是指算法需要消耗的内存空间。其计算和表示方法与时间复杂度类似,一般都用复杂度的渐近性来表示。同时间复杂度相比,空间复杂度的分析要简单得多。
算法的正确性是评价一个算法优劣的最重要的标准。
算法的可读性是指一个算法可供人们阅读的容易程度
健壮性是指一个算法对不合理数据输入的反应能力和处理能力,也称为容错性。
数据库
数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。
数据库系统的逻辑结构可以分为用户级、概念级和物理级三个层次,反映观察数据库的三种角度。三个层次分别由用户、数据库管理员和系统程序员使用。每个层次的数据库都有自身对数据进行逻辑描述的模式,另称为外模式、概念模式和内模式。模式之间通过映射关系进行联系和转换。在数据库的三级模式结构中,数据库模式即全局逻辑结构是数据库的中心与关键,它独立于数据库的其他层次。
数据库也有多种模型:层次,网状,关系,其描述了不同数据间的联系,切实用于实际问题。
再者即为编程常用标准化语言SQL语句,在大二的java实验里所用到,用来作为数据存放和管理,其中包含插入删除,更新,选择等语句进行数据操作,与之相连的MYSQL数据库,具有体积小,速度快,成本低等特点,应用于facebook等网站。
数据中心
数据中心是全球协作的特定设备网络,用来在因特网络基础设施上传递、加速、展示、计算、存储数据信息。
新一代数据中心在传统数据中心面临诸多压力的情况(数据量膨胀,能耗,管理,高可用性压力等)应运而生,其有诸多优势:绿色环保,虚拟化和云计算,整合,模块化,灵活性等,其中的云计算已广泛应用于各个软件,淘宝即是日常生活的一个典型运用,其发展趋势必然会朝着更加智能自动的方向所前进,希望日后的我们通过不断学习能为此有所贡献!
image.baidu.com/search/index?tn=baiduimage&ct=201326592&lm=-1&cl=2&nc=1&ie=utf-8&word=%E6%95%B0%E6%8D%AE%E4%B8%AD%E5%BF%83