[STM32F1] STM32是怎么存储这些数据的呢?

[复制链接]
1630|30
 楼主| liuzaiy 发表于 2021-12-9 20:52 | 显示全部楼层 |阅读模式
我们都知道STM32每次都能处理32位的数据。那么如果我要处理的数据是8位的或者16位的,那STM32是怎么存储这些数据的呢?
dingy 发表于 2021-12-9 20:54 | 显示全部楼层
什么意思?不是很明白你说的什么,能再解释一下这个现象吗
 楼主| liuzaiy 发表于 2021-12-9 20:56 | 显示全部楼层
例如8位数据,我是存在四个32位内存中,每个内存用低四位,还是分别存在一个内存的四个字节呢?
 楼主| liuzaiy 发表于 2021-12-9 20:58 | 显示全部楼层
另外STM32的地址可以是8位或者16位吗?
 楼主| liuzaiy 发表于 2021-12-9 21:01 | 显示全部楼层
补充一下,上面打错了,应该是有4个8位数据
llljh 发表于 2021-12-9 21:07 | 显示全部楼层
另外STM32的地址可以是16位的啊!!
renyaq 发表于 2021-12-9 21:09 | 显示全部楼层
不会也占用32bit吧?
huangchui 发表于 2021-12-9 21:11 | 显示全部楼层
可以按字节(8位)/半字(16位)/字(32位)访问存储器。
zhanghqi 发表于 2021-12-9 21:13 | 显示全部楼层
某些核心需要对齐,某些可以不对齐,但效率可能下降。
 楼主| liuzaiy 发表于 2021-12-9 21:17 | 显示全部楼层
我想知道的是我存四个字节的,一般没做设定,32是怎么存的呢
jlyuan 发表于 2021-12-9 21:19 | 显示全部楼层
想想结构体是怎么存储的,就明白了....内存中是连续的,不会浪费
huangchui 发表于 2021-12-9 21:21 | 显示全部楼层

你的逻辑搞反了!
不是说我想怎么处理这些数据,决定我怎么存储这些数据。
juventus9554 发表于 2021-12-9 21:22 | 显示全部楼层
对,数据始终存在那里,然后我以怎样一种方式来处理它。
jlyuan 发表于 2021-12-9 21:25 | 显示全部楼层
STM32每次都能处理32位的数据,就是一次性处理4个字节。当然,它也可以一次性处理2个字节,或者1个字节。
 楼主| liuzaiy 发表于 2021-12-9 21:27 | 显示全部楼层
那32的最小存储单元是8位的对吗?有没有最小存储单元大于8位的
huangchui 发表于 2021-12-9 21:29 | 显示全部楼层
楼主可以用联合体进行测试一下看看到底怎么存的。弄个32位的,然后弄4个八位的,打印出来对比一下,看看是怎么取的范围。
 楼主| liuzaiy 发表于 2021-12-9 21:31 | 显示全部楼层
好的,谢谢
wangpe 发表于 2021-12-9 21:34 | 显示全部楼层
实践是检验真理的唯一标准,不要拿着理论去强行解释理论,你拿stm32用着用着就自然明白怎么回事了
juventus9554 发表于 2021-12-9 21:36 | 显示全部楼层
嗯,大鱼吃小鱼,小鱼吃虾米。不要以这句话为基准去思考大鱼到底吃不吃虾米,怎么吃虾米,这东西,别人再怎么清楚的告诉你,最多也只是个详解,
gongche 发表于 2021-12-9 21:37 | 显示全部楼层
你不去实践一下,根本没办法去理解其中的东西。学这东西又不是为了考试。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

735

主题

7546

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部