某计算机字长16位,其存储容量为2MB,若按半字编址,它的寻址范围是?

1个回答

  • 换算成1位2进制的基本单元来算.先计算总容量,容量为2MB,1B(1字节)为8位,也就是8个一位基本单元组成,2MB=2^21B=2^21*8 位.所以总的基本单元是2^21*8 位.(8bit(位)=1Byte(字节) 1024Byte(字节)=1KB 1024KB=1MB 1024=2^10)

    一个字长是16位,就是说一个字是由16个一位基本单元(就是上面提到的位) 组成.按照字来编址就是说由一个字所包含的一位基本单元的个数作为一个地址单元(16),它对应一个单位地址.同理,双字编址就是两个字所包含的的基本单元数作为一个地址单元.而半字编址就是半个字长包含的位来表示一个地址单元(这里当然是8) 由于一个字节(1B)永远是8位,所以按字节编址永远是8个一位基本单元作为一个地址单元.而重点是 寻址范围 概念就是说总共有多少个这样的地址.明显,该用 总基本单元的 位 来除以 每个单位地址占的位数 就是总共的寻址数 就是 2^21*8(总的位)/ 8(半字编址每个单位地址占位数)=2^21=2M

    同理对于其他编址方式也可以算出,比如按字编址=2^21*8/16=1M 貌似是这样诶参考

    http://csplace.cn/Study/Subject/73.html

    简单的总结就是 总容量为2MB=2*8Mb 注意B是字节,b是位 ,而半字编址就是每个地址单元用字长的一半 16/ 2=8b( 位)表示,所以总寻址=2*8Mb/8b=2M