12.12计算机导论课后总结
第四章 程序设计语言
4.1 程序设计语言简洁
程序设计语言是一组用来定义计算机程序的语法规则。它是一种被标准化的交流技巧,用来向计算机发出指令。
与人类的语言一样,程序设计语言也拥有三要素:语法、语义和语用。
语法:用字符组合成合法语句的规则集合,用于定义语言各种要素之间的形式关系,确定合法语句的结构描述,形成和产生一个合适的程序。
语义:一条合法语句的含义。
语用:涉及语言使用者各方面的内容,包括心理学、社会学发面的内容,比如语言的实用性、应用范围和对使用者的作用。
程序设计语言的基本成分如下:
1.数据成分:用于描述程序所涉及的数据。
2.运算成分:用以描述程序所包含的运算。
3.控制成分:用以描述程序所包含的控制。
4.传输成分:用以表达程序中数据的传输。
4.2 程序设计语言的分类及编程模式
4.2.1 分类
机器语言:是用二进制代码表示的计算机能直接识别和执行的机器指令的集合。
汇编语言:采用助记符来编写程序,是机器语言的符号化。
高级语言:是面向用户的语言,是一种与自然语言相近并为计算机所接受和执行的计算机语言。每一种高级程序设计语言都有自己规定的专用符号、标识符、语法规则和语句结构(书写格式)。
4.2.2 编程模式
计算机语言的发展是一个不断演化的过程,其根本的推动力就是更高的抽象机制要求,以及对程序设计思想的更好支持。
程序设计语言可以按照解决问题的模式的分类
模式 | 特点 |
---|---|
过程式编程模式 | 一般从上向下,步步求精,进行模块化和结构化编程。 |
面向对象编程模式 | 基于问题对象的自底向上方法设计程序结构,有抽象的类到实际的对象,具有三个重要的特征:封装、继承和多肽。 |
函数式编程模式 | 支持模块化编程并且允许程序员使用已经存在的函数开发新函数。 |
说明式编程模式 | 依据逻辑推理的原则相应查询,以推导为基础,可以根据一些已知的正确论断,运用逻辑推理的规则推导出新的断论。 |
4.3 高级编程语言介绍
编程语言 | 介绍 |
---|---|
BASIC语言 | 其意为“初学者通用符号指令代码”。由1964年美国达尔摩斯学院的基米尼和科茨设计并提出的,是一个中小型计算机语言,易学、易懂、易记、易用。 |
PASCAL语言 | 是一种结构程序设计语言,由瑞士苏黎世联邦工业大学的沃斯教授研制,于1971年正式发布。 |
C语言 | 由贝尔实验室为了实现UNIX系统的设计思想而发展起来的语言工具。兼顾了高级语言和汇编语言的特点,简介、丰富、可移植性强。 |
C++语言 | 于20世纪80年代由贝尔实验室设计并实现,既支持传统的过程式程度设计,又支持面向对象的程序设计。 |
Java语言 | 由SUN公司开发,其特点为:简单性、面向对象、分布性、可移植性、安全性、鲁棒性。 |
Ada语言 | 是一种表现力很强的通用程序设计语言,是美国国防部指定的唯一的一种可用于军用系统开发的语言。稳定性、可维护性、程序设计和人的行为接近,程序高效 |
Logo语言 | 于1966年由西摩尔·派普特等设计,设计初衷是为了向儿童教授计算机编程技能,绘图是Logo语言最主要的功能,能通过简单的编程创作出丰富多彩的视觉效果或图案。 |
脚本语言 | 又称为扩建的语言或动态语言,为缩短传统的编写——编译——链接——运行过程而创建的计算机程序设计语言。 |
4.4 并行程序设计
并行工作模式是指将多项工作同时进行以节省时间。
并行程序语言是一种用于并行程序设计的语言。并行程序设计语言可分为显式并行语言和具有并行编译功能的串行语言。
上图为其编译过程
OpenMP
是一个编译器指令和库函数的集合,主要用于共享式存储计算机上的并行程序设计。
第五章 计算机中的数据
5.1 数据
定义:用文字、数字、图形、图像、声音等方式对人、事件、事物等进行的描述。是所有能输入计算机并能被计算机程序处理的符号的总称。
数据与信息的区别:数据是提供计算机处理的,信息是供用户使用的。
常见的编码方式有:ASCII,扩展ASCII,Unicode,UTF-8,GB-2312,音频编码、图像编码等。
5.2 数据结构
数据结构有逻辑上的数据结构和物理上的数据结构之分。逻辑上的数据结构反应了数据元素之间的逻辑关系,而物理上的数据结构则反映了数据元素在计算机内部的存储方式。
逻辑结构:
1.集合
2.线性结构
3.树形结构
4.图状结构
物理结构:
1.顺序结构
2.链式结构
3.索引结构
常见数据结构:
1.线性表:顺序存储、连式存储
2.栈
3.队列
4.树
5.图
5.3算法
定义:由基本的运算及规定的运算顺序所构成的完整的解题步骤。
特性:
1.输入
2.输出
3.有穷性
4.确定性
5.可行性
算法并非只是针对一个实际问题的解题步骤,而是对一系列具有相似问题的系统性的解决步骤。算法必须具有通用性和确定性。
5.4 数据库
数据库是一个组织内被应用程序使用的逻辑相一致的相关数据的集合。
特点:
1.数据结构化
2.数据共享性高,冗余度低,易扩充
3.数据独立性高
4.数据由数据库管理系统统一管理和控制(数据的安全性保护,数据的完整性检查,数据的并发控制,数据库恢复)
数据库的体系结构:
1.三级模式:
概念模式也称为模式或者逻辑模式,是对数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
外模式也称用户模式,它是对数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示,通常是概念模式的子集。
内模式也称存储模式,一个数据库只有一个内模式。它是对数据物理结构和存储方式的描述,是数据在数据库内部的表达方式。
2.二级映射
外模式/概念模式映射
概念模式/内模式映射
数据库模型
1.层次模型
2.网状模型
3.关系模型
**数据库管理系统(DBMS)**是定义、创建、维护数据库的一种工具。DBMS也允许用户来控制数据库中数据的存取。数据库管理系统由硬件、软件、数据、用户和规程这五部分构成。
常见数据库:Oracle数据库,Microsoft SQL Server数据库,MySQL数据库,Sybase数据库,DB2数据库
5.5 数据中心
数据中心是在一个物理空间内实现数据集中处理、存储、传输、交换、管理的一整套复杂的设施。
数据中心从功能上可以分为核心计算机机房和其他支持空间。
计算机机房是指电子信息处理、存储、交换,以及传输设备的安装、运行和维护的建筑空间,包括服务器机房、网络机房、存储机房等功能区域。
支持空间是计算机机房外部专用于支持数据中心运行的设施和工作空间,包括进线间、内部电信间、行政管理区、辅助区和支持区。
传统数据中心的困惑
1.数据量急速膨胀
2.能耗压力
3.管理压力
4.高可用性压力
5.合规压力
6.业务连续性压力
新一代数据中心简介
1.绿色环保
2.虚拟化和云计算
3.整合
4.模块化
5.灵活性
第七章 计算机应用的主要发展方向
7.1 高性能化
定义:研究如何将一个只有借助于非常巨大的计算能力才能解决的问题分成若干小的部分,分配给多个计算机进行处理,并把这些计算结果综合起来得到最终的结果。
应用:计算密集型应用,数据密集型应用,通信密集型应用。
发展展望:
1.多核异构是大势所趋,且编程模式是关键
2.降低高性能计算系统功耗,追求绿色计算
3.个人高性能计算机的发展
4.集群系统的应用面扩大,形成产业规模市场
5.网络不仅影响各种应用,也对计算技术产生巨大影响
未来高性能计算机:量子计算机、光子计算机、DNA计算机、纳米计算机
7.2 网络化
定义:指利用通信技术和计算机技术,把分布在不同地点的计算机及各类电子终端设备互联起来,按照一定的网络协议相互通信,以达到所有用户都可以共享软件、硬件和数据资源的目的。
现状:
1.电子不停车收费系统
2.电子银行
3.证券及期货交易
4.校园网
5…远程教育
泛在网络:
将是由智能网络、最先进的计算技术以及其他领先的数字技术基础设施武装成的技术社会形态。
5A化通信:任何时间、任何地点、任何服务、任何网络以及任何对象
5C的特点:融合、内容、计算、通信和连接
泛在网与传感网、物联网的联系:泛在网络在兼顾物与物相连的基础上,涵盖了物与人、人与人的通信,是全方位沟通物理世界与信息世界的桥梁。
网络架构:
1.泛在网的感知延伸层通过传感器、二维条码、RFID识别器等信息采集终端实现对物理世界各类目标的信息的获取,并通过各类技术对感知信息进行必要操作,从而为网络层提供物理世界的感知信息。
2.泛在网的网络层包括接入网子层和核心网子层。
3.泛在网的应用层主要实现信息的处理、协同、共享和决策,包括应用支撑子层和应用服务子层。
关键技术:
1.上下文感知计算
2.自然人机交互
7.3 智能化
定义:要求计算机具有自己的智能,并非只局限于原先的计算能力以及一些简单的娱乐功能。
发展展望:
1.智能地球的构想(更透彻的感知,更全面的互联互通,更深入的智能化)
2.智慧的电力
3.智慧的医疗
4.智慧的城市
5.智慧的交通
6.智慧的银行(优化且高效,创新,深入了解客户,更好的风险管理,互联,整合)
参考文献:
《计算机导论》