数据对齐存储

本文介绍了计算机内存中数据存储结构,强调了边界对齐的重要性,以减少访问次数和提高效率。讨论了行边界存储原则,结构的存储分配规则,以及数据大小端问题。通过实例解释了如何优化结构布局以减少空间损失,并提到了编译器的对齐设置如`#pragma pack`。

目录

 

计算机里面内存的数据存储结构以及为什么要边界对齐

行边界存储

结构的存储分配规则:

数据的大小端问题

参考文献



计算机里面内存的数据存储结构以及为什么要边界对齐

计算机里面的从主存的是有一个个基本的存储单元构成了,每个存储单元存储的二进制数叫做存储字长

目前一般的存储字长都是64位。同时计算机的主存都是按照字节编址,同时一般来说计算机的CPU只能访问偶数的地址

这种问题,造成了计算机的存储边间的问题。

如图所示,如果数据的存储都是紧紧密密的,节约存储空间,那么有可能有些地址无法再某些CPU无法访问,或者是访问需要多次然后进行拼接而成。或者是跨越两个存储单元就进行拼接而成一个数据。

本来CPU就比主存要快很多,如果由于数据的读取问题更让CPU浪费更多的时间,显然是不合理的。


行边界存储

那么为了减少访问次数和平衡空间问题。就要进行边界存储

如图所示,空白的部分的地址是空的,没有利用上。确保每个数据的地址都

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值