1.1 计算机发展历程
计算机系统 = 硬件 + 软件
软件:
- 系统软件:用来管理整个计算机系统,操作系统、数据库管理系统、标准程序库、网络软件、语言处理程序、服务程序
- 应用软件:按任务需要编制成的各种程序
硬件:
- 第一代:电子管时代,ENIAC1946,使用机器语言编程
- 第二代:晶体管时代,面向过程的程序语言设计FORTRAN,有了操作系统雏形
- 第三代:中小规模集成电路时代,分时操作系统
- 第四代:大规模集成电路时代,Windows、MaxOS、Linux
- 摩尔定律:集成电路上可容纳的晶体管数目约每隔18个月便会增加一倍,整体性能也将提升一倍
1.2 计算机硬件的基本组成
“存储程序”的概念是指将指令以二进制代码的形式事先输入计算机的主存储器,然后按其在存储器中的首地址执行程序的第一条指令,以后就按该程序的规定顺序执行其他指令,直至程序执行结束。
1.2.1 早期冯诺依曼机-以运算器为中心
- 指令和数据以同等地位存于存储器,可按地址寻访
- 指令和数据用二进制表示
- 指令由操作码和地址码组成
- 存储程序
- 以运算器为中心
1.2.2 现代计算机的结构-以存储器为中心
1.3 各个硬件的工作原理
1.3.1 主存储器的基本组成
- 存储单元:每个存储单元存放一串二进制代码
- 存储字(word):存储单元中二进制代码的组合
- 存储字长:存储单元中二进制代码的位数
- 存储元:即存储二进制的电子元件,每个存储元可存 1bit
1.3.2 运算器的基本组成
1.3.3 控制器的基本组成
- CU(Control Unit):控制单元,分析指令,给出控制信号
- IR(Instruction Register):指令寄存器,存放当前执行的指令
- PC(Program Counter):程序计数器,存放下一条指令地址,有自动加1功能
1.4 计算机系统的多级层次结构
- 编译程序:将高级语言编写的源程序全部语句一次全部翻译成机器语言程序,而后再执行机器语言程序(只需翻译一次)
- 解释程序:将源程序的一条语句翻译成对应于机器语言的语句,并立即执行。紧接着再翻译下一句(每次执行都要翻译)
- 计算机体系结构:有无乘法指令,程序员可见
- 计算机组成原理:如何实现乘法指令,程序员不可见
1.5 计算机性能指标
1.5.1 存储器性能指标
总容量 = 存储单元个数×存储字长 bit
eg: MAR为32位,MDR为8位 总容量 = 232 * 8 bit = 4GB
1.5.2 CPU的性能指标
CPU主频(时钟频率):1 / 时钟周期,CPU内数字脉冲信号振荡的频率
CPI(Clock cycle Per Instruction):执行一条指令所需的时钟周期数
执行一条指令的耗时 = CPI × CPU时钟周期
CPU执行时间=CPU时钟周期数/主频=(指令条数*CPI)/主频
IPS( Instructions Per Second ):每秒执行多少条指令
FLOPS(Floating-point Operations Per Second):每秒执行多少次浮点运算
1.5.3 系统整体的性能指标
数据通路带宽:数据总线一次所能并行传送信息的位数(各硬件部件通过数据总线传输数据)
吞吐量:指系统在单位时间内处理请求的数量
响应时间:指从用户向计算机发送一个请求,到系统对该请求做出响应并获得它所需要的结果的等待时间