计算机专业导论-周总结5-程序语言与数据

计算机专业导论-周总结5-程序语言与数据

程序设计语⾔ #

是⼀组⽤来定义计算机程序的语法规则  

三要素 #

  • 语法 指单词符号的形成规则
  • 语义 指⼀条合法语句的含义
  • 语⽤ 是程序与使⽤者的关系

程序设计语⾔的分类及编程模式 #

机器语⾔ #

⽤⼆进制代码表示的计算机能直接识别和执⾏的机器指令的集合

汇编语⾔ #

汇编语言(assembly language)是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令。

⾼级语⾔ #

高级语言(High-level programming language)相对于机器语言(machine language)是一种指令集的体系。在这种语言下,其语法和结构更类似汉字或者普通英文,且由于远离对硬件的直接操作,使得一般人更容易学习。高级语言通常按其基本类型、代系、实现方式、应用范围等分类。

编程模式 #

过程式编程模式 模块化,结构化

⾯向对象编程模式

  • 数据抽象+对象类+类继承
  • 三⼤特征:封装,继承,多态

函数式编程模式 程序被看做⼀个函数

说明式编程模式 在逻辑推理的基础上 发展⽽来

⾼级编程语⾔简介 #

PASCAL语⾔ #

功能更强,简单易⽤ 作为⼀种教学语⾔,在⾼校计算 机教学中曾经占主导

C语⾔ #

⼴泛使⽤的⾼级语⾔,适合作为 系统描述语⾔ 简洁 丰富 可移植性强

C++语⾔ #

应⽤较⼴的⾯向对象程序设计语 ⾔
相⽐c⽀持⾯向对象抽象,⽀持⾯向对象设计和编程,增加了安全性,引⼊了引⽤概念

Java语⾔ #

特点

  • 简单性
  • ⾯向对象
  • 分布性
  • 可移植性
  • 安全性
  • 全局变量
  • 与c、c++相⽐:不⽤goto,不⽤指针

Ada语⾔ #

⼀种表现能⼒很强的通⽤程序设 计语⾔,是美国国防部指定的唯⼀⼀种⽤于开发军⽤系统的语⾔
我国军⽅也将Ada语⾔作为军内开发标准

Logo语⾔ #

绘图是logo语⾔中最主要的功能

脚本语⾔ #

称为扩建的语⾔或动态语⾔

并⾏程序设计 #

并⾏程序设计语⾔ #

显式并⾏语⾔是具有并⾏编译功能的串⾏语⾔

并⾏程序设计语⾔的编译过程 #

  1. 词法语法分析
  2. 程序优化
  3. 并⾏代码⽣成
    • 超标量处理机
    • 多处理机
    • 多计算机

OpenMP #

OpenMP是由OpenMP Architecture Review Board牵头提出的,并已被广泛接受,用于共享内存并行系统的多处理器程序设计的一套指导性编译处理方案(Compiler Directive)。

OpenMP支持的编程语言包括C、C++和Fortran;而支持OpenMp的编译器包括Sun Compiler,GNU Compiler和Intel Compiler等。

OpenMp提供了对并行算法的高层的抽象描述,程序员通过在源代码中加入专用的pragma来指明自己的意图,由此编译器可以自动将程序进行并行化,并在必要之处加入同步互斥以及通信。当选择忽略这些pragma,或者编译器不支持OpenMp时,程序又可退化为通常的程序(一般为串行),代码仍然可以正常运作,只是不能利用多线程来加速程序执行。

计算机中的数据 #

数据结构 #

数据结构的定义:数据元素依据某种逻辑联系组织起来

分类

  • 逻辑上的数据结构:反映数据元素之间的逻辑关系
  • 物理上的数据结构:反映数据元素在计算机内部存储⽅式

算法 #

算法的定义 #

指由基本的运算及规定的运算序所构成的完整的阶梯步骤

算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。
如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。

特性:
输⼊ 输出 有穷性 确定性 可⾏性
算法实例:

  • 输⼊
  • 查找最⼩值
  • 输出

算法优化

  • 细化 为了使算法能在所有程序中应⽤还需要进⼀步的细化
  • 泛化

数据中⼼ #

数据中心

数据中⼼的定义 是⼀个物理空间内实现数据集中

处理,存储,传输,交换,管理 的⼀整套复杂的设施。
⼀个数据中⼼的主要⽬的是运⾏ 应⽤系统来处理组织的数据。

数据中⼼的组成 #

  1. 核⼼计算机机房

    • 服务器机房
    • ⽹络机房
    • 存储机房
  2. 其他⽀持空间

    • 进线间
    • 内部电信区
    • ⾏政管理区
    • 辅助区
    • ⽀持区

新⼀代数据中⼼ #

传统数据中⼼的困惑

  • 数据量急剧膨胀
  • 能耗压⼒
  • 管理压⼒
  • ⾼可⽤性压⼒
  • 合规压⼒
  • 业务连续性压⼒

新⼀代数据中⼼简介

  • 绿⾊环保
  • 虚拟化和云计算
  • 整合

在今后的发展中,数据中心也将会成为企业竞争的资产,商业模式也会因此发生改变。随着数据中心应用的广泛化,人工智能、网络安全等也相继出现,更多的用户都被带到了网络和手机的应用中。

随着计算机和数据量的增多,人们也可以通过不断学习积累提升自身的能力,是迈向信息化时代的重要标志。

数据库 #

数据库的定义及特点 #

数据库是⼀个组织内被应⽤程序使⽤的逻辑相⼀致的相关数据的集合

特点:

  • 数据结构化 数据共享性⾼
  • 冗余度低,易扩充
  • 数据独⽴性⾼
  • 数据由数据库管理系统统⼀管理控制

关系的操作及结构化查询语言SQL #

  • 插⼊-插⼊是⼀元操作,它应⽤于⼀个关系
  • 删除-删除是⼀元操作,根据要求删除表中相应的元组
  • 更新-更新是⼀元操作,应⽤于⼀个关系,更新元组中的部分属性值
  • 选择-选择是⼀元操作,新关系中元组是原关系元组的⼦集

主流数据库 #

  • Oracle数据库-关系数据库管理系统
  • Microsoft SQL server数据库-多关系数据管理系统
  • MySQL数据库-开放源代码的⼩型关联式数据库管理系统
  • Sybase数据库
  • DB2数据库

Reference #

  1. 科学百科信息科学分类
  2. 数据中心-百度百科
  3. 编程语言-百度百科
  4. Computer science-wiki