某计算机有20根地址线32根数据线,存储器的容量为100mb试分别计算按字节和按字寻址时的寻址范围
1个回答
关注
展开全部
一个字节8位二进制数,一个32位数就是4个字节。20根地址线能产生2^20个地址,也就是1024M个地址,每个地址有4个地址,所以最大可达4096MB
咨询记录 · 回答于2022-03-20
某计算机有20根地址线32根数据线,存储器的容量为100mb试分别计算按字节和按字寻址时的寻址范围
一个字节8位二进制数,一个32位数就是4个字节。20根地址线能产生2^20个地址,也就是1024M个地址,每个地址有4个地址,所以最大可达4096MB
即使是32位的计算机,其基本寻址的存储单元也是1个字节,即8位,32位的字长共占4个存储单元,所以16M×32位共需16777216×4=67108864(64M)个存储单元,所以需要对67108864个单元寻址,因此67108864个存储单元共需26根地址线,所以地址线和数据线的总和=26+32=58
所以寻址范围是58?
不是分别求寻址范围吗?
按字节和字计算
1个字节=8个字
范围是1024-4096
1个字等于两个字节
所以我这个问题的答案是?
首先,默认情况下,地址线的位数对应的都是按字节寻址。但是如果题目中数据线就只有4根,还当默认按字节寻址,那就大错特错了。因为数据线才4根,一次读写只能4个bit,根本不可能做到按字节寻址,这里的数据线有32根。所以可以大胆放马过来。如果是按字寻址,就需要拿出地址线做字内字节寻址。因为,一个字有多个字节。寻址本身和数据线没有任何关系。要的是,能够索引到相应字节,而数据线位数,可以显示的是字内有多少字节,从而决定分配多少地址线来。好了,按字节寻址:20根地址线,寻址范围就是220=1M220=1M。按字寻址,因为数据线有32位,所以一个字有4字节。拿出两根地址线来(00 01 10 11),剩下18根地址线,所以寻址范围是256K(218)256K(218),即,可以数到252K个字,再由字内寻址,可以定位到每一个字节。
地址范围为0~(2^20)-1,也就是说需要二十根地址线才能完成对1MB空间的编码,所以地址寄存器为20位,寻址范围大小为2^20=1M
后面100mb,再乘以100
按字节范围是0-1024mb
按字范围地址范围为0~2^18-1,也就是说我们至少要用18根地址线才能完成对1MB空间的编码。因此按字编址的寻址范围是2^18
按字范围就是✖️100
0-2^18
0-25mb