-
CPU计算过程
程序,必须先载入内存才能运行;
CPU,设计成只从内存中读取数据。
这个链条从计算机硬件上来看:
硬盘(程序) --> 内存 --> CPU
硬盘
、内存
都是起到存储功能,并无计算功能;计算过程是在CPU
中。CPU
内部又有一个硬件链条:缓存 --> 寄存器 --> 运算单元
计算过程
,最终是发生在CPU内部的运算单元
里。 -
寄存器与运算单元
寄存器,是与运算单元接触的最后一个存储数据的物理硬件。
对于32位CPU,每个寄存器内一般能存储32位的数据,即4个字节的数据。同理,64位CPU对应64位(8字节)的寄存器。
寄存器作为物理单元,最大就是4个字节(以32位为例),对应数据类型里的int。
寄存器是一个物理概念,对应32位;
int数据类型是一个软件概念,对应32位;
作为软件概念,double是8个字节,即64位,对应的2个寄存器,就是说当设定一个double数据类型,每次在物理层面就是
2个寄存器
一起行动。常说的32位、64位计算机,指的就是寄存器的容量位数,同时也指==总线==的传输容量。
寄存器作为物理硬件,有着各自特定的作用及名称:
-
缓存与内存的区别
内存
虽然快,但是CPU
计算更快,CPU与内存间通过总线
传输,此传输过程相对CPU计算能力是比较慢的,因此就有缓存存在的必要性。缓存与计算单元的距离更近,不需要总线的开销,可以将频繁使用的数据暂时放到缓存。
-
References
C语言与内存需要知道的事情:计算细节分析
猜你喜欢
转载自blog.csdn.net/The_Time_Runner/article/details/103810229
今日推荐
周排行