VBScript programmers reference manual
如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】
希望我的回答对您有所帮助,望采纳!
~ O(∩_∩)O~
这是历史遗留问题,DOS系统运行于intel的8086/8088这个16位cpu,但这cpu有20条地址总线,16位的寄存器就无法直接寻址20位的地址,于是搞出来一个段偏移的概念,把1M的内存空间按64K分段, 以段地址+偏移地址的方式实现20位地址。cpu有许多预先设计好的段寄存器,程序运行的时候,存放在数据段寄存器(DS)中的段地址被当作一个缺省的段地址,这64K空间就被称为近程空间(near)。既然有近程空间,那么就有远程空间:位于DS段以外的地址空间就叫远程空间(far)。如果不显式声明,默认使用近程空间unsigned char near variable//在近程空间(DS段)创建一个变量 variable
unsigned char varible //没有显式声明,同样是near变量
对于unix/linux/windows这些32位 *** 作系统,对内存的 *** 作是线性的,也就没有near和far的区别了
关于16位段内存的详细内容,你可以参考8086/8088汇编语言以及16位的C语言系统手册(比如Turbo C的程序员手册)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)