C语言内存编址和寻址、内存对齐
生活随笔
收集整理的这篇文章主要介绍了
C语言内存编址和寻址、内存对齐
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
内存编址和寻址、内存对齐
- 内存的编址方法
- 关键:内存编址是以字节为单位的
- 内存和数据类型的关系
- 内存对齐
内存的编址方法
在程序运行时,计算机中CPU实际只认识内存地址,而不关心这个地址所代表的空间在哪里,怎么分布这些实体问题。因为硬件设计保证了按照这个地址就一定能找到这个内存空间,所以说关于内存单元有两个概念:地址和空间。(地址和空间一一对应且永久绑定)
关键:内存编址是以字节为单位的
任何一个有效的内存地址都代表了一个字节的内存空间,这个大小是固定的,就是一个字节,即8bit。
内存和数据类型的关系
在C语言中的基本数据类型有:char short int long float double
int整形即整数类型,这个整就体现在他和CPU本身的数据位宽是一样的,比如32位的CPU,整形就是32位,int就是32位。
数据类型是用来定义变量的,而这些变量需要存储,运算在内存中。所以数据类型必须和内存相匹配才能获得最好的性能,否则可能不工作或者效率低下。在32位系统中定义变量最好用int,因为这样效率高。原因就在于32位的系统本身配合内存等也是32位,这样的硬件配置天生适合定义32位的int类型变量,效率最高。也能定义8位的char类型变量或者16位的short类型变量,但
总结
以上是生活随笔为你收集整理的C语言内存编址和寻址、内存对齐的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 272卡路里等于多少脂肪?
- 下一篇: C语言位、字节、半字、字的概念和内存位宽