主存中存储单元地址的分配

在阅读该文之前,建议读者事先了解了主存的基本组成:主存储器的基本组成
这样更容易理解

主存中存储单元:

下图中,每一个小方块就代表一个存储单元,大方块是主存中的存储体。
以8位二进制作为一个存储单元,也就是一个字节。
通常,字由字节组成。(说白了,字和字节都是一位一位构成的,只不过字包含了字节)
下图一个存储单元为一个字节,这4个字节又构成了1个字。每个字有字地址,在图中形象化的表示了。

那么现在一个问题是,下图的字长为多少?
经过分析,4个字节组成了1个字,一个字节8位,所以总共是32位,字长也就是32位。

示例图如下:
在这里插入图片描述

例子:

了解了上面的概念原理,我们来做几个例子:

1.设地址线为24根,按字节寻址,求访问范围?
2.如果存储容量不变,若字长为16位,求按寻址范围?
3.如果存储容量还不变,若字长为32,求按寻址范围?

我们先分析第一个问题。
如果地址线有24根,并且每根地址线有0、1两位,我们可以从000…000(24位)一直到111…111(24位)。所以一共就有224位,也就是有224个地址。转化完成就是16M。这些地址表示存储单元的位置,所以存储单元的个数也为16M。

如何转换为16M:点击这里!!!

第一个问题说了,我们要按字节寻址,有多少存储字。
一个存储单元可以存放一个8位二进制数,这个二进制数就是一个存储字。说白了就是问有多少个存储单元。经过分析就有16M个。

 
关于存储容量:
一个存储单元中有8位,那么16M个存储单元(地址)中,可以存放16M×8位。这也就是存储容量

假如地址寄存器MAR是8位,每个存储单元可以写入/读出10位的二进制数。存储容量 就应该为28×10位。

 
 
字地址:用该字高位字节的地址表示。也有用低位字节的地址来表示字地址。
那么来看第二个问题:
存储容量不变,也就是有16M*8位,若字长为16位,我们按字寻址,有多少存储字。
下图的字长为16位:一个字节8位,两个字节自然就是16位。
在这里插入图片描述
如果是按字寻址,我们知道字长16位,那么用总容量除以字长就是存储字的个数:

(16M*8)/16=8M

 
第二个懂了的话,第三就好懂啦,只不过是把16换为了32。
字长为32的存储:
在这里插入图片描述
存储字的个数:

(16M*8)/32=4M

  • 136
    点赞
  • 395
    收藏
    觉得还不错? 一键收藏
  • 51
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 51
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值