关于C语言中内存物理地址的含义,有谁能通俗说一下物理地址这个概念的含义,本人在此感激不尽.
来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/06/22 23:37:03
关于C语言中内存物理地址的含义,有谁能通俗说一下物理地址这个概念的含义,本人在此感激不尽.
![关于C语言中内存物理地址的含义,有谁能通俗说一下物理地址这个概念的含义,本人在此感激不尽.](/uploads/image/z/15424314-42-4.jpg?t=%E5%85%B3%E4%BA%8EC%E8%AF%AD%E8%A8%80%E4%B8%AD%E5%86%85%E5%AD%98%E7%89%A9%E7%90%86%E5%9C%B0%E5%9D%80%E7%9A%84%E5%90%AB%E4%B9%89%2C%E6%9C%89%E8%B0%81%E8%83%BD%E9%80%9A%E4%BF%97%E8%AF%B4%E4%B8%80%E4%B8%8B%E7%89%A9%E7%90%86%E5%9C%B0%E5%9D%80%E8%BF%99%E4%B8%AA%E6%A6%82%E5%BF%B5%E7%9A%84%E5%90%AB%E4%B9%89%2C%E6%9C%AC%E4%BA%BA%E5%9C%A8%E6%AD%A4%E6%84%9F%E6%BF%80%E4%B8%8D%E5%B0%BD.)
在C语言中,对变量的使用实质上是对计算机内存中存储内容的访问,通过对内存空间的引用来实现写入和读取.(注:C中有一个特殊的关键字register,
用来声明非存储在内存当中的变量,register用来要求将变量存储在计算机的寄存器当中,这样的变量主要的目的是加快CPU访问的速率)REGISTER关键字是
特定时期的产物,在内存访问速度很慢的时代用register定义的变量,确实存储在计算机CPU的寄存器当中,现在来说由于内存的访问速率也很快,很多编译器在
编译的时候,会将register变量也存储在内存当中.这里主要讨论简介引用和解析引用,因此对register就不再讨论.
间接引用是指在汇编语言指令中不直接指出内存的地址,而是通过一个寄存器或者一个内存空间来访问另外一个内存空间.
简单的打个比喻.你在网上卖东西.你的商品在你的家中.如果是同城的人家直接到你家来买.这就像访问物理地址.直接到目标精准有效率.
如果使用变量,就像你要把商品由快递送到买家手里,这个过程是有中间环节的“快递”所以效率可能不够高(就同城而言)非同城当然是快递比较好.
用来声明非存储在内存当中的变量,register用来要求将变量存储在计算机的寄存器当中,这样的变量主要的目的是加快CPU访问的速率)REGISTER关键字是
特定时期的产物,在内存访问速度很慢的时代用register定义的变量,确实存储在计算机CPU的寄存器当中,现在来说由于内存的访问速率也很快,很多编译器在
编译的时候,会将register变量也存储在内存当中.这里主要讨论简介引用和解析引用,因此对register就不再讨论.
间接引用是指在汇编语言指令中不直接指出内存的地址,而是通过一个寄存器或者一个内存空间来访问另外一个内存空间.
简单的打个比喻.你在网上卖东西.你的商品在你的家中.如果是同城的人家直接到你家来买.这就像访问物理地址.直接到目标精准有效率.
如果使用变量,就像你要把商品由快递送到买家手里,这个过程是有中间环节的“快递”所以效率可能不够高(就同城而言)非同城当然是快递比较好.