windows使用一个系统:虚拟寻址系统,该系统把程序可用的内存地址映射到硬件内存中的实际地址上,这些任务完全由Windows在后台管理,
其实际结果是32位处理器上的每个进程都可以使用4GB的内存(也叫虚拟地址空间,虚拟内存)--无论计算机上有多少硬盘空间。(在64位处理器上,这个数字会更大)。4GB内存实际上包含了程序的任何一部分--包括可执行代码,代码加载的所有DLL,以及程序运行时使用的所有变量的内容。
虚拟内存中的每个存储单元都是从0开始往上排序的。要把一个值存储在内存的某个空间中,就需要提供表示该存储单元的数字(内存地址)。在任何高级语言中,例如C#,VB,C++和JAVA,编译器负责把人们可以理解的名称转换为处理器可以理解的内存地址(表示该存储单元的数字)。