计算机软件的基本组成
一, 计算机软件的分类
软件按其功能分类, 可分为系统软件和应用软件
图解
(1)系统软件
系统软件是一组保证计算机系统高效, 正确运行的基础软件, 软件通常作为系统资源提供给用户使用.
系统软件主要有操作系统(OS), 数据库管理系统(DBMS), 语言处理程序, 分布式软件系统, 网络软件系统, 标准库程序, 服务性程序等.
(2)应用软件
应用系统是指用户为解决某个应用领域中的各类问题而编制的程序, 如各种科学计算类程序, 工程设计类程序, 数据统计与处理程序等.
在本学科范畴内, 编写诸如操作系统, 编译程序等各种系统软件的人员称为系统程序员; 利用计算机及所支持的系统软件来编写解决具体应用问题的人员称为应用程序员.
二, 三个级别的语言
三种机器语言分别是:
- 机器语言
- 汇编语言
- 高级语言
图解
注: 编译器, 汇编器, 解释器, 可统称"翻译程序".
三种机器语言的特点
- 机器语言, 也称二进制代码语言, 需要编程人员记忆每条指令的二进制编码.机器语言是计算机唯一可以直接识别和执行的语言.
- 汇编语言, 汇编语言是用英文单词或其缩写代替二进制的指令代码, 更容易为人们记忆和理解. 使用汇编语言编写的程序, 必须经过一个称为汇编程序的系统软件翻译, 将其转换为机器语言的程序后, 才能在计算机的硬件系统上执行.
- 高级语言, 高级语言(如C, C++, Java等) 可以方便程序设计人员写出解决问题的处理方案和解题过程的程序.通常高级语言需要经过编译程序编译成汇编语言程序, 然后经过汇编操作得到机器语言程序, 或直接由高级语言程序翻译成机器语言程序.
三, 各种翻译程序的概念
因为计算机无法直接理解和执行高级语言程序, 所以需要将高级语言程序转换为机器语言程序, 通常把进行这种转换的系统软件称翻译程序.
翻译程序有以下三类:
1), 汇编程序(汇编器): 将汇编语言程序翻译成机器语言程序.
2), 解释程序(解释器): 将源程序中的语句按执行顺序逐条翻译成机器指令并立即执行.
3), 编译程序(编译器): 将高级语言程序翻译成汇编语言或机器语言程序.
四, 软件和硬件的逻辑功能等价性
硬件实现的往往是最基本的算术和逻辑运算功能, 而其他功能大多通过软件的扩充得以实现.
对某一功能来说, 其既可以由硬件实现, 又可以由软件实现, 从用户的角度来看, 它们在功能上是等价的.
这一等价性被称为软/硬件逻辑功能的等价性.
例如, 浮点数运算既可以用专门的浮点运算器硬件实现, 又可以通过一段子程序实现, 这两种方法在功能上完全等价, 不同的只是执行时间的长短而已, 显然硬件实现的性能要优于软件实现的性能.
软件和硬件逻辑功能的等价性是计算机系统设计的重要依据, 软件和硬件的功能分配及其界面的确定是计算机系统结构研究的重要内容. 当研制一台计算机时, 设计者必须明确分配每一级的任务, 确定哪些功能使用硬件实现, 哪些功能使用软件实现.
软件和硬件功能界面的划分是由设计目标, 性能价格比, 技术水平等综合因素决定的.
指令集体系结构(ISA)
软件和硬件之间的界面. 设计计算机系统的ISA, 就是要定义一台计算机可以支持哪些指令, 以及每条指令的作用是什么, 每条指令的用法是什么.
五, 总结
- Q1, 计算机软件的分类
- 系统软件
-
管理计算机的硬件资源, 向上层应用程序提供服务
-
- 应用软件
-
按应用场景需要编制唱的成的各种程序, 直接为用户提供服务.
-
- 系统软件
- Q2, 三个级别的语言
- 高级语言
- 汇编语言
- 机器语言
- Q3, 三个级别的语言之间的转换方式
- 编译程序(编译器) – 将高级语言一次全部翻译为汇编语言, 或者直接翻译为机器语言
- 汇编程序(汇编器) – 将汇编语言翻译成机器语言
- 解释语言(解释器) – 高级语言翻译为机器语言(翻译一句执行一句)
- Q4, 软件和硬件的看逻辑功能等价性
-
同一个功能, 既可以用硬件实现, 也可以用软件实现
-
- Q5, 指令集体系结构(ISA)
-
ISA定义一台计算机可以支持哪些指令, 以及每条指令的作用是什么, 每条指令的用法是什么.
-