计算机基础 - 理论必考知识点汇编(2010年12月修订版) 下载本文

3) 系统软件和应用软件的关系:应用软件以系统软件为基础(如:Powerpoint以windows为

基础;Powerpoint调用windows的功能)

2. 按软件权益如何处置分为:商品软件、共享软件、自由软件

1) 软件许可证(License):允许用户购买一份软件而同时安装在约定的若干台计算机上使用 2) 自由软件

A. 代表:TCP/IP、Linux

B. 允许用户随便拷贝、修改其源代码和销售

(六) 软件发展的历史:

1. 第一阶段:个体工作方式 2. 第二阶段:合作方式

1) 标志:软件危机

2) 软件危机产生原因:软件复杂程度提高、研制周期变长、正确性难以保证、可靠性问题

突出(并非硬件软件不协调发展)

3. 第三阶段:软件工程(用工程化的方法组织软件的开发)

三、操作系统

(一) 地位:计算机运行配置必不可少的底层系统软件 (二) 作用:

1. 管理分配系统中的各种软硬件资源 2. 为用户提供友善的人机界面

1) 命令行界面

2) 图形用户界面:采用图标(icon)来形

象地表示系统中的文件、程序和设备等对象

3. 为应用程序的开发和运行提供一个高效率

的平台(开发和运行应用程序与运行的操作系统密切相关)

1) 裸机:只有硬件、没有软件的计算机。

2) 虚计算机:操作系统屏蔽了大部分物理设备技术细节

(三) OS启动

1. 加载过程:加电自检程序、自举装入程序、引导程序、操作系统

2. 特别注意:安装了操作系统的计算机,操作系统总是驻留在硬盘存储器上(不是内存) (四) 五大模块

1. 处理器管理

1) 主要目的:提高CPU使用效率

2) 多任务处理:操作系统支持同时运行若干个程序(至少一个CPU)

A. 前台任务:活动窗口(能接受用户输入的窗口有且一个)所对应的任务 B. 后台任务:除前台任务外,所有其它任务均为后台任务 C. 使用“windows任务管理器”可以了解每个任务的运行情况 3) Windows采用“并发多任务”技术

A. 定义:前、后台任务都能分配到CPU的使用权,可以同时运行 B. 程序调度算法策略:时间片轮转

C. 要求:必须配有至少1个单核的CPU

D. 在单CPU环境下,多个程序在计算机中同时运行时,意味着它们宏观上同时运行,

微观上由CPU轮流执行 E. 任务数越多,CPU响应越慢

2. 存储管理

1) 功能:对内存空间的分配、回收、共享、保护和扩充等 2) 虚拟存储器

A. Windows中,虚拟存储器由计算机中的物理内存和硬盘上的虚拟内存联合组成 B. 虚拟存储器大小受到外存空间及CPU地址表示范围的限制 C. 在Windows中,用户可设置硬盘逻辑盘上虚拟内存及其容量 D. 页面文件

a) Windows XP中:Pagefile.sys,位于系统盘根目录下

17

b) 调度算法: “最近最少使用”(LRU)

3) “剪贴板”

A. 定义:在内存中开辟的一块临时存储区 B. 作用:传递信息 C. 优点:信息可以被多次使用

3. 文件管理

1) 文件

A. 文件名的一般形式为: 文件标识符 . 扩展(后缀)名

a) 文件名字使用西文(或中文)字符组成,不能使用某些特殊字符(如 ? *

\ / < > : ‖ | 等)

b) Windows中允许使用长文件名,文件名最长255个字符 c) 英文字母的大、小写只在形式上加以区分,实际上不予区别 B. 属性:系统文件(与操作系统有关)、隐藏文件、存档文件、只读文件(Windows

允许一个文件兼有多种属性)

2) 文件夹

A. 属性:存档、只读、隐藏??

B. 根文件夹(根目录)和子文件夹,既可以存放文件,也可以存放文件夹 C. 不同文件夹中的文件允许同名 3) 文件管理

A. Windows中,利用“资源管理器”管理文件、文件夹 B. 正在打开、运行的应用程序无法删除

C. Windows中,物理硬盘能建立多个根目录,不同的根目录对应的是不同的逻辑分区

(根目录不可以删除) D. “回收站”的内容占用硬盘空间;软盘和优盘上被删除的文件或文件夹不可以用“回

收站”将其恢复

4. 设备管理

1) 操作系统中的“设备管理”程序负责对系统中的各种输入输出设备进行统一管理,处理

用户(或应用程序)的输入/输出 2) 设备驱动程序:

A. 作用:将具体物理设备的性质和硬件操作的细节予以屏蔽(简便易用) B. 打印机驱动程序一般由操作系统自带,或由打印机厂商提供 C. 使用优盘一般不需专门安装相应的驱动程序

5. 作业管理 (五) 常用操作系统

1. Windows操作系统

1) 特点:

A. 单用户、多任务处理

B. 图形用户界面GUI:采用图标来形象地表示系统中的文件、程序和设备等对象 C. 即插即用:只有硬件可以即插即用、不必关掉主机电源即可插入、增加新硬件一般

不必安装驱动程序 D. 支持多种通信协议

E. 支持的内存容量大(如Windows XP可超过1GB) F. 有多个版本

2) Windows2000系列Server以上版本,适用于各种不同规模、不同用途的服务器(不是每

个版本都可作为Server OS)

2. UNIX操作系统

1) 美国Bell实验室开发的一种通用多用户交互式分时操作系统。 2) 可移植性好——UNIX系统90%以上的代码是用C语言编写的 3) 服务器专用操作系统,也可以用于PC机 3. Linux操作系统

1) 奠基人:芬兰赫尔辛基大学计算机系学生Linus Torvalds 2) 优势:在网络服务器方面(服务器专用操作系统) 3) Linux系统是一种“自由软件”,其源代码向世人公开

四、程序设计语言

18

(一) 分类: 形式 硬件识别 是否可直接执行 占用内存 执行速度 可阅读性 可维护性 可移植性 面向 使用率 语言定位 机器语言 二进制代码 可识别(唯一) 可 少 快 难 难 难 机器 极少 低级 汇编语言 助记符、地址符 (与机器语言一一对应) 不可识别 不可 (需汇编、连接) 少 快 中 中 中 机器 很少 低级 高级语言 接近自然语言 (与机器无关) 不可识别 不可 (需编译/解释、连接) 较大 相对慢 易 易 易 问题/对象 常用 高级 (二) 基本成分: 1. 数据成分:

1) 定义:用以描述程序所处理的数据对象 2) 例如:对数据类型和数据结构进行说明

A. 数据类型:说明数据的性质和需占用多少存储单元 B. 据的名称用标识符来命

C. 数组:一组相同类型数据元素的有序集合

D. 指针:数据对象的地址,指针变量是存放某个数据对象地址的变量 E. 用户定义类型:用户可以定义新的数据类型

2. 运算成分:

1) 定义:用以描述程序所包含的运算 2) 例如:算术表达式和逻辑表达式等。 3. 控制成分:

1) 定义:用以表达程序中的控制构造(复杂的可计算问题的程序也适用) 2) 例如:顺序、选择、重复(注意:三者不可相互替代)

A. 顺序结构

B. 条件选择结构:if (p) A else B C. 重复结构:

a) while (P) A:当条件P值为真时,就重复执行操作A;直到P值为假时,结束重

复操作

b) for(P1;P2;P3) A; 4. 传输成分:

1) 定义:用以表达程序中的数据的传输 2) 例如:I/O语句“printf(―hello!‖);”

(三) 程序设计语言处理系统

1. 翻译程序:

1) 定义:把一种语言的程序翻译成等价的另一种语言的程序 2) (翻译前)被翻译的语言和程序叫做源语言和源程序 3) (翻译后)生成的语言和程序叫做目标语言和目标程序 4) 按照不同的翻译处理方法,翻译程序有三类:

A. 汇编程序:从汇编语言到机器语言的翻译程序 B. 解释程序:

a) 定义:按源程序中语句的执行顺序,逐条翻译并立即执行相应功能的处理程序 b) “口译”:逐句扫描、逐句分析、逐句翻译,边解释边执行

c) 特点:灵活,便于查找错误,占用内存少,但效率低,速度慢不常用。 C. 编译程序:

a) 定义:从高级语言到机器语言或汇编语言的翻译程序 b) “笔译”:将高级语言编写的源程序整个地翻译成机器语言表示的目标程序,....

全部译完再执行

19

c) 特点:占用内存多,但效率高,速度快,常用。

(四) 常用程序设计语言

1. FORTRAN语言:用于大型科学和工程数值计算、面向过程 2. BASIC:面向过程 3. VB语言:面向对象

4. Java语言:适用于网络分布环境(在Internet上已推出了用Java语言编写的很多应用程序)、

面向对象

5. C语言:适用于编写操作系统和编译程序软件、与运行支撑环境分离,可移植性好、面向过

6. C++语言:C++语言是对C语言的扩充、面向对象,主流语言之一 7. PASCAL语言:在Algol基础上发展起来、面向过程 8. MATLAB(矩阵实验室)语言:数值计算语言

五、算法和数据结构

(一) 程序=数据结构+算法 (瑞士 计算机科学家 尼·沃思)

1. 软件的主体是程序,程序的核心是算法,数据结构能使算法有效的实现

2. 算法和数据结构之间关系密切,算法建立在数据结构基础上,数据结构不同时,对应问题的

求解算法也有差异

(二) 算法:

1. 定义:解决问题的方法与步骤

2. 地位:计算机科学就是研究算法的学问(尼·沃思) 3. 性质:

1) 确定性:算法的每一个运算必须有确切的定义,即每一个运算应该执行何种操作必须是

清楚明确的,无二义性 2) 有穷性(可终结性):有限步运算后终止

3) 能行性:算法中有待实现的运算都是可执行的,即在计算机的能力范围之内,且在有限

的时间内能够完成

4) 输入:具有0个或多个输入 5) 输出:至少1个输出 4. 描述工具:

1) 文字说明、流程图、伪代码(介于自然语言和程序设计语言之间的文字和符号表达工具)、

程序设计语、决策表…… 2) 根据需要选择使用 5. 算法与程序的区别:

1) 程序是算法的具体实现

2) 程序可以无穷,算法必须有穷

3) 程序中的语句必须是机器可执行的,算法中的操作则不此限 4) 算法与程序是相应的,但不一一对应 6. 算法分析

1) 时间代价:

A. 定义:依据算法编制为程序后在计算机中运行时所耗费的时间,记为T(n) B. 若T(n)= 2n3+3n2+2n+1 ,则T(n)≈O(n3) C. 排序(按数量级递增):常数阶O(1)、对数阶O(log2n)、线性阶O(n)、线性对数阶

O(nlog2n)、平方阶O(n2)、立方阶(n3)?K次方阶O(nK)、指数阶O(2?)等 D. 若程序需反复运行多次,则应重点考虑时间代价,选用快速的算法 2) 空间代价:和求解问题的规模关系密切 7. 算法设计:

1) 一般采用由粗到细、由抽象到具体的逐步求解的方法

2) 对于同一个问题可采用不同的算法去解决,但不同的算法具有不同的效率

(三) 数据结构

1. 内容:

1) 数据的逻辑结构:用于抽象地反映数据元素之间的约束关系而不考虑其在计算机中的存

储方式

2) 数据的物理存储结构:数据的逻辑结构在计算机存储器上的实现

20