用于存取数据和程序。这里所说的存储器,并不是广义的存储体系。而是指内部存储器,也称内存、主存。我们通常所说的硬盘,也是一种存储设备,是归于外部设备里的,请注意两者的区别。
计算机在运行时,需要先把程序和数据读取到内存中,程序对应于指令序列,计算机按顺序执行指令。这些信息并不是一直存在于内存中的,通常存放在磁盘这样的外设中,因为磁盘中的信息断电后并不会消失。而内存中的信息在关机后就会消失,这也是我们在电脑上做某些工作,需要定期保存结果的原因。而我们安装机器系统的时候,数据也都是写到磁盘上的。在机器运行过程中,需要实现什么功能,就把对应的程序读入到内存中,那么为什么不一次性把所有的内容都读入到内存中呢?
有如下两个原因:
(1)内存和磁盘在存储空间、访问速度和价格上的差异。目前内存的大小通常是2GB、4GB[1](G表示230),磁盘的大小已达TB数量级(T表示240)。而内存的平均访问时间为100 ns,硬盘为10,000,000 ns。总之,内存更快,价格更高,但容量有限。
(2)程序执行的局部性原理。程序总是趋向于使用最近使用过的数据和指令,访问的存储器地址分布并不是随机的。也就是说,并没有必要把所有的数据和指令都装入到内存中,哪怕是内存足够便宜也足够大,这样对程序的执行速度也不会有更大的提升。
请思考一下,为什么在CPU里还有缓存体系?(www.xing528.com)
衡量主存的指标主要是存储容量和访问速度。用于表示存储的单元见表0-1。
表0-1 存储单位
存储器又可分为RAM和ROM。RAM表示随机存储器,就是我们平时所说的内存条,通常以插卡的方式和机器主板连接。ROM表示只读存储器,其内容是制造商写入的,用户只能读,通常用于存储那些开机时运行的程序。
内存通常是按字节为单位编址的,每个存储单元都有一个唯一的标识符,称为“内存地址”。尽管在程序中可以使用名字来表示内存区域,但最终都要转换成硬件能识别的地址,才能访问该名字所表示的内存空间。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。