美文网首页
2019-12-07 LINUX内存布局原理

2019-12-07 LINUX内存布局原理

作者: GoodWen | 来源:发表于2019-12-07 22:57 被阅读0次

C语言最难的地方 内存和指针


QQ截图20200119102640.png

接下将学习:数据类型,数组,内存布局,物理内存,虚拟内存


QQ截图20200119112948.png
QQ截图20200119112948.png
内存的定义:

从硬件角度:内存是计算机必不可少的一个组成部分,是与CPU沟通的桥梁,计算机中所有的程序都是运行在内存中的。内存的载体就是计算机中的内存条。
逻辑角度:内存是一块具备随机访问能力,支持读、写操作,用来存放程序以及程序运行中所产生的数据的局域。

关于内存还涉及到 内存单位、内存编制、内存地址、内存组成、基础函数


QQ截图20200119112948.png
QQ截图20200119112948.png

1,内存单位

类型:
          位   bit  电子计算机中最小的数据单位,每一位的状态只能是 0或1
          字节  1 byte = 8 bit 是内存基本的计算单位
          KB     1 KB = 1024 byte  也就是1024个字节
          MB     1 MB = 1024 KB 类似的还有 GB TB
QQ截图20200119112948.png

2,内存编址

内存编址:计算机中的内存按字节编址,每个地址的存储单位可以存放一个字节的数据(也就是8 bit),
CPU通过内存地址获取指令和数据,并不关心这个地址所代表的空间具体在什么位置、怎么分布的,因
为硬件的设计保证一个地址对应一个固定的空间,所以说内存地址和地址指向的空间共同构成了一个内存单元。
内存编制的大小就是一个字节。也就是8位。
QQ截图20200119112948.png

3,内存地址

内存地址:内存地址通常用16进制的数据表示,指向内存中某一块区域

QQ截图20200119112948.png

内存地址的分配规则:连续的,一个挨着一个

QQ截图20200119112948.png

当对象需要申请内存时,先给这个对象分配一个编码,这个编码就是内存地址

QQ截图20200119112948.png
QQ截图20200119112948.png

4,内存对象

QQ截图20200119112948.png
QQ截图20200119112948.png
QQ截图20200119112948.png

数据类型


QQ截图20200119112948.png
QQ截图20200119112948.png

4,内存组成

android内存组成:


QQ截图20200119112948.png

C的内存组成:


QQ截图20200119112948.png



BSS段 存放类似对象的成员变量
数据段 存放一条数据
代码段 转换成汇编语言

相关文章

网友评论

      本文标题:2019-12-07 LINUX内存布局原理

      本文链接:https://www.haomeiwen.com/subject/wbdpgctx.html