内存地址的概念与理解

本期介绍🍖 主要介绍:内存是如何被使用的,内存地址是如何产生的&#…

在这里插入图片描述

本期介绍🍖

主要介绍:内存是如何被使用的,内存地址是如何产生的,该怎么使用内存地址👀。


目录🍖


内存🍖

内存是电脑上特别重要的存储器,为系统和软件的运行提供足够的内存空间,当然计算机中所有程序的运行也都是在内存中进行的。但值得注意的是,内存只用于暂时性的存放程序和数据,一旦关闭电源或发生断电,其中的程序和数据将会丢失。

内存其实是一块很大的空间,这么大的空间我总不可能只是为了存放一个数据吧,那怎么才能有效的使用好这块空间呢?所以我们把内存划分成一个个小的内存单元,每个内存单元都可以相对独立的存放一些数据。如此一来内存就可以被有效的使用了。


内存地址🍖

内存地址的由来🍖

那如何去使用这些内存单元呢?其实不难,只要给每个内存单元编号,然后通过这些编号来访问它所对应的内存单元就可以了。大家觉得这种方法是不是看着有点像现实生活中,快递员通过你家的地址然后找到你有点相似。所以后来我们就把每个内存单元的编号称为:内存地址

内存地址是如何产生的🍖

我们都知道我们买电脑的时候会有32位和64位之分,而这里的32位和64位其实指的是物理上的32根地址线和64根地址线,既然是电线当然就可以通电,只要通电就会有正电负电之分;而电气领域里会把正电用“1”来表示,负电用“0”来表示,这样一来电信号就可以转化成数字信号。那现在若有一台32位的机器,想象一下通电后32根地址线就会产生32个“0”或“1”组成的序列(也就是32位的二进制序列),而这32位的二进制序列共会产生2^32种不一样的结果。如下图:
在这里插入图片描述
那不妨把这些二进制序列做成每一个内存单元的编号,那是不是就可以产生2^32个内存地址了呀!而内存中要存放一个地址就需要值相应的内存空间来存放,32位的地址需要4个字节,64位的地址需要8个字节。

一个内存单元的大小🍖

我们知道计算机最小的存储容量单位是比特位(bit),接下来是字节(byte)、kb、mb、gb、tb、pb。
在这里插入图片描述
那哪个存储单位适合作为内存单元的大小呢?我们先算一笔账,若内存单元容量为1个字节时整个内存的大小是多少(2^32车乘1个字节 = 4,294,967,296‬个字节 = 4,194,304(kb)= 4,096(mb)‬= 4(gb)),这算出来的内存大小与市面上的内存大小不谋而合呀。所以经过分析1个字节作为内存单元的容量最为合适


如何使用内存地址🍖

在C语言中有一个操作符“&”,可以直接求出内存地址,所以称其为:取地址符号。我们可以通过以下程序来看一看:

在这里插入图片描述
打印的结果为:00BBf9EC,这就是整形变量a的存放地址,只不过是用十六进制来代替二进制表示地址了。


在这里插入图片描述

这份博客👍如果对你有帮助,给博主一个免费的点赞以示鼓励欢迎各位🔎点赞👍评论收藏⭐️,谢谢!!!
如果有什么疑问或不同的见解,欢迎评论区留言欧👀。

本文来自网络,不代表软粉网立场,转载请注明出处:https://www.rfff.net/p/2259.html

作者: HUI

发表评论

您的电子邮箱地址不会被公开。

返回顶部