如何在 JVM 上计算两个整数的相等性而无需分支?

问题描述 投票:0回答:1

在 JVM 上,有没有一种方法可以在不使用分支指令的情况下计算两个整数是否相同?有没有办法巧妙地使用 ixor 指令来做到这一点?如果有办法的话,是否值得使用它来代替分支版本?

    

jvm comparison equality java-bytecode-asm branchless
1个回答
1
投票

我想这取决于你想要什么结果。如果堆栈上的 0 表示相等,非零表示不等于不是您想要的结果,那么您需要更好地解释您的要求。显然,如果您想在两种情况下执行不同的代码,那么您将需要分支。

© www.soinside.com 2019 - 2024. All rights reserved.