2

我的位掩码是字节,我想保持它们原样,但我认为它们是符号扩展的。我不在乎字节被认为是正数还是负数,只要它设置了相同的位即可。我只花了几个小时调试我的代码,然后我发现我的字节位掩码恰好是负数时才有问题,花了一段时间才发现。我不能是唯一一个对此有问题的人。有没有办法让一个字节表现得好像它是无符号的?

4

2 回答 2

5

如果在算术(或按位)运算符中使用字节时不希望对其进行符号扩展,则需要显式按位并使用 0xFF。它看起来有点难看,但如果你有一个是不可避免的byte(并且希望一个像样的 JIT 能够识别这个习语并从中生成有效的代码)。

于 2011-08-07T22:54:04.370 回答
1

你的代码有右移吗?你用“>>”代替“>>>”吗?有你的问题。

于 2011-08-07T22:54:18.553 回答