CPU是如何读写内存的呢?
程序员和编译器:CPU执行指令是由程序员和编译器来告诉CPU去读写内存的[1]。程序员使用高级语言编写程序,编译器将程序翻译为机器指令,这些机器指令告诉CPU如何读写内存。
机器指令:CPU根据机器指令中包含的内存地址或PC寄存器中的下一条指令地址来访问内存[1]。在精简指令集架构下,有特定的Load/Store指令来读写内存;而在复杂指令集架构下,一条指令可以直接操作寄存器或内存中的数据。
内存读写:CPU在读写内存时,有两个主要因素驱动:
内存访问速度差异:CPU执行指令的速度远快于内存读写的速度[1]。为了解决这个速度差异,CPU使用缓存来提高内存访问效率。缓存是一种比内存速度更快的存储介质,常用的是SRAM。CPU将经常使用的数据存储在缓存中,当需要访问内存时,首先查找缓存,如果能找到,就可以直接从缓存中读取数据,提高了访问速度。
CPU通过机器指令来读写内存,程序员和编译器负责生成这些指令。CPU在执行指令时,根据指令中的内存地址或PC寄存器中的地址来访问内存。为了提高内存访问效率,CPU使用缓存来存储经常使用的数据。
Learn more:
本文作者:yowayimono
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!