一个字节(1B)等于八位,这个是最基本的存储单位,每一个B有一个地址,4G内存就是4G个这样的单元组成的内存,为了寻址每一个B,也就需要有4G(2^32)个地址。
4G个是怎样的呢,很简单从00000000,00000001,000000002一直到ffffffff,
这个是16进制表达的,如果用2进制表达,ffffffff,就是32个1。
如果有人问你,一个公司有999个人,工号需要几位数,你立马就可以说出只需3位数。
也就是一个3位数的工号系统可以“寻址”999个人。也就是10^3(由于000不用,少了一个)。
反过来,4位数工号能容下多少员工?就是10^4=1万个。
而32位CPU是2进制32位,就是2^32,4G个,大概有10^12个。
如果仅仅要寻址4B,也就是4个地址,只要2^2,也就是2位的CPU就可以了。
计算机内部计算是使用二进制的
也就是说32位CPU一次只能处理4B的数据
而寻址能力是CPU最大能查找范围的地址
是2^CPU位数 bit
即32位CPU寻址范围为2^32bit
也就是最大寻址4G
这也是32位CPU显存的限制
32个二进制位,转换成十进制,能表示的数量是2的32次方,就是4G;所以32位CPU的地址总线可直接寻址的范围是4G,不是4GB。