主存储器(Main memory)是存放指令和数据的,并能由中央处理器(CPU)直接随机存取的随机存储器(RAM)。主要由存储体、控制线路、地址寄存器、数据寄存器和地址译码电路五部分组成。
存储地址寄存器(Memory Address Register,MAR)和存储数据寄存器(Memory Data Register,MDR)有共同的名词 —— 寄存。寄存这一词在物流中指的是寄存人叫保管人妥善保管的物。所以,寄存器的作用也类似如此。
把主存储器类比为物流仓库,物流仓库的货架为主存储体、货号为MAR、柜台为MDR。其中货号由货架号、层数以及物品号组成,如10号货架的第3层的5号物品,即 10-3-5 号货物。
工作人员作为整个物流仓库的核心角色是必不可少的,这一角色会接触到货号、柜台。货号需要为工作人员提供每一个货物在物流仓库存放的地址。柜台需要向工作人员提供订单的信息,包括货号、寄往地址等信息,并且它还要记录工作人员完成从货架取货到存放柜台这一过程的结果信息。
货号存储着货物的在物流仓库的具体位置,工作人员在柜台前获取订单。然后,工作人员利用货号从货架中取出货物后把货物暂存到柜台前,在柜台打勾完成这一项订单的工作。
数据在存储体内按地址存储着。而存储体有存储单元、存储字、存储字长之分。
一个地址对应一个存储单元,存储单元按地址存储到 MAR 中,所以 MAR 的位数反映存储单元的个数。存储单元中的数据暂存到 MDR 中,所以 MDR 的位数反映存储单元可以存放的位数。
比如,MAR = 4位,反映了存储体共有 2^4 个存储单元。MDR = 16位,反映了存储单元可以存放1个字。
这里的字(word)根据不同的计算机硬件设计,会有不同的字节规定,有可能1个字等于1个字节,也有可能是1个字等于2个字节等。补充:1字节(Byte)等于8位(bit),即1B=8b。