首先我们知道计算机有32位/64位,那这里的32位/64位代表什么意思呢?
其实这里的32位/63位代表地址线,如果你的电脑是32位的,就是地址总线宽度为32位,一次可以发送的一个数据是32位的,则寻址的单元最大就是32位数据的最大值,就是2的32次方。地址总线宽度决定了CPU可以访问的物理地址空间,简单地说就是CPU到底能够使用多大容量的内存。
为了能够有效的访问到内存中的每个单元,给内存单元进行编号,这个编号就是内存单元地址,通过地址可以进行访问该内存。
那你知道每一个内存单元的大小是多少吗?
答案是1个字节,这里是一个字节的原因其实是通过计算算出来的最合适的大小,这样可以更加有效的利用内存。
首先8 bits(比特)= 1byte(字节) 1KB=1024Bytes 1MB=1024KB 1GB=1024MB
原因解释:
①假设一个内存单元的大小是一个bit,那么32位内存能存储的最大的数据量是2^32个bit, 转化为十进制是4294967296bit
4294967296Bit = 536870912Byte = 524288KB = 512MB = 0.5GB
这样算下来总的能存储的内存大小才是0.5GB,这也太小了吧,明显不合适。
如果定义一个char ch = 'w';一个字符在内存中占一个字节,一个内存单元就是一个bit,存储一个字符就要使用8个内存单元,存储一个整型变量就要使用32个内存单元,不易于操作修改内存。
②假设一个内存单元的大小是一个byte,那么32位内存能存储的最大的数据量是2^32个byte, 转化为十进制是4294967296byte
4294967296byte = 4194304KB = 4096MB = 4GB

32位/64位计算机的位数主要指地址总线宽度,影响CPU可访问的内存空间。一个内存单元通常为1字节,这是基于内存利用率和操作效率的考虑。32位系统能寻址4GB内存,而64位系统则能支持更大的内存。内存单元大小的选择,确保了字符等基本数据类型能高效地存储和访问,避免资源浪费。
最低0.47元/天 解锁文章
918

被折叠的 条评论
为什么被折叠?



