gpt4 book ai didi

C++ 取模 2 性能

转载 作者:太空宇宙 更新时间:2023-11-03 10:29:47 25 4
gpt4 key购买 nike

我想知道在执行整数模乘以 2 操作时,典型的编译器的汇编缩减是什么,如下所示:

const char* integer_string = "300"; // avoid compiler optimization
int i = atoi(integer_string);
int b = i % 2; // the line in question

我想编译器可以将它变成一个按位操作来检查最后一位(第 1 位),但它会这样做吗?

最佳答案

这个问题只有在特定的编译器、平台、优化选项等上下文中才有意义。

我的编译器(x86_64 上的gcc 4.7.2)在打开-O3 优化时会执行此操作:

    andl    $1, %esi

关于C++ 取模 2 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20253675/

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