📜  内存中的读取和写入操作

📅  最后修改于: 2021-06-28 16:23:46             🧑  作者: Mango

存储单元将二进制信息存储在称为字的位组中。数据输入线提供要存储到存储器中的信息,数据输出线将信息从存储器中输出。控制线的读和写指定了数据传输的方向。基本上,在内存组织中,有 2^{l}内存位置从0索引到 2^{l}-1其中l是地址总线。我们可以使用以下公式以字节为单位描述内存:

N = 2^{l} Bytes
在哪里,
l是总地址总线
N是内存(以字节为单位)

例如,下面可以使用上述公式以字节为单位描述一些存储:

1kB= 210 Bytes
 64 kB = 26 x 210 Bytes
       = 216 Bytes
 4 GB = 22 x 210(kB) x 210(MB) x 210 (GB)
      = 232 Bytes

内存地址寄存器(MAR)是地址寄存器,用于存储执行操作的内存位置的地址。
内存数据寄存器(MDR)是用于存储正在对其执行操作的数据的数据寄存器。

  1. 内存读取操作:
    存储器读操作将所需的字传送到地址线并激活读控制线。下面给出了存储器读读操作的说明:

    最初在上图中,MDR可以包含任何垃圾值,而MAR则包含2003内存地址。执行读取指令后,将读取内存位置2003的数据,并且MDR将通过2003内存位置(3D)的值进行更新。

  2. 内存写操作:
    存储器写操作将所需字的地址传输到地址线,将要存储在存储器中的数据位传输到数据输入线。然后,它激活写控制线。写入操作的说明如下:

    在上图中,MAR包含2003,MDR包含3D。执行写指令后,将在2003内存位置中写入3D。