3

我的问题是关于 CPU 及其指令的。我知道它们必须存放在某个地方,所以我想知道它们存放在哪里?我想在缓存中...

4

3 回答 3

4

在缓存和内存中(对于所有可能很快不需要的程序指令)。

确切的缓存取决于 CPU。缓存实际上只是一个通用术语,用于描述 CPU 芯片上的任何“内存”,而不是单独的 RAM 芯片。

现代 CPU 通常有多个缓存。这意味着用于存储指令的缓存称为“指令缓存”。

有关缓存的一般信息可以在 Wikipedia - http://en.wikipedia.org/wiki/CPU_cache中找到。

于 2012-09-01T12:49:36.820 回答
2

一些最新的 CPU 有类似循环缓存的东西(用于解码指令)。当您的关键循环为 64 字节或更小时,它是最快的。然后是外部缓存,如 L1 指令缓存和 L2-L3 缓存。指令的最外层是 RAM。当然,它们都是从 ROM、HDD、调制解调器、软盘、CD-ROM 等加载的。这些都是用编程语言编写的,使用键盘用于在你的脑海中传递指令/意见。----> Brain是source,cache和cpu-registers是最后一站。

于 2012-09-01T12:53:53.300 回答
0

指令就是数据,就像数据就是数据一样。一切都是二进制的,一切都存储在 RAM 中,一切都从内存加​​载到 CPU 中(并在途中被缓存)。CPU 知道它何时加载指令,而不是数据,因为 CPU 知道它在做什么(例如,我现在正在运行这条指令,接下来我需要运行这条指令,我需要加载它......啊,我'正在加载指令)。

于 2012-09-01T12:57:38.313 回答