【发布时间】:2013-05-08 12:31:45
【问题描述】:
我在尝试将 4 位数字组合在一起以获得正确的十进制值时遇到了一点问题。首先让我从我的代码开始。
long firsttwo, secondtwo, combined;
firsttwo = 0x0C;
secondtwo = 0x6C;
0C的十进制值:12
6C的十进制值:108
但所有0C6C的十进制值:3180
现在如何将所有数字转换为一个变量才能正确地将其转换为十进制?因为如果我自己转换firsttwo,那么secondtwo 本身我不会得到相同的最终总数。谢谢!
【问题讨论】:
-
?
12*256 + 108 = 3180,对我来说是正确的。有什么问题? -
我认为他错误地认为
0C6C是12108或类似的东西。 -
您的预期结果是什么?
-
@DanielFischer,所以应该是
combined = firsttwo * 256 + secondtwo; -
是的,
* 256,或* 0x100,或<< 8,随你的喜好。
标签: c microcontroller