封面来源 Pixiv 95890188 今天就正式开写了!
下定义
计算机:根据程序进行运算的计算机器
由以下几部分组成:
- CPU:计算,处理数据
- 存储器:存储程序和数据
- I/O:和外部进行数据交换
- 总线:连接上面的三个东西
CPU
这是一种根据指令进行各种处理的电子电路,处理流程如下:
1.Fetch 读取
CPU中有 PC(Program Counter)寄存器
,可以记录即将执行的指令的地址,然后CPU就把指令从内存中取出。
2.Decode 解码
CPU获得指令后,将指令交给 指令解码器
来解码。
3. 执行
解码完成后,CPU便处理对应操作,如从内存和寄存器中读取数据再写入数据,或者中断指令
这段解码后的数字包括两个部分:操作码和操作数,均为二进制 - 这就是机器语言。
根据指令的复杂度,可以把CPU分为RISC(Reduced Instruction Set Computer)精简指令集计算机
和CISC(Complex Instruction Set Computer)复杂指令集计算机
,代表分别为arm以及amd64,i386.
这两种类型各有优劣,比如RISC硬件会较简洁,CISC则会更复杂,但是为了达到同样的目的,RISC执行的指令会比CISC的指令多得多。
现在AMD和Intel也在内部将CISC的复杂指令分解为简单指令,使内部像CISC一样工作。
内存
这是用来存放运行时指令和数据的存储器
采用DRAM(Dynamic Random Access Memory)
技术,根据电容器中电荷的多寡来表示01。
DRAM
根据访问方式和规格的不同分为SDRAM(Synchronous DRAM)
和DDRSDRAM(Double Data Rate SDRAM)
等种类。
总结:访问速度register(寄存器)>RAM(内存)>外存
I/O
输入数据和输出数据的装置
访问I/O
的方式分为存储器映射和端口映射两种。
存储器映射,就是把I/O
与内存以同样的方式进行管理,访问I/O
和访问内存均以地址访问。
端口映射,以不同的指令来分别访问I/O
和内存。
总线
CPU
,RAM
,I/O
之间交换数据的共享通道。
发起访问的一方叫总线主控,接受访问的一方叫做总线从属。
由数据总线,地址总线和控制总线组成。
数据总线用来传输交换的数据,地址总线指定访问的地址,控制总线负责总线访问的控制。
各个信号的时序、进行交换的规则等称为总线协议。
这个交换的过程叫做总线传输。
总线传输过程大概如下:
1.申请使用总线: 由总线控制器中的仲裁器来完成。
2.许可使用总线:总线控制器传回信号,许可授权。
3.请求访问:总线主控对从属的发出访问请求,包含访问地址,读取/写入,(写入数据)等。
4.应答:接受访问的总线从属对主控的应答。
5.释放:总线主控告知控制器释放控制权。