- 人脑能做运算,还能存数据
- 计算机也一样,计算由处理器完成,存储则在存储器完成
- 第一个处理器是Intel发明的
存储器技术
- CPU在做运算时是直接从寄存器中读数据的
- 但是寄存器的容量很小,所以每时每刻都需要从内存中读取数据
- 为减少从内存中读写数据的次数。在CPU内部做了一个缓存(cache)来避免频繁读写
- 内存的记忆力虽然好,但是记得的东西不多而且睡了一觉(掉电)后就都忘了,属于易失性存储介质
- 所以数据要哦存储在一个容量大且能永久存储的地方,就是硬盘,即使掉电了也没关系,都记下了
- 但硬盘有一个问题哦,就是速度很慢,若直接和处理器打交道,那处理器得等到花儿都谢,从这个角度,内存就是处理器和硬盘之间的缓存
- 硬盘安在电脑上,不能随便移动,不同电脑间要想传输数据,没网的话只能借助可移动的存储介质,如光盘、U盘、SD卡等
- 光、电、磁等特性可以作为存储介质
- 光盘:光特性;内存和U盘:电特性
- 现在的硬盘存储介质还是以磁盘为主
主板
- 计算机内部的不减需要由一个板子来承载,这个板子就是主板
- 主板提供了各种接口,如CPU、显卡、声卡、硬盘、光驱、USB插槽等
- 除了物理连接作用,主板还有两颗重要的芯片,俗称北桥和南桥芯片,他们的主要工作是复杂处理器和其他部件间的通信
- 上北下南,上面和处理器相邻,称北桥,北桥主要负责与那些需要较高通信带宽的部件的通信(主要是存储器和显卡)
- 计算机系统中的“带宽”:用来描述网络或线路理论上传输数据的最高速率
- 南桥负责处理器与较低速度部件间的接口,通常连接各种输入输出设备,如USB、硬盘
- 计算机性能主要来源:CPU、内存、显卡
- 但如果没有合适的主板和芯片组,处理器与其他部件的数据通信会受到限制,从而影响处理器的运行速度,就如同让一辆跑车在乡间小路上跑
显卡
- 显卡是连接主机和显示器的桥梁
- 它的基本功能就是将CPU送来的图像数据处理成显示器认识的格式,再送到显示器形成图像
- 除了以上基本的转换功能,现在的显卡还有两大功能:图像绘制和视频解码
- 显卡里有一个处理器,就是GPU
- GPU是专门针对图形算法设计的,因此关于图像、视频的处理比CPU强
处理器
- 要想做一个运算,不一定要用处理器,用普通的数字电路也可
- 但是吧,换一个运算,电路就得变啦!
- 计算机的产生就是为了解决这个问题,一台通用的设备,一套硬件,解决所有问题
通用计算机模型
-
一个最简单的运算可以用以下模型表示:
-
将一些常用的基本运算,加法器、乘法器等堆在一起,就组成了算术逻辑单元(ALU)
-
此外,由于有大量的输入和输出数据,还需要一个存储器将输入输出数据存起来
-
存储器和运算器中间还需要一个桥梁,做数据的传输,这就是控制器,控制器将存储器的数据送到ALU中做运算,再将运算结果存回到存储器中
-
控制器只是硬件的一个部分,莫得灵魂,数据放在哪,作何运算,需要指令来告诉控制器,每个简单运算都对应着一条指令,这些指令序列就组成了完成一个复杂功能的程序
-
一个完整的计算机逻辑结构:
-
以上说了,只有硬件啥也做不了,还需要配上专门的软件,也就是指令序列,这才能决定计算机要完成的功能
-
集成电路能在一块小芯片上实现,自此,计算机的基本功能就被转移到了一块芯片上,这块芯片就是处理器,再配上输入输出等设备就组成了一台计算机
ISA
- 以前,软件的编写是直接面向硬件系统的,即使同一家计算机公司的不同计算机产品,它们的软件都不能通用,即之前的软件和硬件是紧密耦合的
- 后来,IBM引入了ISA(Instruction Set Architcture,指令集体系结构),软件人员就能面向ISA进行编程,开发的软件可以不经过修改应用在其他ISA架构的系统上(ISA将软件和硬件解耦)
- ISA包括一套指令集和一些寄存器
- PC领域,Intel和AMD的处理器都基于x86指令集,所以不用担心换了更高性能的CPU,软件就不能用了
- 但是手机的程序不能在电脑上用,因为手机的程序大多是基于ARM指令集的
处理器的分层模型
- ISA的出现使得处理器的外部呈现和内部实现可以分离,处理器被分为三个层次:指令集体系结构、处理器微架构、处理器物理实现
- ISA常被称作“架构”(Architecture),ISA在处理器中的实现,被称为“微架构”
- 同样的x86的架构,Intel和AMD使用不同的微架构
- 架构是设计规范,定义处理器