1.1 计算机的发展历程
体系结构:
电子管计算机 -----> 晶体管计算机 -----> 集成电路计算机 -----> 超大规模集成电路计算机
摩尔定律:
每18个月,集成度将翻一番,速度将提高一倍,而其价格将降低一半。
1.2 计算机系统的基本组成
计算机系统由 硬件和 软件两部分组成。
硬件:
冯 · 洛依曼计算机基本思想:
·采用 “存储程序” 工作方式;
·计算机由 运算器、控制器、存储器、输入设备和 输出设备 5个基本部件组成;
· { 运算器:加减乘除4种 基本算术运算和 逻辑运算;
{ 控制器:控制指令的自动执行;
{ 存储器:存放数据和指令;(形式上两者没有区别,但是计算机能区分)
·计算机内部以 二进制形式表示指令和数据;每条指令由 操作码(指出操作类型)和 地址码(指出操作数地址)组成;由一串指令组成程序;
计算机硬件主要包括中央处理器、存储器、I/O控制器、外部设备和各类总线。
·中央处理器(CPU):{ 主要功能:指令的执行;
{ 部件 { 基本部件:数据通路(包括算术逻辑部件ALU(就是运算器)和通用寄存器)和控制器;
{ { 其他部件:总线接口等;
·存储器:分为 内存和 外存;
·外部设备、I/O控制器:{ 机械部分:外部设备本身;
{ 电子部分:设备控制器,控制外部设备的I/O控制器或I/O适配器;(如键盘接口、显卡、网卡等)
·总线:用于部件之间传输信息,比如CPU和主存、I/O模块就互连着。
软件:
·系统软件:操作系统(如Windows)、语言处理系统(如C语言编译器)、数据库管理系统(如Oracle)、各类实用程序(如磁盘碎片整理程序、备份程序);
·应用软件:就是我们所理解的office、游戏这一类的程序。
1.3 计算机系统的层次结构
硬件 软件
------------------------------------ | -------------------------------------
① ② ③ ④ ⑤ ⑥ ⑦ ⑧ ⑨
器 电 功 微 指 操 编 算 应
件 路 能 体 令 作 程 法 用
部 系 集 系 语 问
件 结 体 统 言 题
RTL 构 系
结
构
------------ | --------------------- | ---------------------- | ----
电子工程师 架构师 程序员 用户
⑤指令集体系结构ISA(软件可见部分):定义了一台计算机可以执行的所有指令的集合,是计算机硬件和软件之间的桥梁;
⑥微体系结构(软件不可感知部分):具体实现指令的组织,由逻辑电路实现。
⑦编程语言:{ 高级语言
{ 低级语言(机器级语言){ 机器语言:用二进制进行编码,每条机器指令都是0/1序列;
{ 汇编语言:用简短的英文符号和二进制代码建立对应关系。
⑦和⑧之间存在 语言处理系统:
·被翻译的语言和程序分别被称为 源语言和 源程序;
·翻译生成的语言和程序分别被称为 目标语言和 目标程序;
·汇编程序:也称汇编器,用来将汇编语言源程序翻译成机器语言目标程序;
·解释程序:也称解释器,用来将源程序种的语句按其原来执行顺序逐条翻译成机器指令并立即执行;
·编译程序:也称编译器,用来将高级语言源程序翻译成汇编语言或机器语言目标程序。
按照 在计算机上完成任务不同,可以把使用计算机的用户分成四类:
·最终用户:使用 应用程序完成特定任务的计算机用户;(比如玩游戏、看电影)
·系统管理员:利用 操作系统等软件提供的功能对系统进行配置、管理和安装,以建立高效合理的系统环境供计算机用户使用的操作人员;(修电脑的)
·应用程序员:使用高级编程语言编制应用软件的程序员;
·系统程序员:设计和开发系统软件的程序员;(底层)
1.4 程序开发与执行过程
略
1.5 计算机系统性能评价
性能的定义:
·吞吐率:在单位时间内完成的工作量;(看视频时,单位时间内传输的数据量要大)
·响应时间(执行时间、等待时间):从作业提交到作业完成所用的时间;(银行业务处理,要时间短速度快)
·也有两种都看重的应用场合。
性能的测试:
CPU的时间度量公式的三个相互制约因素:
·时钟周期:CPU的主脉冲信号的宽度;
·时钟频率(主频):时钟周期的倒数;
·CPI(cycles per instruction):执行一条指令所需的时钟周期数;(有时候是一个确定的值,有时候取平均值)
·CPU执行时间 = 程序时钟周期数 * 时钟周期 = 程序时钟周期数 / 时钟频率 = CPI * 程序指令条数 * 时钟周期;
·程序时钟周期数 = 不同指令的条数和各自的CPI乘积的和 = 程序指令条数*CPI;
·CPI = 程序时钟周期数 / 程序指令条数;
用指令执行速度进行性能评估(不可靠):
MIPS(Million Instruction Per Second):平均每秒钟执行多少百万条指令;
MIPS = 时钟频率 / CPI = 1 /(CPI * 时钟周期);
用基准程序进行性能评估:
·执行时间之 和;
·执行时间的 算术平均值;
·执行时间的 几何平均值;
·执行时间的按使用频度的 加权平均值;
·执行时间 归一化:
·执行时间的归一化值 = 参考机器上的执行时间 / 被测机器的执行时间;
·比值越大,性能越好。