目录
一.计算机软件
-
三种语言
- 机器语言:0101......
- 汇编语言:助记符如用英文代替二进制,从汇编语言到计算机语言要经过汇编程序(汇编器)
- 高级语言:如c/java等,高级语言到机器语言要经过编译程序(编译器),汇编程序(汇编器)
-
翻译程序
- 汇编程序(汇编器):将汇编语言转换成计算机语言
- 解释程序(解释器):将高级语言一条条翻译成计算机语言
- 编译程序(编译器):将高级语言直接翻译成汇编语言或计算机语言
-
编译器和解释器的区别
- 编译器:是直接将高级语言翻译成计算机语言,效率高,如C/C++,java
- 解释器:要一条条语句翻译,重复的代码也重复翻译,效率很低,如javaScript,shell,python
二.计算机软件和硬件逻辑功能 的等价性
1.软件:效率低,成本低
2.硬件:效率高,成本高
3.指令集体系结构(ISA):是计算机软件和硬件之间的交接面,ISA定义了一台计算机可以执行的所有指令的集合,每条指令规定了计算机执行什么操作。ISA是软件感知部分,也是软件可见部分
三.计算机系统的层次结构
3.2从源程序到可执行文件
3.2.1预处理的作用
是将,如我们定义一个PI,PI = 3.1415926,计算机语言不认识PI,所以预处理是将PI还原成3.1415926
3.2.2 流程
首先预处理,然后编译器将它转换成汇编语言,然后汇编器将汇编语言转换成计算机语言,最后链接器将计算机语言和写程序时引用的各语言的标准库链接成可执行文件
3.2.3 可执行文件是在硬盘(外存里),在执行程序是会将他调入主存(存储器)
四.计算机的性能指标
4.1 总容量=存储单元(MAR)+存储字长(MDR)bit
总容量=存储单元(MAR)+存储字长(MDR)/8 Byte
1Byte = 8 bit,
1KB = 1024B(字节) = , 1GB = 1024MB ,1MB = 1024KB
4.2字长
是指计算机进行一次整数运算所能处理的二进制的位数,字长越长,越精确
4.3主频与时间周期
时钟周期:
CPU主频:是CPU数字脉冲震荡的频率
CPU主频(时钟频率)1/CPU时钟周期
同一主机,主频越高,时间越短
1hz(赫兹)= 一秒10次, 10次/s
4.4CPI
CPI:执行一条指令需要多少时钟周期
不同的指令CPI不同,同一条指令CPU也会不同
4.4.1执行一条指令耗时(CPU执行时间)
CPU执行时间 = CPI x CPU时间周期= CPU时间周期数/主频 = 指令条数 x CPI / 主频
4.5IPS:每秒执行多少条指令
IPS = 主频/平均CPI
4.6FLOS:每秒执行多少浮点运算
1. MFLOPS = 每秒百万次浮点运算
2.G =
4.7 数据通路的带宽:各硬件都是由数据总线传输数据
数据总线一次能并行传输数据的位数
4.8响应时间
4.9 基准程序:
专门用来进行性能评价的程序,如跑分软件,鲁大师等
五 例题
1.高频的CPU一定比低频的CPU性能高
错。如果A的主频为2hz,cpi为10,B的主频为1hz,cpi为1,那么A一秒只能执行0.2条指令,而B一秒能1G条指令.
2.若A和B的CPI相同那么A一定快吗
错,若A不支持乘法指令,只能多次使用加法,而B能使用乘法,则B快
3. 基准程序执行的越快越说明机器的性能越好吗?
不一定,基准程序的语句存在频度差异