设CPU有20根地址线,那CPU按字节和按字访问的地址范围应该怎么算?

如题所述

2^20B=1M,这是按字节寻址,然后看CPU是几位的,要看数据线的个数,16根就是16位,就是一次传输16位数,或者说一次传输16/8=2个字节,就是说1字=2字节。所以按字寻址就是1M/2=512K。如果是32根就是32位,32/8=4字节,按字寻址就是1M/4=256K。
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-01-20
2的20次方,可以寻找1MB地址范围追问

那按字怎么算!

追答

8位是一个字,两个字节是一个字。1MB/16就可以了,是2的16次方个字

追问

2的16次幂,那就是64k?
问题是我这书上写的是512k!

追答

64KW(64K个字),是顺序寻址,如果分奇偶寻址需要乘以2,你这个是两个CPU吧,还要乘以2.

追问

不是啊,没说是双CPU啊!

追答

不好意思,你的RAM是8位的,所以20位地址总线以此可以访问1MByte,是字节,而不是1MBit。一个字有两个字节,所以20位地址总线可以访问512KW。

追问

大概理解了
不过和8位RAM有什么关系?

追答

20位地址总线可以访问1M个地址,也就是1M个房间。你的RAM正好是8位的,也就是1M个Byte,就是512KW。这这么说你明白了吗

追问

懂了!
非常感谢!

本回答被提问者采纳
相似回答