首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何以不同的字节顺序递增数字?

如何以不同的字节顺序递增数字?
EN

Stack Overflow用户
提问于 2014-02-01 13:30:43
回答 2查看 90关注 0票数 1

我正在做一些微控制器编程,我必须在运行时加载DSP芯片的固件。数字信号处理器芯片要求寄存器地址以不同的字节顺序写入,因此地址1024变为0x04, 0x00。我有一个2元素uint8_t数组中的地址,最高有效字节是0位置,最低有效字节是1位置。然而,我需要运行一个循环,在这个循环中,我在每次迭代中将每个寄存器地址递增1。微控制器是不同的字节顺序,所以我不能简单地将数组转换为uint16_t*和increment。

我该如何递增地址呢?

EN

回答 2

Stack Overflow用户

发布于 2014-02-01 15:19:18

我会使用普通的int计数器,然后在将其发送到DSP之前转换为正确的字节顺序。可以使用byteorderendian系列中的宏。这将更容易调试和更可移植。

票数 3
EN

Stack Overflow用户

发布于 2014-02-02 00:03:05

你想从我们这里得到什么?

代码语言:javascript
复制
1) swap before sending
2) increment the lower byte, add the carry to the upper byte (asm makes this easy)
3) endian swap and increment (x=(upper<<8)|lower; x++)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21494501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档