欢迎大家来到IT世界,在知识的湖畔探索吧!
说起指针我们都知道,指针里存储的是一个变量的地址。计算机可以通过指针里存储的地址找到变量的存储位置,然后进行存取操作。
这个过程就像是指针所在的空间直接指向该变量内存空间,所以给它起名为指针变量。
我们都知道,当定义一个变量时 ,计算机就会为变量分配一个内存空间,变量名就是这个内存空间的名字。
当CPU进入执行指令阶段,指令的地址码可用于数据寻址,通过地址,可以找到一个内存空间,进而存入或者取出操作数。
那么在计算机底层,指令,指针,变量分别存放在哪里呢?
变量存放在主存
主存储器是计算机的实际存储空间,每个程序要被执行,都要预先被加载到主存中,所以在讨论计算机性能的时候,主存的空间大小往往成为一个重要参考因素。
内存按照人为的抽象划分,可以分为堆栈区、全局区、常量区、程序代码区。
当你在程序中用基本数据类型定义一个变量时,计算机就会在堆栈区中开辟一块内存空间。
所以变量的数据实际上就存储在堆栈区中……
指针存储在寄存器里
相比于主存储器,寄存器距离CPU更近,存取速度也更快,但是单位存储空间价格也比主存储器贵得多。
在实际的计算机中,寄存器就放在CPU芯片上,往往它数量极少,一般可分为通用寄存器和专用寄存器。
而指针里存储的数据较为特殊,是地址。所以一般会将指针存储在专用寄存器—指令指针寄存器中。
指令存放在内存的程序代码区
我们都知道,计算机在执行程序的时候,都会将程序加载进内存,而在这个过程,就会生成指令。
指令这时候就自然存放在主存中的程序代码区中。
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/36669.html