3. 内存单元

本文详细描述了一位内存单元的构成,扩展至16位内存单元的组合方式,以及如何通过地址线进行串行操作和转换,强调了寄存器与内存单元的并行与串行区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1位的内存单元

  • 对于一个内存单元需要有:
  • 1个锁存器,数据输入,可写控制,是否读取(也是是否输出), 行和列(内存地址), 数据输出这几部分组成
  • 写入: 当行和列, 数据输入,可写全为1时则写入,(行 & 列 & 输入 & 可写)
  • 读出(输出): 当 行,列, 是否读取(也是是否输出) ( 行 & 列 & 读取)

在这里插入图片描述

内存单元16位

  • 根据上面1位的内存单元可组合成一个16位内存单元
  • 内存是一种串行
  • 数据输入,可写控制,读取控制(输出控制),输出. 可由4根线连接(每根线与16个内存单元连接)
  • 由于每根线与16个内存单元连接,因此每次点亮(给电信号),16个内存单元会全部收到
  • 最终通过 行 , 列 来区分 写入或读取哪个内存单元
  • 例如:给2行2列写入:
1. 点亮第2行, 第2行4个内存单元将全部选中
2. 点亮第2列, 第2列4个内存单元全部选中
3. 但能符合条件的,即 “行 & 列 & 写入控制 &输入数据” 这4个条件的只有 第二行第二列
  • 与寄存器不同, 寄存器每根线独立,并行操作. 内存串行,一根数据线控制所有单元,一根地址线控制一列或一行内存单元

在这里插入图片描述

16位内存单元对 地址线的修改

  • 由于上面一共16个地址, 因此2的4次方 => 2^4 就可以表示

  • 下面替换的地址线,通过一个查找表来实现

  • 原行1 连接到 位0 , 原列1->位1,原行2->位2,原列2->位3… 以此类推

  • 以行3举例(2进制):

  • 行3连接到的是位4:10000, 列1连接到的是位1:10

  • 因此 行3列1 的内存单元 对应的值是:10010

  • 总之,根据 行,列 对应连接的位来计算此内存单元的值

  • 下面给出行3,行4对应的值(2进制):

  • 行3:

  • 列1:10010

  • 列2:11000

  • 列3:110000

  • 列4:10010000

  • 行4:

  • 列1:1000010 (行4连连接到是位6, 列1连接到的是位1)

  • 列2:1001000

  • 列3:1100000

  • 列4:11000000

下面地址表中显示的是16进制

在这里插入图片描述

在这里插入图片描述

16位内存单元地址示例

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值