gpt4 book ai didi

java - 你如何在 java 中为整数实现余数方法 %?它有多快?

转载 作者:行者123 更新时间:2023-11-29 04:45:09 24 4
gpt4 key购买 nike

天真的实现:如果你想找到 p % q , 减去 q来自 p直到你得到 number < q .这需要 p/q减法和p/q比较。

Java 实际上是如何做到这一点的,它的速度有多快?

最佳答案

当 Java 编译器看到 % 运算符时,它会生成一个类型化的 rem bytecode instructions ,例如iremlremfremdrem等。实际指令取决于类型。对于两个 int,指令是 irem

这些指令由 JVM 解释,产生 CPU 操作以获得余数。

现在大多数 CPU(至少,那些能够运行 Java 的)都有内置指令,这些指令接受除数和被除数,并产生商和余数对。这就是为什么 % 运算符与除法运算符 / 一样快。

参见 this Q&A有关指令本身如何在 CPU 中实现的信息。

关于java - 你如何在 java 中为整数实现余数方法 %?它有多快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37497744/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com