从底层角度再理解指针---C语言学习番外

目录

1.关于存储单元的简单了解

2.关于地址线与数据线的简述

3.如何编址,指针怎么编号的。

4.指针大小和指针指向的内容大小


我的疑惑:

对于指针总还觉得没理解通透,尤其是编址方式和原理,总觉得少点通透。

学了计组之后的理解:

对于指针,指针就是一个地址标志,也就是一种编号代码,即表示计算机内部数据存放的标号。

例如:计算机是一个猪圈,指针就是猪圈的棚号牌,我要找3棚的猪,即要找指针为3的棚,里面存放的就是3号猪棚的猪。

学习之初,总把指针与指针的内容混为一谈,尤其是编排内存单元的序号,总是傻傻的分不清。

简化理解如下:—————详细存储系统转————

1.关于存储单元的简单了解

2.关于地址线与数据线的简述

数据线:表示的是存储内容的信号

地址线:表示的是存储单元编址的信号

相同点:都是1/0高低电平两种信号源,N根线就表示2^N的信号个数。

3.如何编址,指针怎么编号的。

 

 此时再结合第一张图理解,存储单元的结构就更易理解了。

疑惑又来了,为什么最小的编址单位就是一个字节呢?

上图是存储器的编址方式,但计算机内存选用的就是按字节编址,所以说我们上述的32根地址线组合出的2^32个信号源 表示的即是2^32个字节,每个编制单位里存放着8位数据。

 疑问又来了,为什么一个编制单位存放的是8位数据?这就取决于它的数据线数量。

4.指针大小和指针指向的内容大小

  • 此时就很通透的理解到,指针的大小也就是指针自身所占的空间,即取决于地址线根数,32位机器即32根地址线,自然要用32个bit空间存放,即占用4个字节。并且每个指针的大小都是相同的。
  • 而指针内容的大小完全就是取决于数据线的数量。

总结:从原理角度,理解指针可以更加通透的理解到其原理,并更加深刻的体会到指针的真正作用!

自用笔记,大家多多指正!!! 

  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值