计算机组成原理中的局部性原理是什么?

我知道局部性原理有时间局部性和空间局部性,但是不理解。希望各位大神给小弟我说说为什么有这些局部性?这些局部性的作用是什么?万分感谢

时间局部性就是,最近被访问的存储单元,在之后很有可能会被再次访问到;

空间局部性就是,对于正在被访问的存储单元附近的位置,在之后很有可能会被访问到。

这个很容易理解,以一段常见的代码为例:

    for(i = 0; i <= 100; i++) {

        sum += array[i];

    }

其中i、sum 这些元素现在正被访问,在之后也一定会被重复访问,这就是时间局部性;

而array这个数组,现在访问了array[0]的位置,那之后紧接着就会访问它附近的位置,比如array[1]、array[2]等等,这就是空间局部性。

根据局部性原理,可以做一些相关设计。比如cache就是利用局部性原理设计出来的。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-03-30
计算机体系结构,主要研究硬件和软件功能的划分,确定硬件和软件的界面,哪部分功能由硬件系统来完成,哪部分功能由软件系统来完成。
计算机组成原理,是依据计算机体系结构,在确定且分配了硬件子系统的概念结构和功能特性的基础上,设计计算机各部件的具体组成,以及它们之间的连接关系,实现机器指令级的各种功能和特性,这点上说计算机组成原理是计算机体系结构的逻辑实现。
计算机实现,是计算机组成的物理实现,包括中央处理器、主存储器、输入输出接口和设备的物理结构,所选用的半导体器件的集成度和速度,器件、模块、插件、底板的划分,电源、冷却、装配等技术,生产工艺和系统调试等各种问题。总之,就是将完成逻辑设计的计算机组成方案转换成真实的计算机,也就是将满足设计、运行、价格等各项要求的计算机系统真正地制作并调试出来。
相似回答