系统组成
硬件 (Hardware)
硬件指的是物理设备,包括计算机系统的各种组件,例如:
- 中央处理器 (CPU):也称为微处理器,它是计算机的大脑,负责执行程序指令。
- 内存 (RAM):随机存取存储器,用于存储正在运行的程序和数据。
- 存储设备:比如硬盘驱动器 (HDD) 或固态硬盘 (SSD),用于长期存储数据。
- 输入设备:例如键盘、鼠标等,用户通过这些设备与计算机交互。
- 输出设备:例如显示器、打印机等,用于展示处理结果。
- 总线 (Bus):连接各个硬件组件的数据传输路径。
- 主板 (Motherboard):是计算机内部的主要电路板,上面安装了CPU、内存插槽、扩展插槽等。
- 电源供应 (Power Supply):为计算机系统提供电力。
- 网络接口卡 (NIC):用于连接网络。
软件 (Software)
软件是计算机用来执行特定任务的一系列指令,包括:
- 操作系统 (OS):控制和管理计算机硬件资源,提供应用程序运行的环境。常见的操作系统有Windows、macOS、Linux等。
- 应用软件 (Application Software):如文字处理软件、数据库管理系统、浏览器等,帮助用户完成特定的任务。
- 实用程序 (Utility Programs):帮助管理和维护计算机系统,例如防病毒软件、磁盘碎片整理工具等。
- 编译器和解释器 (Compilers and Interpreters):用于将高级语言编写的程序转换为机器码或字节码。
计算机体系结构
计算机体系结构定义了计算机硬件和软件如何相互作用,以及它们之间的接口规范。这包括数据表示、指令集架构 (ISA)、存储层次结构、输入输出机制等方面的设计。
外设 (Peripherals)
除了上述核心组件外,计算机系统还可能包含各种外设,如扫描仪、摄像头、投影仪等,这些设备通过USB或其他接口连接到计算机上,以增强其功能。
这些组成部分协同工作,使得计算机能够接收用户的输入,处理数据,并输出结果。
冯诺依曼计算机特点
1.计算机由五大部件组成(输入设备 存储器 运算器 控制器 输出设备)
2.指令和数据以同等地位存于储存器,可按地址寻访
3.指令和数据用二进制表示
4.指令由操作码和地址码组成
5.存储程序
6.以运算器为中心
主存储器
存储单元:每个存放一串二进制代码
存储字(word):存储单元中二进制代码的组合
存储字长:存储单元中二进制代码的位数
存储元:存储二进制的电子元件,存1bit
MAR:地址存储器
MDR:数据寄存器
例子:MAR=4位 -> 共2*2*2*2个存储单元
MDR=16位 -> 每个存储单元可存16bit
CPU-运算器
ACC:累加器,存放操作数、运算结果
MQ:乘商寄存器,存放操作数、运算结果
X:通用的操作数寄存器,用于存放操作数
ALU:算术逻辑单元
DR:数据缓存寄存器
PSW:状态条件寄存器,保存指令运行标志
CPU-控制器
CU:控制单元,分析指令,给出控制信号
IR:指令寄存器,存放当前执行的指令
PC:程序计数器,存放下一条指令地址,有自动加1功能
AR:地址寄存器,保存当前CPU的访问的内存单元地址
ID:指令译码器,对操作码进行分析
指令系统
一台计算机的所有指令的集合构成该机的指令系统(指令集)
指令是一组有意义的二进制代码
指令包含操作码字段和地址码字段
七种寻址方式
-
直接寻址 (Direct Addressing)
- 描述:指令中直接给出操作数的地址。
- 特点:简单直观,但指令长度会受到地址大小的影响。
- 示例:
LOAD 1000
表示从地址 1000 加载数据。
-
立即寻址 (Immediate Addressing)
- 描述:操作数直接包含在指令中。
- 特点:不需要访问内存获取操作数,执行速度快。
- 示例:
ADD #5
表示将寄存器中的值加上立即数 5。
-
寄存器寻址 (Register Addressing)
- 描述:操作数位于寄存器中,指令中给出的是寄存器编号。
- 特点:高速,因为不需要访问内存。
- 示例:
MOV R1, R2
表示将 R2 寄存器中的值移动到 R1 寄存器中。
-
间接寻址 (Indirect Addressing)
- 描述:指令中给出的是操作数地址的地址(即指针)。
- 特点:允许访问更大的地址空间,支持动态链接和重定位。
- 示例:
LOAD (R1)
表示从 R1 指向的内存位置加载数据。
-
相对寻址 (Relative Addressing)
- 描述:操作数的地址相对于当前指令的位置。
- 特点:支持代码重定位,可以实现分支跳转。
- 示例:
JUMP +4
表示向前跳转 4 个地址单位。
-
基址寻址 (Base Addressing)
- 描述:使用一个基址寄存器加上一个偏移量来形成操作数地址。
- 特点:可用于保护内存区域,便于程序重定位。
- 示例:
LOAD R1, [R2, 10]
表示从 R2 中的地址加上 10 后的位置加载数据。
-
变址寻址 (Indexed Addressing)
- 描述:使用一个索引寄存器加上一个基地址或直接地址。
- 特点:适用于数组处理,可方便地访问数组元素。
- 示例:
LOAD R1, [R2, R3]
表示从 R3 中的地址加上 R2 中的值后的位置加载数据。
指令控制方式
顺序,重叠,流水
流水线的计算
流水线周期:为执行时间最长的一段
计算公式:1条指令执行时间+(指令条数-1)*流水线周期
吞吐率TP:单位时间内流水线所完成的任务数量 or 输出结果数量
TP=(指令条数)/(流水线执行时间)
流水线加速比S
S=(不使用流水线执行时间)/(使用流水线执行时间)