在计算机执行时,几乎每一条指令都涉及对存储器的访问,因此要求对存储器的访问速度能跟得上处理机的运行速度。或者说,存储器的速度必须非常快,能与处理机的速度相匹配,否则会明显地影响到处理机的运行。此外还要求存储器具有非常大的容量,而且存储器的价格还应很便宜。
1. 存储器的多层结构 对于通用计算机而言,存储层次至少应具有三级:最高层为CPU寄存器,中间为主存,最底层是辅存。 在较高档的计算机中,还可以根据具体的功能细分为寄存器、高速缓存、主存储器、磁盘缓存、固定磁盘、可移动存储介质等6层。
2. 可执行存储器 在计算机系统的存储层次中,寄存器和主存储器又被称为可执行存储器。 对于存放在可执行存储器中的信息,与存放于辅存中的信息相比较而言,计算机所采用的访问机制是不同的,所需耗费的时间也是不同的。 进程可以在很少的时钟周期内使用一条load或store指令对可执行存储器进行访问。对辅存的访问则需要通过I/O设备实现,因此,在访问中将涉及到中断、设备驱动程序以及物理设备的运行,所需耗费的时间远远高于访问可执行存储器的时间,一般相差3个数量级甚至更多。
1. 主存储器 主存储器简称内存或主存,是计算机系统中的主要部件,用于保存进程运行时的程序和数据,也称可执行存储器。 容量对于当前的微机系统和大中型机,可能一般为数十MB到数GB,而且容量还在不断增加,而嵌入式计算机系统一般仅有几十KB到几MB。
2. 寄存器 寄存器具有与处理机相同的速度,故对寄存器的访问速度最快,完全能与CPU协调工作,但价格却十分昂贵,因此容量不可能做得很大。 寄存器用于加速存储器的访问速度。例如:用寄存器存放操作数,或用作地址寄存器加快地址转换速度等。 寄存器的数目: 当前的微机系统和大中型机:几十个至上百个,字长一般是32位或者64位。 嵌入式计算机系统:一般几个到几十个,字长一般是8位。