当前位置:   article > 正文

关于内存地址与寻址_64位内存地址

64位内存地址

首先理解位与字节的区别:

①位(bit):计算机存储信息的最小单位。

②字节(Byte):计算机存储信息的基本单元,1Byte = 8 bit。

bit在大多数情况都以“了解硬件的工作原理”的方式出现的,Byte才是我们真正用于存储数据的单元,换句话说,我们存储的数据是精确到Byte而不会精确到bit。

所以内存可以看做是一小块一小块字节组成的,我们进行的寻址得到的最小单元是字节! 这和操作是系统是没关系的。也就是说,字节是计算机最小可寻址的内存单元。

但是和操作系统有关的是,用什么方式来表示内存中的地址!!

理论上:

  • 16位系统下,内存地址应当用一个16位二进制表示(转化为十六进制0x0000-0xFFFF),占2个字节。

  • 32位系统下,内存地址应当用一个32位二进制表示(转化为十六进制0x0000,0000-0xFFFF,FFFF),占4个字节。

  • 64位系统下,内存地址应当用一个64位二进制表示(转化为十六进制0x0000,0000,0000,0000-0xFFFF,FFFF,FFFF,FFFF),占8个字节

(不知道是不是这个原因,32位系统的指针的大小是4个字节,也就是32位,64位系统的指针大小是8个字节,也就是64位。指针也正是表示内存中地址的方式,所以从表面上看,两者是相互印证的关系。)

下面以连续存储两个int类型的变量为例。(int类型在32和64位系统中都占4个字节)
在这里插入图片描述

可以看出,区别仅仅是对内存单元的表示方式不一样。

所以32位系统和64位系统对内存的表示方式不一样,就导致了两者所能寻址的最大范围也就不一样。32位系统是2^32=4GB,而64位系统理论上能到2 ^64,可以看作是无穷大

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/106419
推荐阅读
相关标签
  

闽ICP备14008679号