Back
To Top
关于计算机体系结构的一些思考
2025/01/10
关于计算机体系结构的一些思考
目录
输入/输入
现代计算机都采用存储程序结构,又称为冯·诺依曼结构,所有对计算机的操作,都可以简化为如下图:
现代计算机组成的五大部分:
- 控制器
- 运算器
- 存储器
- 输入/输出设备
冯·诺依曼结构主要特点有:
- 以运算单元为中心;
输入/输出设备与存储器之间的数据传送都途经运算器。运算器、存储器、输入设备们之间的联系都由控制器集中控制; - 指令的执行是顺序的,即一般按照指令在存储器中存放的顺序执行,程序分支由转移指令实现(程序需要根据特定的条件来改变执行的顺序,这时就需要使用分支机制);
- 存储器是字长固定的、顺序线性编址的一维结构;
存储器提供可按地址访问的一级地址空间,每个地址是唯一定义的; - 数据以二进制编码;
指令和数据均采用二进制格式; - 由指令形式的低级机器语言驱动;
模型分层
计算机和网络等都采用分层设计的,如下图:
层
备注
应用层、云计算
软件
库、接口、服务
软件
编程语言
软件
操作系统
软件
指令集体系架构
软件
逻辑门
硬件
电路
硬件
半导体
硬件
电流
硬件
层的一些通用法则
- 依赖性
计算机的工程模型是深度层叠的,并且每一层的设计都会影响上、下相邻的两层; - 独立性
- 每一层都独立处理其特定的任务或功能。层与层之间的设计和实现细节可以独立进行;
- 模型分层让设计者能够摆脱现实物理的约束;
- 传递性
- 不同的层次之间有不同的沟通方式,这个约定好的沟通方式叫作协议,并且不能越层沟通;
- 可以没有上层只有下层,但一定不能只有上层而没有下层;
这些法则不仅适用于计算机体系、计算机网络,也在操作系统、软件开发和硬件设计中广泛应用。
算法和程序
- 程序 = 由计算机系统执行的一系列指令或代码集合 + 数据;
- 算法其实就是设计者针对问题场景所设计的一些最佳策略;
- 某场景的应用 = 针对该场景的算法 + 数据;