您好!
我发现以下代码的结果是 CPU1和 CM 之间的差异。
unsigned short a = 0;unsigned short b = 1;unsigned short c1 = (a-b) % 0x2000;unsigned short c2 = (Uint16)(a-b) % 0x2000;- C1=65535 ( 不是预期值)
- C2=8191 (预期)
在 CPU1中:
- C1=8191 (预期)
- C2=8191 (预期)
以下有关 CM 中 C1的步骤是否正确?
1.(a-b)被添加到一个有符号 short->-1的临时变量中。
2.-1 % 0x2000 =-1
3.-1 标记为无符号 C1->65535
这是 C28x 和 CM 之间的预期差异吗? 是否有任何有关 这方面的文档说明?
谢谢