关于存储空间

来源:4-2 内存管理

qq_浅眸_0

2016-12-21 23:52

老师,32位计算机是有2的32次方种状态,那么一种状态上面不是应该有32位字节码吗,为什么一种状态就能算作一个字节,不应该是32/8等于4个字节吗,求老师解释,

写回答 关注

2回答

  • 小雾3378873
    2016-12-29 19:48:35

    "32位计算机是有2的32次方种状态" 引用提问者的话,

    答:32位计算机能给系统分配2的32次方个内存地址,注意这里说的是“内存地址”,也就是每个内存的门牌号码。换句话说,32位操作系统给内存编号只能编到32个二进制位,能组合成2的32次方个状态或地址。

    因为内存是按字节寻址的,即每个地址对应一个字节,这是规定好的,或者说是硬件限制的

    你的问题是把内存地址与内存空间搞混了,内存地址是门牌号码,内存空间相当于一个小房子,一个小房子对应一个门牌号码(地址),一个小房子占用一个字节的内存空间,那32位操作系统能分配多少个房子呢——2的32次方个,这样整个的内存就是2的32次方个字节,即4G内存。

  • xl82633037
    2016-12-23 09:47:14

    是32位的地址总线,可以有2的32次方种寻址组合,内存的每个地址中只有一个字节。不是4个字节

    qq_浅眸_...

    非常感谢你的回复,我的疑惑就是为什么一个地址算一个字节,这是规定好的吗?一个地址不是有32个位组合而成的嘛?

    2016-12-25 00:58:05

    共 1 条回复 >

Linux C语言指针与内存

指针-C语言的核心,代领大家对c语言有更加深刻的理解

116475 学习 · 250 问题

查看课程

相似问题