假设一个存储器有18根地址线、32根数据线,请问该存储器的容量和寻址范围?
答:
若该存储器按字节编址,那么18根地址线的最小位,表示的是一个字节,所以容量为2^18=256kB,按字节寻址的范围是0~256kB,按字寻址的地址值是0、4、8.....256kB,范围也是0~256kB,但是只有4的倍数才能访问
若该存储器按字编址,那么18根地址线的最小位,表示的是一个存储单元,而一个存储单元占几个字节与数据线的位宽有关,所以容量是2^18*4=1MB,因为是按字编址,所以不存在按字节寻址的说法,只有按字寻址的说法,所以,按字寻址的范围是0~256kB
注意点:
1、现代计算机,默认cpu和存储器按字节编址,因为可以按字节寻址,当然不排除按字编址的可能
2、看到按字节寻址,默认按字节编址,因为按字编址,无法按字节寻址
3、有的存储器的表示方法为256KB*32,其中256kB表示有256k个存储单元,32表示每个存储单元是32位的,即一个存储单元占4个字节
4、按字编址,那么18根地址线的最小位,表示的是一个存储单元,而一个存储单元占几个字节与数据线的位宽有关,按字节编址,18根地址线的最小位表示一个字节
以下是几个参考链接:
关于地址总线,字长,内存容量,寻址范围的计算_字长32位,存储容量4gb,按字编址,寻址范围是多少-CSDN博客
(70 封私信 / 89 条消息) 计算机组成原理,地址线根数是否决定寻址范围? - 知乎 (zhihu.com)
(70 封私信 / 89 条消息) 内存一个地址对应一个字节还是一个存储单元? - 知乎 (zhihu.com)