[C语言]初识指针 --- 浅谈内存编号和内存单元大小的设定原理

       为了有效使用内存,给内存划分了一个个的内存单元,每个内存单元的大小位 1Byte!!  

       那么内存的单元的大小为什么是1个字节呢? ----- 这得从计算机内存说起

       计算机现在有32位和64位操作系统的区分,而这两者之间的区别就是32根地址线和64根地址线的区别.

       举个例子,32根地址线 ----- 就是32根物理线 ----- 物理线通电 ----- 产生1(正电平)或0(负电平)的电平信号,那么这样,当程序通电的时候,32根地址线会产生各自不同的1或0的电信号,这些信号会转换成数字信号,在内存中形成32位的二进制序列,每一个二进制序列就是每一个内存单元的编号,即地址!!! 而这样的32位二进制序列有2^32个.

       那么问题来了,现在我知道了32位操作系统的内存有2^32个内存单元,那么该给每个内存单元分配多少空间大小呢???  假如,我们给每个内存单元1个bit的大小,那么总内存换算成GB就是0.5GB,(换算过程如下)👇

2^32bit = 4,294,967,296bit = 536,870,912Byte = 524,288KB = 512MB = 0.5GB👇

换算规则: 

1GB      >>>      等同于1024MB
1MB      >>>      等同于1024KB
1KB       >>>      等同于1024Byte
1Byte     >>>     等同于8bit

       0.5GB太小!!!所以经过计算分析,给每个内存单元1个字节(即1Byte)的大小是最合适的!

       这就是内存编号和内存单元大小的设定原理 ---- just浅浅谈一下自己的心得!!大佬不要喷嘿嘿!!!!

  • 11
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值