48
374
518
金牌会员
使用道具 举报
1万
7万
11万
管理员
42
1015
1146
至尊会员
ghslfgkkl88 发表于 2022-10-11 11:04 不知道编译器能不能设置对齐长度,这样方便很多。
80
1328
1568
wdliming 发表于 2022-10-11 11:14 干嘛非要非对齐操作呢?直接傻瓜式的读取字节信息然后合并就不会出现这种问题啊
21
481
544
h_007 发表于 2022-10-11 11:29 __packed结构体的使用场景,一般用于多机通讯,传输数据的非本地环境 1. 数据串行化,将结构体打包成数组 ...
wanglehui_12 发表于 2022-10-11 10:55 硬汉你好: 针对这个议题,我做了个Test Case:
eric2013 发表于 2022-10-12 17:58 这个测试很有意义,浮点的地址是分别是多少。还有就是硬件浮点是否参与了进来。 如果用户仅通过关闭 ...
218
1101
1765
More we do, more we can do.
11
106
144
初级会员
wanglehui_12 发表于 2022-10-13 17:20 (1)我的测试平台是 CortexM7核的 (2)FPU开启了,双精度的 (3)float数据地址是奇数
WALL_E 发表于 2022-10-14 09:18 从汇编上看,先把奇地址的浮点数读取到R0 R1这样的通用寄存器中,再读取到S0 S1的FPU寄存器中。非字节对齐 ...
9
16
43
新手上路
1
18
cumtjdxcz 发表于 2022-10-14 14:34 在双机通信中,从规约数据帧中取数据,然后直接强转成结构体指针访问,会出现非对齐访问错误
frank117 发表于 2022-10-14 23:36 嗯,通信数据前面的控制字节也许很不巧,刚好不是4的整数倍。 这种情况下如果要4字节操作,能想到的一种 ...
26
70
148
0
71
hjhj7591418 发表于 2022-12-24 15:14 struct { u32 u32Data;
h_007 发表于 2022-10-11 11:54 对于大型结构体的offsetof用法,不熟悉的朋友,可以参考Linux Kernel的list.h,足够详细,网上也有大量注释
emwin 发表于 2022-10-14 00:24 数据结构等显式的编译器会自动处理,但自己写的部分要避免非对其访问
81
491
734
12
254
高级会员
wanglehui_12 发表于 2022-10-11 11:40 总结的对,这就是我的使用场景,概括之,基于字节流的序列化和反序列化
本版积分规则 发表回复 回帖后跳转到最后一页
|小黑屋|Archiver|手机版|硬汉嵌入式论坛
GMT+8, 2025-4-29 15:34 , Processed in 0.455244 second(s), 27 queries .
Powered by Discuz! X3.4 Licensed
Copyright © 2001-2023, Tencent Cloud.