本篇博客是根据B站 王道考研——计算机组成原理视频整理,仅供学习使用。
如果这篇文章对你有帮助的话,请不要吝啬一键三连。
1.2.2 认识各个硬件部分
各个硬件的工作原理
一、主存储器的基本组成
![image-20220107111909194](https://i-blog.csdnimg.cn/blog_migrate/d52b4fe47c775886dc0d09c4baa0a747.png)
![image-20220107112104563](https://i-blog.csdnimg.cn/blog_migrate/3e6c9285fea25a23d96942d4afd7bb61.png)
例:
MAR = 4位 --> 总共有2^4个存储单元
MDR = 16位 --> 每个存储单元可存放16bit,1个字(word) = 16bit
易混淆:1个字节(Byte) = 8bit
1B = 1个字节,1b = 1个bit
**存储单元:**每个存储单元存放一串二进制代码
**存储字(word):**存储单元中二进制代码的组合
**存储字长:**存储单元中二进制代码的位数
存储元:即存储二进制的电子元件,每个存储元可存放1bit
二、运算器的基本组成
![image-20220107112746065](https://i-blog.csdnimg.cn/blog_migrate/c9b8a4109301863727db3febb20d861f.png)
运算器:用于实现算术运算(如:加减乘除)、逻辑运算(如:与或非)
ACC(Accumulator):累加器,用于存放操作数,或运算结果
MQ(Multiple-Quotient Register):乘商寄存器,在乘、除运算时,用于存放操作数或运算结果
X:通用的操作数寄存器,用于存放操作数
ALU(Arithmetic and Logic Unit):算术逻辑单元,通过内部复杂的电路实现算术运算、逻辑运算
加 | 减 | 乘 | 除 | |
---|---|---|---|---|
ACC | 被加数、和 | 被减数、差 | 乘积高位 | 被除数、余数 |
MQ | 乘数、乘积低位 | 商 | ||
X | 加数 | 减数 | 被乘数 | 除数 |
三、控制器的组成
CU(Control Unit):控制单元,分析指令,给出控制信号
IR(Instruction Register):指令寄存器,存放当前执行的指令
PC(Program Counter):程序计数器,存放下一条指令地址,有自动加 1 的功能
四、计算机的工作过程
int a = 2, b = 3, c = 1, y = 0;
void main() {
y = a * b + c;
}