0

我正在使用 SSE2 将 16+16 位元组排序为 32 位整数。比较和最小值/最大值只有带符号的整数指令。我对较高部分的顺序没有问题,因为它只是一个哈希。但是带有负哈希的条目将被向后排序(对吗?)可能但不是很好的解决方案可能是:

  • 将哈希的较高位归零,失去精度(不是很好)
  • 如果设置了哈希的较高位,则将位置转换为负数,并在排序后将其转换回来。

有没有更好的办法?

4

1 回答 1

1

只需从 32 位值中减去 0x80000000,使用带符号的操作,然后再加回 0x80000000。

于 2011-04-11T06:34:25.490 回答