actionscript-3 - 如何优化除以100?

标签 actionscript-3 math optimization

我有一段代码运行到一个循环中,除以 100,这减少了我的 fps 计数。

在大多数情况下,是一个int/uint类型除以100,得到一个简单的数字

我只是想知道有什么方法可以优化它。

编辑: @scriptocalypse 建议的小基准 - 乘以 0.01:

import flash.utils.getTimer;

for(var k:Number = 20; k > 0; k--)
{
    var a:int = getTimer();

    var o:Number = 100;
    var p:Number;
    for(var i:Number = 100000000; i > 0; i--)
    {
        p = o * 0.01;  // took 423~510   <--------------
        //p = o / 100;  // took 713~768   <--------------
    }

    var b:int = getTimer();

    trace( b - a);
}

最佳答案

我怀疑并不是除法导致了大部分问题,因为即使是较慢的数学运算也应该比其他运算相对较快。

虽然这样:

x * 0.01;

理论上应该比

更快
x / 100;

我仍然怀疑这不会有太大区别。你的循环中还做了什么?

关于actionscript-3 - 如何优化除以100?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11442018/

相关文章:

c - 这个 gcc/clang 过去一个指针比较行为是否符合标准或非标准?

actionscript-3 - AS3-抽象类

java - 将文件从闪存传输到 java 时出现未知的 AMF 类型和其他错误

flash - Flash/ActionScript 3 中 is 运算符的性能?

iphone - 如何减少 iPhone 应用程序的代码大小?

c# - 我如何优化此 linq 函数以计算 "OrePreviste"的总和?

flash - Greensock 库,TweenLite、TweenNano、TweenMax、TimelineMax 哪个是最佳选择?

c++ - OpenCV 解决任意系统的返回常量值?

math - N维叉积的高效计算?

c++ - 步骤独立平滑