1、一个之前觉得好玩的东西,现在回过来看更好玩,记住:这里面有一个寻址位数的东西决定了指针的大小。
32位系统,CPU有32根地址总线,逻辑寻址位数是32,指针大小就是4B,4个字节。
(补充一下:之前也研究过这个东西32位系统只能最大带的动4G的运行内存,超过了就没办法寻址了,这个是最明显的)
(win下与操作系统是这样很正常很简单的来寻址的,但是intel X86用的是内存映射,你的32位操作系统给的4G虚拟内存还要去映射BIOS ROM RAM实际与4G内存条映射的是不到4G的,有点像手机操作系统越大我物理内存用到的就越少。)
64位操作系统,逻辑地址编码采用地址位数为40,2^32 * 2^8 = 4*64G。。。。这里需要考虑内存控制器了,内存控制器实际连接内存地址线决定了逻辑地址线的数量。
挺复杂的,总结就是CPU 操作系统 总线位数这三个东西起作用。
64位系统下指针大小就是8
32位系统下指针大小就是8